61 lines
2.0 KiB
ReStructuredText
61 lines
2.0 KiB
ReStructuredText
.. zephyr:code-sample:: esp32-xt-wdt
|
|
:name: XTAL32K Watchdog Timer (WDT)
|
|
|
|
Trigger watchdog interrupt on external 32K crystal failure.
|
|
|
|
Overview
|
|
********
|
|
|
|
This sample shows how to work with XTAL32K Watchdog Timer (XT WDT) peripheral.
|
|
To properly run this sample, you need to have a board with an external 32.728 Hz
|
|
crystal oscillator connected to the XTAL_32K_P and XTAL_32K_N pins.
|
|
|
|
The app will ask for the crystal removal to simulate a crystal failure and trigger
|
|
the XT WDT interrupt. Internally the hardware switch the RTC SLOW clock source from
|
|
ESP32_RTC_SLOW_CLK_SRC_XTAL32K to ESP32_RTC_SLOW_CLK_SRC_RC_SLOW (136 KHz for C3 and S3 /
|
|
9 KHz for S2).
|
|
|
|
Supported SoCs
|
|
**************
|
|
|
|
The following SoCs supports the XT WDT peripheral:
|
|
|
|
* ESP32-C3
|
|
* ESP32-S2
|
|
* ESP32-S3
|
|
|
|
Building and Running
|
|
********************
|
|
|
|
Make sure you have your board connected over USB port and the external crystal is connected
|
|
to pins XTAL_32K_P and XTAL_32K_N.
|
|
|
|
.. code-block:: console
|
|
|
|
west build -p -b esp32s3_devkitm/esp32s3/procpu samples/boards/espressif/xt_wdt
|
|
west flash
|
|
|
|
If using another supported Espressif board, replace the argument in the above
|
|
command with a proper board name (e.g., ``esp32s2_saola``).
|
|
|
|
Sample Output
|
|
=============
|
|
|
|
To check output of this sample, run ``west espressif monitor`` or any other serial
|
|
console program (e.g., minicom, putty, screen, etc).
|
|
This example uses ``west espressif monitor``, which automatically detects the serial
|
|
port at ``/dev/ttyUSB0``:
|
|
|
|
.. code-block:: console
|
|
|
|
$ west espressif monitor
|
|
|
|
.. code-block:: console
|
|
|
|
*** Booting Zephyr OS build v3.6.0-3896-gb4a7f061524f ***
|
|
[00:00:01.287,000] <inf> xt_wdt_sample: XT WDT Sample on esp32s3_devkitm/esp32s3/procpu
|
|
[00:00:01.287,000] <inf> xt_wdt_sample: Current RTC SLOW clock rate: 32768 Hz
|
|
[00:00:01.287,000] <inf> xt_wdt_sample: Remove the external 32K crystal to trigger the watchdog
|
|
XT WDT callback
|
|
[00:00:03.554,000] <inf> xt_wdt_sample: Current RTC SLOW clock rate: 136000 Hz
|