diff --git a/examples/cxx/exceptions/README.md b/examples/cxx/exceptions/README.md index 7b49194131..64adddf49f 100644 --- a/examples/cxx/exceptions/README.md +++ b/examples/cxx/exceptions/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Example: C++ exception handling (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/cxx/experimental/esp_event_async_cxx/README.md b/examples/cxx/experimental/esp_event_async_cxx/README.md index bc52645dda..4cec9fd297 100644 --- a/examples/cxx/experimental/esp_event_async_cxx/README.md +++ b/examples/cxx/experimental/esp_event_async_cxx/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # ESP-Event asynchronous example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/cxx/experimental/esp_event_cxx/README.md b/examples/cxx/experimental/esp_event_cxx/README.md index 6ad7a221dc..dac6cd17aa 100644 --- a/examples/cxx/experimental/esp_event_cxx/README.md +++ b/examples/cxx/experimental/esp_event_cxx/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # ESP Event synchronous example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/cxx/experimental/esp_mqtt_cxx/ssl/README.md b/examples/cxx/experimental/esp_mqtt_cxx/ssl/README.md new file mode 100644 index 0000000000..57433de18a --- /dev/null +++ b/examples/cxx/experimental/esp_mqtt_cxx/ssl/README.md @@ -0,0 +1,2 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | diff --git a/examples/cxx/experimental/esp_mqtt_cxx/tcp/README.md b/examples/cxx/experimental/esp_mqtt_cxx/tcp/README.md new file mode 100644 index 0000000000..57433de18a --- /dev/null +++ b/examples/cxx/experimental/esp_mqtt_cxx/tcp/README.md @@ -0,0 +1,2 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | diff --git a/examples/cxx/experimental/esp_timer_cxx/README.md b/examples/cxx/experimental/esp_timer_cxx/README.md index e041b2a394..a2748dde9c 100644 --- a/examples/cxx/experimental/esp_timer_cxx/README.md +++ b/examples/cxx/experimental/esp_timer_cxx/README.md @@ -1,10 +1,13 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Example: ESPTimer C++ class (See the README.md file in the upper level 'examples' directory for more information about examples.) This example demonstrates usage of the ESPTimer c++ class in ESP-IDF. -In this example, the `sdkconfig.defaults` file sets the `CONFIG_COMPILER_CXX_EXCEPTIONS` option. +In this example, the `sdkconfig.defaults` file sets the `CONFIG_COMPILER_CXX_EXCEPTIONS` option. This enables both compile time support (`-fexceptions` compiler flag) and run-time support for C++ exception handling. This is necessary for the C++ APIs. diff --git a/examples/cxx/experimental/simple_i2c_rw_example/README.md b/examples/cxx/experimental/simple_i2c_rw_example/README.md index 9e715c7071..f034c07427 100644 --- a/examples/cxx/experimental/simple_i2c_rw_example/README.md +++ b/examples/cxx/experimental/simple_i2c_rw_example/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Example: C++ I2C sensor read for MPU9250 (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/cxx/experimental/simple_spi_rw_example/README.md b/examples/cxx/experimental/simple_spi_rw_example/README.md index 4dbc2bdc47..68a3677087 100644 --- a/examples/cxx/experimental/simple_spi_rw_example/README.md +++ b/examples/cxx/experimental/simple_spi_rw_example/README.md @@ -1,10 +1,13 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Example: C++ SPI sensor read for MCU9250 inertial/giroscope sensor (See the README.md file in the upper level 'examples' directory for more information about examples.) This example demonstrates usage of C++ SPI classes in ESP-IDF to read the `WHO_AM_I` register of the sensor. -In this example, the `sdkconfig.defaults` file sets the `CONFIG_COMPILER_CXX_EXCEPTIONS` option. +In this example, the `sdkconfig.defaults` file sets the `CONFIG_COMPILER_CXX_EXCEPTIONS` option. This enables both compile time support (`-fexceptions` compiler flag) and run-time support for C++ exception handling. This is necessary for the C++ SPI API. diff --git a/examples/cxx/pthread/README.md b/examples/cxx/pthread/README.md index 244036adb2..2a07891a85 100644 --- a/examples/cxx/pthread/README.md +++ b/examples/cxx/pthread/README.md @@ -1,8 +1,11 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # C++ pthread Example (See the README.md file in the upper level 'examples' directory for more information about examples.) -Support for the [C++ threads](http://www.cplusplus.com/reference/thread/thread/) in ESP-IDF is implemented on top of the [ESP-pthread](https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/system/esp_pthread.html#overview) component. Thus, C++ threads created using the standard thread class constructor will automatically inherit the current ESP-pthread configuration. This example demonstrates how to leverage the thread configuration functions provided by ESP-pthread (e.g., `esp_pthread_get_default_config()` and `esp_pthread_set_cfg()`) to modify the stack sizes, priorities, names, and core affinities of the C++ threads. +Support for the [C++ threads](http://www.cplusplus.com/reference/thread/thread/) in ESP-IDF is implemented on top of the [ESP-pthread](https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/system/esp_pthread.html#overview) component. Thus, C++ threads created using the standard thread class constructor will automatically inherit the current ESP-pthread configuration. This example demonstrates how to leverage the thread configuration functions provided by ESP-pthread (e.g., `esp_pthread_get_default_config()` and `esp_pthread_set_cfg()`) to modify the stack sizes, priorities, names, and core affinities of the C++ threads. **Note: Due to the use of the C++ threads, this example is written in C++ instead of C.** diff --git a/examples/cxx/rtti/README.md b/examples/cxx/rtti/README.md index 8ab0c985aa..f2bcd6d05d 100644 --- a/examples/cxx/rtti/README.md +++ b/examples/cxx/rtti/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Example: C++ run-time type info (RTTI) (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/ethernet/basic/README.md b/examples/ethernet/basic/README.md index e37d696b63..d5d2b6e8f7 100644 --- a/examples/ethernet/basic/README.md +++ b/examples/ethernet/basic/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Ethernet Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -22,7 +25,7 @@ Besides that, `esp_eth` component can drive third-party Ethernet module which in The ESP-IDF supports the usage of multiple Ethernet interfaces at a time when external modules are utilized which is also demonstrated by this example. There are several options you can combine: * Internal EMAC and one SPI Ethernet module. * Two SPI Ethernet modules of the same type connected to single SPI interface and accessed by switching appropriate CS. - * Internal EMAC and two SPI Ethernet modules of the same type. + * Internal EMAC and two SPI Ethernet modules of the same type. #### Pin Assignment diff --git a/examples/ethernet/enc28j60/README.md b/examples/ethernet/enc28j60/README.md index 414662cac4..e71e7fe577 100644 --- a/examples/ethernet/enc28j60/README.md +++ b/examples/ethernet/enc28j60/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ENC28J60 Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/ethernet/eth2ap/README.md b/examples/ethernet/eth2ap/README.md index 13bd9aa0b9..7f24d71def 100644 --- a/examples/ethernet/eth2ap/README.md +++ b/examples/ethernet/eth2ap/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # eth2ap Example (See the README.md file in the upper level 'examples' directory for more information about examples. To try a more complex application about Ethernet to WiFi data forwarding, please go to [iot-solution](https://github.com/espressif/esp-iot-solution/tree/release/v1.0/examples/eth2wifi).) diff --git a/examples/ethernet/iperf/README.md b/examples/ethernet/iperf/README.md index af90abfe4b..4b8f5bf1d8 100644 --- a/examples/ethernet/iperf/README.md +++ b/examples/ethernet/iperf/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Ethernet iperf Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/mesh/internal_communication/README.md b/examples/mesh/internal_communication/README.md index 3c97dc427c..8ff57f8d3b 100644 --- a/examples/mesh/internal_communication/README.md +++ b/examples/mesh/internal_communication/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Mesh Internal Communication Example This example demonstrates how to use the mesh APIs to set up a mesh network, send and receive messages over the mesh network and etc. diff --git a/examples/mesh/ip_internal_network/README.md b/examples/mesh/ip_internal_network/README.md index 0040840535..7da93620d9 100644 --- a/examples/mesh/ip_internal_network/README.md +++ b/examples/mesh/ip_internal_network/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Mesh IP Internal Networking example This example demonstrates how to use mesh to create a IP capable sub-network. @@ -6,11 +9,11 @@ and uses internal communication at the same time ## Functionality -This example uses experimental NAT feature to translate addresses/ports from an internal subnet, that is created +This example uses experimental NAT feature to translate addresses/ports from an internal subnet, that is created by the root node running a DHCP server. At the same time, the nodes communicate using low level mesh send/receive API to exchange data, such as routing table from root to all nodes and an event notification from one node to all other nodes in the mesh. As a demonstration, the same event is also published at the mqtt broker -on a subscribed topic, so both internal mesh_recv() notification as well as mqtt data event are to be received. +on a subscribed topic, so both internal mesh_recv() notification as well as mqtt data event are to be received. ### Hardware Required diff --git a/examples/mesh/manual_networking/README.md b/examples/mesh/manual_networking/README.md index 1e5c094d06..714954db01 100644 --- a/examples/mesh/manual_networking/README.md +++ b/examples/mesh/manual_networking/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Mesh Manual Networking Example ESP-MESH provides the function of self-organized networking, but if users disable this function on one node, users must designate a parent for this node. diff --git a/examples/network/network_tests/README.md b/examples/network/network_tests/README.md index 9dd2c6caa9..8894885601 100644 --- a/examples/network/network_tests/README.md +++ b/examples/network/network_tests/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Intel net test suite for LwIP network stack This project provides a test interface to esp32 network stack in order to execute standard set of @@ -46,7 +49,7 @@ Purpose of this test is to execute standard network suite on a ESP32 network sta DUT, Device (Network stack in this case) under test, runs normally on target, but a specific interface with configured esp-netif for passing arbitrary data to and from the network stack. Embedded code `net_suite.c` implements an application which serves stdin/stdout and propagates the data to/from this test interface. -Standard Intel net suite executed by TTCN3 engine uses udp ports for input/ouput of network packets. Python script `net_suite.py` translates this communication +Standard Intel net suite executed by TTCN3 engine uses udp ports for input/ouput of network packets. Python script `net_suite.py` translates this communication from/to those udp ports to stdin/stdout, where after propagating over USB/UART to the ESP32 board are processed in the network stack (on the target). Actual test execution, progress, evaluation and test reporting is done using standard net-test-suite scripts running on PC. diff --git a/examples/network/simple_sniffer/README.md b/examples/network/simple_sniffer/README.md index 72c3b1fd19..6496a8f423 100644 --- a/examples/network/simple_sniffer/README.md +++ b/examples/network/simple_sniffer/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Simple Sniffer Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/openthread/ot_br/README.md b/examples/openthread/ot_br/README.md index e59d9485dc..83d24ee7eb 100644 --- a/examples/openthread/ot_br/README.md +++ b/examples/openthread/ot_br/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # OpenThread Border Router Example ## Overview @@ -18,8 +21,8 @@ Connect the two SoCs via UART, below is an example setup with ESP32 DevKitC and ESP32 pin | ESP32-H2 pin ----------|------------- - GND | G - GPIO4 | TX + GND | G + GPIO4 | TX GPIO5 | RX ### Configure the project @@ -231,16 +234,16 @@ sudo sysctl -w net/ipv6/conf/wlan0/accept_ra_rt_info_max_plen=128 For mobile devices, the route table rules will be automatically configured after iOS 14 and Android 8.1. -### Testing IPv6 connectivity +### Testing IPv6 connectivity Now in the joining device, check the IP addresses: ``` -> ipaddr +> ipaddr fde6:75ff:def4:3bc3:9e9e:3ef:4245:28b5 -fdde:ad00:beef:0:0:ff:fe00:c402 +fdde:ad00:beef:0:0:ff:fe00:c402 fdde:ad00:beef:0:ad4a:9a9a:3cd6:e423 -fe80:0:0:0:f011:2951:569e:9c4a +fe80:0:0:0:f011:2951:569e:9c4a ``` You'll notice an IPv6 global prefix with only on address assigned under it. This is the routable address of this Thread node. @@ -275,7 +278,7 @@ Done This service will also become visible on the Wi-Fi network: ```bash -$ avahi-browse -r _test._udp -t +$ avahi-browse -r _test._udp -t + enp1s0 IPv6 my-service _test._udp local = enp1s0 IPv6 my-service _test._udp local diff --git a/examples/peripherals/adc/dma_read/README.md b/examples/peripherals/adc/dma_read/README.md index ab56e690f1..f446b23223 100644 --- a/examples/peripherals/adc/dma_read/README.md +++ b/examples/peripherals/adc/dma_read/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ADC DMA Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/adc/single_read/single_read/README.md b/examples/peripherals/adc/single_read/single_read/README.md index ba9650c15d..015aecbfe3 100644 --- a/examples/peripherals/adc/single_read/single_read/README.md +++ b/examples/peripherals/adc/single_read/single_read/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ADC Single Read Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/i2c/i2c_self_test/README.md b/examples/peripherals/i2c/i2c_self_test/README.md index 7734c34b9f..4be69fb566 100644 --- a/examples/peripherals/i2c/i2c_self_test/README.md +++ b/examples/peripherals/i2c/i2c_self_test/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # I2C Self-Test Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/i2c/i2c_simple/README.md b/examples/peripherals/i2c/i2c_simple/README.md index 9309a8356b..5dca645efb 100644 --- a/examples/peripherals/i2c/i2c_simple/README.md +++ b/examples/peripherals/i2c/i2c_simple/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # I2C Simple Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/i2c/i2c_tools/README.md b/examples/peripherals/i2c/i2c_tools/README.md index 9d70bb20bf..945edf700c 100644 --- a/examples/peripherals/i2c/i2c_tools/README.md +++ b/examples/peripherals/i2c/i2c_tools/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # I2C Tools Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/i2s/i2s_es8311/README.md b/examples/peripherals/i2s/i2s_es8311/README.md index 550d07e204..ba85c38279 100644 --- a/examples/peripherals/i2s/i2s_es8311/README.md +++ b/examples/peripherals/i2s/i2s_es8311/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # I2S ES8311 Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/lcd/gc9a01/README.md b/examples/peripherals/lcd/gc9a01/README.md index c785062c59..2dc48c3931 100644 --- a/examples/peripherals/lcd/gc9a01/README.md +++ b/examples/peripherals/lcd/gc9a01/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # GC9A01 porting example [esp_lcd](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/lcd.html) provides several panel drivers out-of box, e.g. ST7789, SSD1306, NT35510. However, there're a lot of other panels on the market, it's beyond `esp_lcd` component's responsibility to include them all. diff --git a/examples/peripherals/lcd/i2c_oled/README.md b/examples/peripherals/lcd/i2c_oled/README.md index 04f08fcb8e..ac62ac6fb0 100644 --- a/examples/peripherals/lcd/i2c_oled/README.md +++ b/examples/peripherals/lcd/i2c_oled/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # I2C OLED example [esp_lcd](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/peripherals/lcd.html) supports I2C interfaced OLED LCD, whose color depth is usually 1bpp. diff --git a/examples/peripherals/lcd/tjpgd/README.md b/examples/peripherals/lcd/tjpgd/README.md index 3d9f80f67a..16345eff07 100644 --- a/examples/peripherals/lcd/tjpgd/README.md +++ b/examples/peripherals/lcd/tjpgd/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + ## LCD tjpgd example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/sigmadelta/README.md b/examples/peripherals/sigmadelta/README.md index 1a542fd55e..9734b3960b 100644 --- a/examples/peripherals/sigmadelta/README.md +++ b/examples/peripherals/sigmadelta/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Sigma Delta Modulation Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -12,7 +15,7 @@ This example uses the sigma-delta driver to generate modulated output on a GPIO. Besides the [ESP32 development board](https://www.espressif.com/en/products/hardware/development-boards) you need a LED and a resistor to limit the LED current. Connect them as below: ``` - 330R LED + 330R LED GPIO4 +----/\/\/\----+------|>|-----+ GND ``` diff --git a/examples/peripherals/spi_master/hd_eeprom/README.md b/examples/peripherals/spi_master/hd_eeprom/README.md index 870f58dc89..8b5bbd367a 100644 --- a/examples/peripherals/spi_master/hd_eeprom/README.md +++ b/examples/peripherals/spi_master/hd_eeprom/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + ## SPI master half duplex EEPROM example This code demonstrates how to use the SPI master half duplex mode to read/write a AT93C46D diff --git a/examples/peripherals/spi_slave/README.md b/examples/peripherals/spi_slave/README.md index c7e60ca686..d7547fe84f 100644 --- a/examples/peripherals/spi_slave/README.md +++ b/examples/peripherals/spi_slave/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + ## SPI slave example These two projects illustrate the SPI Slave driver. They're supposed to be flashed into two separate Espressif chips connected to eachother using the SPI pins defined in app_main.c. Once connected and flashed, they will use the spi master and spi slave driver to communicate with eachother. The example also includes a handshaking line to allow the master to only poll the slave when it is actually ready to parse a transaction. diff --git a/examples/peripherals/spi_slave_hd/append_mode/master/README.md b/examples/peripherals/spi_slave_hd/append_mode/master/README.md index 93ba4c8220..95779d8ed8 100644 --- a/examples/peripherals/spi_slave_hd/append_mode/master/README.md +++ b/examples/peripherals/spi_slave_hd/append_mode/master/README.md @@ -1 +1,4 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + See README.md in the parent directory diff --git a/examples/peripherals/spi_slave_hd/segment_mode/seg_master/README.md b/examples/peripherals/spi_slave_hd/segment_mode/seg_master/README.md index 93ba4c8220..95779d8ed8 100644 --- a/examples/peripherals/spi_slave_hd/segment_mode/seg_master/README.md +++ b/examples/peripherals/spi_slave_hd/segment_mode/seg_master/README.md @@ -1 +1,4 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + See README.md in the parent directory diff --git a/examples/peripherals/twai/twai_alert_and_recovery/README.md b/examples/peripherals/twai/twai_alert_and_recovery/README.md index d76bb0900e..a5d7bc673d 100644 --- a/examples/peripherals/twai/twai_alert_and_recovery/README.md +++ b/examples/peripherals/twai/twai_alert_and_recovery/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # TWAI Alert and Recovery Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/twai/twai_network/README.md b/examples/peripherals/twai/twai_network/README.md index 0136b016f2..17698069d4 100644 --- a/examples/peripherals/twai/twai_network/README.md +++ b/examples/peripherals/twai/twai_network/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # TWAI Network Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/peripherals/twai/twai_self_test/README.md b/examples/peripherals/twai/twai_self_test/README.md index a46e34b049..44caff52ca 100644 --- a/examples/peripherals/twai/twai_self_test/README.md +++ b/examples/peripherals/twai/twai_self_test/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # TWAI Self Test Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/asio/asio_chat/README.md b/examples/protocols/asio/asio_chat/README.md index 4848b457b8..2896e9ab75 100644 --- a/examples/protocols/asio/asio_chat/README.md +++ b/examples/protocols/asio/asio_chat/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Asio chat client and server examples @@ -48,7 +51,7 @@ Set following parameters under Example Configuration Options: - Connect to the server using multiple clients, for example using any option below. - build and run asio chat client on your host machine - run chat_client asio example on ESP platform - - since chat messages consists of ASCII size and message, it is possible to + - since chat messages consists of ASCII size and message, it is possible to netcat `nc IP PORT` and type for example ` 4ABC` to transmit 'ABC\n' ## Running the example in client mode diff --git a/examples/protocols/asio/ssl_client_server/README.md b/examples/protocols/asio/ssl_client_server/README.md index e99ccfe11d..fbf2cc15eb 100644 --- a/examples/protocols/asio/ssl_client_server/README.md +++ b/examples/protocols/asio/ssl_client_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Asio SSL client/server example Simple Asio client and server with SSL/TLS transport @@ -13,8 +16,8 @@ to connect to internet or a local network via WiFi or Ethernet to easily exercis * Open the project configuration menu (`idf.py menuconfig`) * Configure Wi-Fi or Ethernet under "Example Connection Configuration" menu. See "Establishing Wi-Fi or Ethernet Connection" section in [examples/protocols/README.md](../../README.md) for more details. -* Enable the ASIO client and set server's host name to examine client's functionality. -The ASIO client connects to the configured server and sends default payload string "GET / HTTP/1.1" +* Enable the ASIO client and set server's host name to examine client's functionality. +The ASIO client connects to the configured server and sends default payload string "GET / HTTP/1.1" * Enable the ASIO server to examine server's functionality. The ASIO server listens to connection and echos back what was received. ### Build and Flash @@ -58,7 +61,7 @@ D ### Both server and client enabled The below output demonstrates the client connecting to the ASIO server via loopback interface, so no WiFi, nor Ethernet connection -was established. +was established. ``` I (0) cpu_start: App cpu up. I (495) heap_init: Initializing. RAM available for dynamic allocation: diff --git a/examples/protocols/asio/tcp_echo_server/README.md b/examples/protocols/asio/tcp_echo_server/README.md index b2443a245e..2c3893550b 100644 --- a/examples/protocols/asio/tcp_echo_server/README.md +++ b/examples/protocols/asio/tcp_echo_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Asio TCP echo server example Simple Asio TCP echo server using WiFi STA or Ethernet. diff --git a/examples/protocols/asio/udp_echo_server/README.md b/examples/protocols/asio/udp_echo_server/README.md index cc8a67e66c..cd384fc397 100644 --- a/examples/protocols/asio/udp_echo_server/README.md +++ b/examples/protocols/asio/udp_echo_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Asio UDP echo server example Simple Asio UDP echo server using WiFi STA or Ethernet. diff --git a/examples/protocols/coap_client/README.md b/examples/protocols/coap_client/README.md index 1db75c611f..6df0f788d8 100644 --- a/examples/protocols/coap_client/README.md +++ b/examples/protocols/coap_client/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # CoAP client example @@ -18,7 +21,7 @@ If the URI is prefixed with coap+tcp://, then the CoAP will try to use TCP for t NOTE: coaps+tcp:// is not currently supported, even though both libcoap and MbedTLS support it. The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with -constrained nodes and constrained networks in the Internet of Things. +constrained nodes and constrained networks in the Internet of Things. The protocol is designed for machine-to-machine (M2M) applications such as smart energy and building automation. @@ -61,9 +64,9 @@ See the Getting Started Guide for full steps to configure and use ESP-IDF to bui ## Example Output Prerequisite: we startup a CoAP server on coap server example, -or use the default of coap://californium.eclipseprojects.io. +or use the default of coap://californium.eclipseprojects.io. -and you could receive data from CoAP server if succeed, +and you could receive data from CoAP server if succeed, such as the following log: ``` diff --git a/examples/protocols/coap_server/README.md b/examples/protocols/coap_server/README.md index bb37783ff4..d12ef08e91 100644 --- a/examples/protocols/coap_server/README.md +++ b/examples/protocols/coap_server/README.md @@ -1,7 +1,10 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # CoAP server example -(See the README.md file in the upper level 'examples' directory for more information about examples.) +(See the README.md file in the upper level 'examples' directory for more information about examples.) This CoAP server example is very simplified adaptation of one of the [libcoap](https://github.com/obgm/libcoap) examples. @@ -17,7 +20,7 @@ NOTE: Client sessions trying to use coaps+tcp:// are not currently supported, ev libcoap and MbedTLS support it. The Constrained Application Protocol (CoAP) is a specialized web transfer protocol for use with -constrained nodes and constrained networks in the Internet of Things. +constrained nodes and constrained networks in the Internet of Things. The protocol is designed for machine-to-machine (M2M) applications such as smart energy and building automation. @@ -58,8 +61,8 @@ idf.py -p PORT flash monitor See the Getting Started Guide for full steps to configure and use ESP-IDF to build projects. ## Example Output -current CoAP server would startup a daemon task, -and the log is such as the following: +current CoAP server would startup a daemon task, +and the log is such as the following: ``` ... @@ -76,7 +79,7 @@ I (2622) CoAP_server: Connected to AP ... ``` -If a CoAP client queries the `/Espressif` resource, CoAP server will return `"Hello World!"` +If a CoAP client queries the `/Espressif` resource, CoAP server will return `"Hello World!"` until a CoAP client does a PUT with different data. ## libcoap Documentation diff --git a/examples/protocols/esp_http_client/README.md b/examples/protocols/esp_http_client/README.md index c4225fde25..90584a16f2 100644 --- a/examples/protocols/esp_http_client/README.md +++ b/examples/protocols/esp_http_client/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP HTTP Client Example See the README.md file in the upper level 'examples' directory for more information about examples. diff --git a/examples/protocols/esp_local_ctrl/README.md b/examples/protocols/esp_local_ctrl/README.md index 3bd2203255..309c6da72e 100644 --- a/examples/protocols/esp_local_ctrl/README.md +++ b/examples/protocols/esp_local_ctrl/README.md @@ -1,5 +1,6 @@ | Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | | ----------------- | ----- | -------- | -------- | -------- | + # ESP Local Control using HTTPS server This example creates a `esp_local_ctrl` service over HTTPS transport, for securely controlling the device over local network. In this case the device name is resolved through `mDNS`, which in this example is `my_esp_ctrl_device.local`. diff --git a/examples/protocols/http2_request/README.md b/examples/protocols/http2_request/README.md index e7be3a83ef..bc0f7b11aa 100644 --- a/examples/protocols/http2_request/README.md +++ b/examples/protocols/http2_request/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # HTTP/2 Request Example Establish an HTTP/2 connection with https://http2.github.io diff --git a/examples/protocols/http_request/README.md b/examples/protocols/http_request/README.md index a81b5c874e..7448e2521d 100644 --- a/examples/protocols/http_request/README.md +++ b/examples/protocols/http_request/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # HTTP Request Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -72,7 +75,7 @@ Connection: close margin: 0; padding: 0; font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; - + } div { width: 600px; @@ -92,7 +95,7 @@ Connection: close width: auto; } } - + @@ -105,7 +108,7 @@ Connection: close I (11467) example: ... done reading from socket. Last read return=0 errno=128. -I (11477) example: 10... -I (12477) example: 9... -I (13477) example: 8... +I (11477) example: 10... +I (12477) example: 9... +I (13477) example: 8... ``` diff --git a/examples/protocols/http_server/advanced_tests/README.md b/examples/protocols/http_server/advanced_tests/README.md index c320b2a00a..ec555d5d1b 100644 --- a/examples/protocols/http_server/advanced_tests/README.md +++ b/examples/protocols/http_server/advanced_tests/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # HTTP server advanced tests (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/http_server/captive_portal/README.md b/examples/protocols/http_server/captive_portal/README.md index 992ba257d2..a7a1536f4a 100644 --- a/examples/protocols/http_server/captive_portal/README.md +++ b/examples/protocols/http_server/captive_portal/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Captive Portal Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/http_server/file_serving/README.md b/examples/protocols/http_server/file_serving/README.md index ce5fb4cd23..d38fdea1cc 100644 --- a/examples/protocols/http_server/file_serving/README.md +++ b/examples/protocols/http_server/file_serving/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Simple HTTP File Server Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -70,7 +73,7 @@ See the Getting Started Guide for full steps to configure and use ESP-IDF to bui The following steps assume that IP address 192.168.1.100 was assigned. -2. Test the example interactively in a web browser. The default port is 80. +2. Test the example interactively in a web browser. The default port is 80. 1. Open path http://192.168.1.100/ or http://192.168.1.100/index.html to see an HTML page with list of files on the server. The page will initially be empty. 2. Use the file upload form on the webpage to select and upload a file to the server. diff --git a/examples/protocols/http_server/persistent_sockets/README.md b/examples/protocols/http_server/persistent_sockets/README.md index 2ce2a3022b..c4b0853b30 100644 --- a/examples/protocols/http_server/persistent_sockets/README.md +++ b/examples/protocols/http_server/persistent_sockets/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # HTTPD Server Persistent Sockets Example The Example consists of HTTPD server persistent sockets demo. diff --git a/examples/protocols/http_server/restful_server/README.md b/examples/protocols/http_server/restful_server/README.md index a50bb6f744..95d852adcf 100644 --- a/examples/protocols/http_server/restful_server/README.md +++ b/examples/protocols/http_server/restful_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # HTTP Restful API Server Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -57,7 +60,7 @@ Only if you deploy the website to SD card, then the following pin connection is ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Connection Configuration` menu: diff --git a/examples/protocols/http_server/simple/README.md b/examples/protocols/http_server/simple/README.md index 38e6b52f8c..c64d0336be 100644 --- a/examples/protocols/http_server/simple/README.md +++ b/examples/protocols/http_server/simple/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Simple HTTPD Server Example The Example consists of HTTPD server demo with demostration of URI handling : diff --git a/examples/protocols/http_server/ws_echo_server/README.md b/examples/protocols/http_server/ws_echo_server/README.md index e8f4d24818..1efd44cf2a 100644 --- a/examples/protocols/http_server/ws_echo_server/README.md +++ b/examples/protocols/http_server/ws_echo_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Websocket echo server (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -24,7 +27,7 @@ We register the URI handler with the standard API `httpd_register_uri_handler()` ```c static const httpd_uri_t ws_uri_handler_options = { ... // httpd options - + .is_websocket = true, // Mandatory: set to `true` to handler websocket protocol .handle_ws_control_frames = false, // Optional: set to `true` for the handler to receive control packets, too .supported_subprotocol = "chat", // Optional: set supported subprotocol for this handler diff --git a/examples/protocols/icmp_echo/README.md b/examples/protocols/icmp_echo/README.md index efcac6791e..1469bbf72b 100644 --- a/examples/protocols/icmp_echo/README.md +++ b/examples/protocols/icmp_echo/README.md @@ -1,12 +1,15 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # ICMP Echo-Reply (Ping) example (See the README.md file in the upper level 'examples' directory for more information about examples.) -Ping is a useful network utility used to test if a remote host is reachable on the IP network. It measures the round-trip time for messages sent from the source host to a destination target that are echoed back to the source. +Ping is a useful network utility used to test if a remote host is reachable on the IP network. It measures the round-trip time for messages sent from the source host to a destination target that are echoed back to the source. Ping operates by sending Internet Control Message Protocol (ICMP) echo request packets to the target host and waiting for an ICMP echo reply. -This example implements a simple ping command line util based on the [console component](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/console.html). +This example implements a simple ping command line util based on the [console component](https://docs.espressif.com/projects/esp-idf/en/latest/api-guides/console.html). **Notes:** Currently this example only supports IPv4. diff --git a/examples/protocols/l2tap/README.md b/examples/protocols/l2tap/README.md index a166601b2b..7c2ada42a1 100644 --- a/examples/protocols/l2tap/README.md +++ b/examples/protocols/l2tap/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-NETIF L2 TAP Interface Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/mdns/README.md b/examples/protocols/mdns/README.md index b66cebc57a..4d575e2a9a 100644 --- a/examples/protocols/mdns/README.md +++ b/examples/protocols/mdns/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # mDNS example Shows how to use mDNS to advertise lookup services and hosts diff --git a/examples/protocols/mqtt/ssl/README.md b/examples/protocols/mqtt/ssl/README.md index 754c693be6..a87f2084c9 100644 --- a/examples/protocols/mqtt/ssl/README.md +++ b/examples/protocols/mqtt/ssl/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-MQTT SSL Sample application (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/mqtt/ssl_mutual_auth/README.md b/examples/protocols/mqtt/ssl_mutual_auth/README.md index 74beb8996e..be0c9b6d1b 100644 --- a/examples/protocols/mqtt/ssl_mutual_auth/README.md +++ b/examples/protocols/mqtt/ssl_mutual_auth/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-MQTT SSL Sample application (mutual authentication) (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/mqtt/ssl_psk/README.md b/examples/protocols/mqtt/ssl_psk/README.md index 486fc5e5df..cec38fe1fb 100644 --- a/examples/protocols/mqtt/ssl_psk/README.md +++ b/examples/protocols/mqtt/ssl_psk/README.md @@ -1,4 +1,7 @@ -# ESP-MQTT SSL example with PSK verification +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + +# ESP-MQTT SSL example with PSK verification (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -8,11 +11,11 @@ This example connects to a local broker configured to PSK authentication ### Hardware Required -This example can be executed on any ESP32 board, the only required interface is WiFi (or ethernet) to connect to a MQTT +This example can be executed on any ESP32 board, the only required interface is WiFi (or ethernet) to connect to a MQTT broker with preconfigured PSK verification method. #### Mosquitto settings -In case of using mosquitto broker, here is how to enable PSK authentication in `mosquitto.config`, +In case of using mosquitto broker, here is how to enable PSK authentication in `mosquitto.config`, ``` psk_hint hint psk_file path_to_your_psk_file diff --git a/examples/protocols/mqtt/tcp/README.md b/examples/protocols/mqtt/tcp/README.md index e12a16144f..be6d70a577 100644 --- a/examples/protocols/mqtt/tcp/README.md +++ b/examples/protocols/mqtt/tcp/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-MQTT sample application (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/mqtt/ws/README.md b/examples/protocols/mqtt/ws/README.md index 2bceb3ca69..c2620b377e 100644 --- a/examples/protocols/mqtt/ws/README.md +++ b/examples/protocols/mqtt/ws/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-MQTT MQTT over Websocket (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/mqtt/wss/README.md b/examples/protocols/mqtt/wss/README.md index fb4b6c1a8d..f836920aaa 100644 --- a/examples/protocols/mqtt/wss/README.md +++ b/examples/protocols/mqtt/wss/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESP-MQTT MQTT over WSS Sample application (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/slip/slip_udp/README.md b/examples/protocols/slip/slip_udp/README.md index d7869ff978..67d21736fa 100644 --- a/examples/protocols/slip/slip_udp/README.md +++ b/examples/protocols/slip/slip_udp/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # SLIP device client (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/smtp_client/README.md b/examples/protocols/smtp_client/README.md index 55e8ec3ed7..c4db206a43 100644 --- a/examples/protocols/smtp_client/README.md +++ b/examples/protocols/smtp_client/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # SMTP Client Example The Example is SMTP client demo. It sends and email with attachment to recipient. diff --git a/examples/protocols/sockets/non_blocking/README.md b/examples/protocols/sockets/non_blocking/README.md index 8dd55a3d75..06d14c47a7 100644 --- a/examples/protocols/sockets/non_blocking/README.md +++ b/examples/protocols/sockets/non_blocking/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # TCP non-blocking client and server examples @@ -8,7 +11,7 @@ It could be configured to run either a TCP server, or a TCP client, or both, in ## How to use example -The example is configured by default as the TCP client. +The example is configured by default as the TCP client. Note that the example uses string representation of IP addresses and ports and thus could be used on both IPv4 and IPv6 protocols. diff --git a/examples/protocols/sockets/tcp_client/README.md b/examples/protocols/sockets/tcp_client/README.md index c6245c399b..d3a9c3340f 100644 --- a/examples/protocols/sockets/tcp_client/README.md +++ b/examples/protocols/sockets/tcp_client/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # TCP Client example @@ -9,8 +12,8 @@ The application creates a TCP socket and tries to connect to the server with pre In order to create TCP server that communicates with TCP Client example, choose one of the following options. -There are many host-side tools which can be used to interact with the UDP/TCP server/client. -One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. +There are many host-side tools which can be used to interact with the UDP/TCP server/client. +One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. Note: please replace `192.168.0.167 3333` with desired IPV4/IPV6 address (displayed in monitor console) and port number in the following command. In addition to those tools, simple Python scripts can be found under sockets/scripts directory. Every script is designed to interact with one of the examples. diff --git a/examples/protocols/sockets/tcp_client_multi_net/README.md b/examples/protocols/sockets/tcp_client_multi_net/README.md index 572b0b9730..1a9343bb7f 100644 --- a/examples/protocols/sockets/tcp_client_multi_net/README.md +++ b/examples/protocols/sockets/tcp_client_multi_net/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Multiple Ethernet Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/protocols/sockets/tcp_server/README.md b/examples/protocols/sockets/tcp_server/README.md index d4324038a4..7b0e71da6b 100644 --- a/examples/protocols/sockets/tcp_server/README.md +++ b/examples/protocols/sockets/tcp_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # TCP Server example @@ -9,8 +12,8 @@ The application creates a TCP socket with the specified port number and waits fo In order to create TCP client that communicates with TCP server example, choose one of the following options. -There are many host-side tools which can be used to interact with the UDP/TCP server/client. -One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. +There are many host-side tools which can be used to interact with the UDP/TCP server/client. +One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. Note: please replace `192.168.0.167 3333` with desired IPV4/IPV6 address (displayed in monitor console) and port number in the following command. In addition to those tools, simple Python scripts can be found under sockets/scripts directory. Every script is designed to interact with one of the examples. diff --git a/examples/protocols/sockets/udp_client/README.md b/examples/protocols/sockets/udp_client/README.md index eeae2f2c87..c1db97b310 100644 --- a/examples/protocols/sockets/udp_client/README.md +++ b/examples/protocols/sockets/udp_client/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # UDP Client example @@ -9,8 +12,8 @@ The application creates UDP socket and sends message to the predefined port and In order to create UDP server that communicates with UDP Client example, choose one of the following options. -There are many host-side tools which can be used to interact with the UDP/TCP server/client. -One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. +There are many host-side tools which can be used to interact with the UDP/TCP server/client. +One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. Note: please replace `192.168.0.167 3333` with desired IPV4/IPV6 address (displayed in monitor console) and port number in the following commands. In addition to those tools, simple Python scripts can be found under sockets/scripts directory. Every script is designed to interact with one of the examples. diff --git a/examples/protocols/sockets/udp_multicast/README.md b/examples/protocols/sockets/udp_multicast/README.md index 649bd61195..23acb3a128 100644 --- a/examples/protocols/sockets/udp_multicast/README.md +++ b/examples/protocols/sockets/udp_multicast/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # UDP Multicast Example This example shows how to use the IPV4 & IPV6 UDP multicast features via the BSD-style sockets interface. diff --git a/examples/protocols/sockets/udp_server/README.md b/examples/protocols/sockets/udp_server/README.md index c29ab3ed6b..b461d8c76a 100644 --- a/examples/protocols/sockets/udp_server/README.md +++ b/examples/protocols/sockets/udp_server/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # UDP Server example @@ -9,8 +12,8 @@ The application creates UDP socket with the specified port number and waits for In order to create UDP client that communicates with UDP server example, choose one of the following options. -There are many host-side tools which can be used to interact with the UDP/TCP server/client. -One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. +There are many host-side tools which can be used to interact with the UDP/TCP server/client. +One command line tool is [netcat](http://netcat.sourceforge.net) which can send and receive many kinds of packets. Note: please replace `192.168.0.167 3333` with desired IPV4/IPV6 address (displayed in monitor console) and port number in the following commands. If want to use this RECVINFO function, please enable LWIP_NETBUF_RECVINFO in menuconfig,this function can only resolve the destination address of IPV4. diff --git a/examples/protocols/static_ip/README.md b/examples/protocols/static_ip/README.md index 974a7d3363..8c95367435 100644 --- a/examples/protocols/static_ip/README.md +++ b/examples/protocols/static_ip/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # WiFi station example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/security/flash_encryption/README.md b/examples/security/flash_encryption/README.md index 0dd247ad8e..587c1233e3 100644 --- a/examples/security/flash_encryption/README.md +++ b/examples/security/flash_encryption/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Flash Encryption The example checks if the flash encryption feature is enabled/disabled and if enabled prints the flash encryption mode (DEVELOPMENT / RELEASE) and FLASH_CRYPT_CNT (for ESP32) or SPI_BOOT_CRYPT_CNT (for ESP32-S2 and newer targets) eFuse value. diff --git a/examples/storage/custom_flash_driver/README.md b/examples/storage/custom_flash_driver/README.md index 391fc4b8e4..1409321756 100644 --- a/examples/storage/custom_flash_driver/README.md +++ b/examples/storage/custom_flash_driver/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Custom Flash Driver Example This example shows how to override the default chip driver list provided by IDF. Please make sure the SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST config option is enabled when you build this project (though it should already be enabled by default via `sdkconfig.defaults`). See [the programming guide](https://docs.espressif.com/projects/esp-idf/en/stable/api-reference/storage/spi_flash_override_driver.html) for more details regarding this feature. diff --git a/examples/storage/ext_flash_fatfs/README.md b/examples/storage/ext_flash_fatfs/README.md index 41d7d75db8..d196b679ae 100644 --- a/examples/storage/ext_flash_fatfs/README.md +++ b/examples/storage/ext_flash_fatfs/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # FAT FS on External Flash example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/fatfsgen/README.md b/examples/storage/fatfsgen/README.md index f736a8c501..d9bcb711a6 100644 --- a/examples/storage/fatfsgen/README.md +++ b/examples/storage/fatfsgen/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # FATFS partition generation example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/nvs_rw_blob/README.md b/examples/storage/nvs_rw_blob/README.md index 398418cabf..0c81a61247 100644 --- a/examples/storage/nvs_rw_blob/README.md +++ b/examples/storage/nvs_rw_blob/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Non-Volatile Storage (NVS) Read and Write Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/nvs_rw_value/README.md b/examples/storage/nvs_rw_value/README.md index e5a7f2e909..5e606a327b 100644 --- a/examples/storage/nvs_rw_value/README.md +++ b/examples/storage/nvs_rw_value/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Non-Volatile Storage (NVS) Read and Write Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/nvs_rw_value_cxx/README.md b/examples/storage/nvs_rw_value_cxx/README.md index 7ca19cea36..b3573e97a3 100644 --- a/examples/storage/nvs_rw_value_cxx/README.md +++ b/examples/storage/nvs_rw_value_cxx/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Non-Volatile Storage (NVS) C++ Read and Write Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/partition_api/partition_find/README.md b/examples/storage/partition_api/partition_find/README.md index a05152850e..8efdc97552 100644 --- a/examples/storage/partition_api/partition_find/README.md +++ b/examples/storage/partition_api/partition_find/README.md @@ -1,17 +1,20 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Finding Partitions Example This example demonstrates how to use the partition API functions `esp_partition_find` and `esp_partition_find_first` to search the device partition table. These functions return the matching partitions given a set of constraints. By constraints we simply mean -properties that returned results should match - notably partition type, subtype and label/name. In the case of `esp_partition_find_first`, the first matching instance is returned; +properties that returned results should match - notably partition type, subtype and label/name. In the case of `esp_partition_find_first`, the first matching instance is returned; for `esp_partition_find`, an iterator is returned iterating over matching instances. # Example Flow -The example uses a [custom partition table](./partitions_example.csv). The first part uses `esp_partition_find_first` to search for partition instances -using two constraints - type and subtype. However, the partition table contains partitions with same type/subtype combination. In order to differentiate these partitions, +The example uses a [custom partition table](./partitions_example.csv). The first part uses `esp_partition_find_first` to search for partition instances +using two constraints - type and subtype. However, the partition table contains partitions with same type/subtype combination. In order to differentiate these partitions, a third constraint - the label, is specified. -The second part shows how to iterate over partitions that match certain constraints, manually checking the properties of each iterated partition. +The second part shows how to iterate over partitions that match certain constraints, manually checking the properties of each iterated partition. The iterator is obtained using `esp_partition_find` and is released after its use to avoid memory leaks. ### Output diff --git a/examples/storage/partition_api/partition_mmap/README.md b/examples/storage/partition_api/partition_mmap/README.md index e60d75c4bd..e7556b409e 100644 --- a/examples/storage/partition_api/partition_mmap/README.md +++ b/examples/storage/partition_api/partition_mmap/README.md @@ -1,13 +1,16 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Partition Memory Map Example -This example demonstrates how to use `esp_partition_mmap` to configure MMU and map a partition into memory address space for read operations. +This example demonstrates how to use `esp_partition_mmap` to configure MMU and map a partition into memory address space for read operations. # Example Flow -The example uses a [custom partition table](./partitions_example.csv), with a data partition `storage` used for demonstration. Before mapping this partition to memory, +The example uses a [custom partition table](./partitions_example.csv), with a data partition `storage` used for demonstration. Before mapping this partition to memory, data is written to the partition used for verification. -The partition API function `esp_partition_mmap` is used to get a pointer to the mapped memory region and a handle to the mapping. The pointer is used to transparently read back the +The partition API function `esp_partition_mmap` is used to get a pointer to the mapped memory region and a handle to the mapping. The pointer is used to transparently read back the verification data written previously. Once the data written and read are verified to be the same, the function `spi_flash_munmap` is used to release the mapping. ### Output diff --git a/examples/storage/partition_api/partition_ops/README.md b/examples/storage/partition_api/partition_ops/README.md index 4e9d792efe..e5763942d3 100644 --- a/examples/storage/partition_api/partition_ops/README.md +++ b/examples/storage/partition_api/partition_ops/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Partition Read, Write, Erase Example This example demonstrates how to perform partition read, write and erase operations using API functions `esp_partition_read`, `esp_partition_write` and `esp_partition_erase`. @@ -7,7 +10,7 @@ This example demonstrates how to perform partition read, write and erase operati The example uses a [custom partition table](./partitions_example.csv), with a data partition `storage` used as the demo partition. For the most part the example code is well-commented so users should be able to follow along the code easily. Nevertheless, this section provides an overview of the code flow. The partition table is searched for the `storage` partition. Once found, the entire partition is erased using `esp_partition_erase_range`. Sample data is written using `esp_partition_write` -and read back using `esp_partition_read`, verifying the read and written data match. The partition is erased once again using `esp_partition_erase_range`, limited to the sector the sample data was written to. +and read back using `esp_partition_read`, verifying the read and written data match. The partition is erased once again using `esp_partition_erase_range`, limited to the sector the sample data was written to. ### Output diff --git a/examples/storage/parttool/README.md b/examples/storage/parttool/README.md index 8bacc7e03a..157639039e 100644 --- a/examples/storage/parttool/README.md +++ b/examples/storage/parttool/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Partitions Tool Example This example demonstrates common operations the partitions tool [parttool.py](../../../components/partition_table/parttool.py) allows the user to perform: diff --git a/examples/storage/sd_card/sdspi/README.md b/examples/storage/sd_card/sdspi/README.md index ebc228994c..2750fbae9d 100644 --- a/examples/storage/sd_card/sdspi/README.md +++ b/examples/storage/sd_card/sdspi/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # SD Card example (SDSPI) (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/semihost_vfs/README.md b/examples/storage/semihost_vfs/README.md index 696b9460ab..cfbaf19c51 100644 --- a/examples/storage/semihost_vfs/README.md +++ b/examples/storage/semihost_vfs/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Semihosting VFS driver example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -101,9 +104,9 @@ There are two outputs produced by example: but they're the best we can do in text. A graphics file illustrating the character set should be available from the same archive as this file. - + Hex Description Hex Description - + 20 SPACE ... 7D RIGHT CURLY BRACKET FD SMALL LETTER Y WITH ACUTE diff --git a/examples/storage/spiffs/README.md b/examples/storage/spiffs/README.md index 6ceb34634e..00655f0f5a 100644 --- a/examples/storage/spiffs/README.md +++ b/examples/storage/spiffs/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # SPIFFS example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/spiffsgen/README.md b/examples/storage/spiffsgen/README.md index 07525e03dd..08f5b24d08 100644 --- a/examples/storage/spiffsgen/README.md +++ b/examples/storage/spiffsgen/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # SPIFFS Image Generation on Build Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/storage/wear_levelling/README.md b/examples/storage/wear_levelling/README.md index a10dd4c55b..aeb4a6b1e2 100644 --- a/examples/storage/wear_levelling/README.md +++ b/examples/storage/wear_levelling/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Wear levelling example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -36,7 +39,7 @@ See the Getting Started Guide for full steps to configure and use ESP-IDF to bui ## Example output -Here is a typical example console output. +Here is a typical example console output. ``` I (280) example: Mounting FAT filesystem diff --git a/examples/system/base_mac_address/README.md b/examples/system/base_mac_address/README.md index 990aca44b3..57d919a611 100644 --- a/examples/system/base_mac_address/README.md +++ b/examples/system/base_mac_address/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Base MAC Address (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/system/console/advanced/README.md b/examples/system/console/advanced/README.md index 94c080aa98..a88bc9bef4 100644 --- a/examples/system/console/advanced/README.md +++ b/examples/system/console/advanced/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Console Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -36,7 +39,7 @@ See the Getting Started Guide for full steps to configure and use ESP-IDF to bui ## Example Output -Enter the `help` command get a full list of all available commands. The following is a sample session of the Console Example where a variety of commands provided by the Console Example are used. Note that GPIO15 is connected to GND to remove the boot log output. +Enter the `help` command get a full list of all available commands. The following is a sample session of the Console Example where a variety of commands provided by the Console Example are used. Note that GPIO15 is connected to GND to remove the boot log output. ``` This is an example of ESP-IDF console component. @@ -44,13 +47,13 @@ Type 'help' to get the list of commands. Use UP/DOWN arrows to navigate through command history. Press TAB when typing command name to auto-complete. [esp32]> help -help +help Print the list of registered commands -free +free Get the total size of heap memory available -restart +restart Restart the program deep_sleep [-t ] [--io=] [--io_level=<0|1>] @@ -99,7 +102,7 @@ This is an example of ESP-IDF console component. Type 'help' to get the list of commands. Use UP/DOWN arrows to navigate through command history. Press TAB when typing command name to auto-complete. -[esp32]> +[esp32]> ``` @@ -124,7 +127,7 @@ esp32> ### Configuring UART -The ``initialize_console()`` function in the example configures some aspects of UART relevant to the operation of the console. +The ``initialize_console()`` function in the example configures some aspects of UART relevant to the operation of the console. - **Line Endings**: The default line endings are configured to match those expected/generated by common serial monitor programs, such as `screen`, `minicom`, and the `idf_monitor.py` included in the SDK. The default behavior for these commands are: - When 'enter' key is pressed on the keyboard, `CR` (0x13) code is sent to the serial device. diff --git a/examples/system/console/basic/README.md b/examples/system/console/basic/README.md index 67a67be03b..2bcef7e700 100644 --- a/examples/system/console/basic/README.md +++ b/examples/system/console/basic/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Basic Console Example (`esp_console_repl`) (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -70,13 +73,13 @@ Type 'help' to get the list of commands. Use UP/DOWN arrows to navigate through command history. Press TAB when typing command name to auto-complete. [esp32]> help -help +help Print the list of registered commands -free +free Get the total size of heap memory available -restart +restart Restart the program deep_sleep [-t ] [--io=] [--io_level=<0|1>] @@ -125,7 +128,7 @@ This is an example of ESP-IDF console component. Type 'help' to get the list of commands. Use UP/DOWN arrows to navigate through command history. Press TAB when typing command name to auto-complete. -[esp32]> +[esp32]> ``` diff --git a/examples/system/efuse/README.md b/examples/system/efuse/README.md index 10ec84cac5..c37d1d1ff2 100644 --- a/examples/system/efuse/README.md +++ b/examples/system/efuse/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # eFuse Example ## Overview diff --git a/examples/system/esp_event/default_event_loop/README.md b/examples/system/esp_event/default_event_loop/README.md index a3e6060f8f..27f43e5bd0 100644 --- a/examples/system/esp_event/default_event_loop/README.md +++ b/examples/system/esp_event/default_event_loop/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Default Event Loop Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -101,12 +104,12 @@ I (3398) default_event_loop: TASK_EVENTS:TASK_ITERATION_EVENT: deleting task eve ### Setting of Event Sources -This example uses two event sources: +This example uses two event sources: - A periodic timer. An event is raised when (1) the timer is started (2) the timer period expires and (3) the timer is stopped - A task with a loop inside. An event is raised for the when (1) the loop iterates. -All of the events mentioned above have their own specific handler, however there are the following additional handlers. +All of the events mentioned above have their own specific handler, however there are the following additional handlers. - One handler executes when **any** event under the periodic timer event is posted - The other handler executes if **any** event is posted. diff --git a/examples/system/esp_event/user_event_loops/README.md b/examples/system/esp_event/user_event_loops/README.md index 18fb719c6e..2c101d6563 100644 --- a/examples/system/esp_event/user_event_loops/README.md +++ b/examples/system/esp_event/user_event_loops/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # User Event Loops Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/system/eventfd/README.md b/examples/system/eventfd/README.md index 67fb1afdce..2ee63c4838 100644 --- a/examples/system/eventfd/README.md +++ b/examples/system/eventfd/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # eventfd example The example demonstrates the use of `eventfd()` to collect events from other tasks and ISRs in a diff --git a/examples/system/freertos/real_time_stats/README.md b/examples/system/freertos/real_time_stats/README.md index bf52abcef2..3abfffb8c0 100644 --- a/examples/system/freertos/real_time_stats/README.md +++ b/examples/system/freertos/real_time_stats/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # FreeRTOS Real Time Stats Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/system/gdbstub/README.md b/examples/system/gdbstub/README.md index 45b335a28e..ef06c8e71c 100644 --- a/examples/system/gdbstub/README.md +++ b/examples/system/gdbstub/README.md @@ -1,24 +1,27 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # GDBstub example -This example shows how to use gdbstub and it's functionality at runtime to debug an application with GDB. -With the gdbstub component it is possible to run GDB from IDF Monitor by pressing Ctrl+C and debug -the application using GDB. It is also possible to read/modify memory values, interrupt and continue +This example shows how to use gdbstub and it's functionality at runtime to debug an application with GDB. +With the gdbstub component it is possible to run GDB from IDF Monitor by pressing Ctrl+C and debug +the application using GDB. It is also possible to read/modify memory values, interrupt and continue the application, set breakpoints, make steps and so on. Upon exit from GDB, the application will continue to work in IDF Monitor as before. ## How to use example ### Hardware Required -The example can run on any commonly available ESP32 development board. +The example can run on any commonly available ESP32 development board. There are two possible ways to execute gdbstub with GDB: from IDF Monitor and as standalone application. -gdbstub support ESP32, ESP32-S2 and ESP32-S3 chips. +gdbstub support ESP32, ESP32-S2 and ESP32-S3 chips. ### Configure the project By default, the example is already pre-configured, but the user can change configuration options with the following command: ``` idf.py menuconfig -``` +``` Current example is pre-configured. The user can scroll through the system parameters and see the settings. Most important one is: -> Component Config -> ESP System Settings -> Panic handler behaviour -> GDBStub on runtime @@ -46,16 +49,16 @@ This will execute GDB and GDB will connect to your Esp32 by serial port COM10 wi ## Example Output -The example demonstrates how to switch to GDB, watch values, change values, continue to run, and exit from GDB to the application. +The example demonstrates how to switch to GDB, watch values, change values, continue to run, and exit from GDB to the application. To switch to GDB, the user presses Ctrl+C. This will stop the application and run the GDB. In GDB, the user can print values "print call_count" and "print update_log_level" and then change them "set call_count 100" and "set update_log_level = ESP_LOG_WARN". The user can continue running the application in GDB by entering "continue" and then interrupt the application by pressing Ctrl+C. The user can check again that the application has worked by checking variable "print call_count". -The user can exit from GDB to continue seeing the trace from IDF Monitor by pressing "quit" and then "y". +The user can exit from GDB to continue seeing the trace from IDF Monitor by pressing "quit" and then "y". The user will see in IDF Monitor that call_count and logging level have changed. The user can add breakpoint to the label test_point2 by entering "break test_point2" and then enter "continue" or "c". The application will break at this line. -If user will continue again, the application will break at this line again. +If user will continue again, the application will break at this line again. Also, user can try to step application by entering "si". A typical console output for such a scenario is shown below: ``` @@ -160,7 +163,7 @@ task4test (param=0x0) at ../main/gdbstub_main.c:38 To reproduce this scenario run the application by: idf.py -P PORT flash monitor Then: 1. Interrupt the application by pressing Ctrl+C -2. In GDB, print the application values by typing in GDB command line "print call_count" or "print update_log_level" +2. In GDB, print the application values by typing in GDB command line "print call_count" or "print update_log_level" 3. Modify the application values by typing in GDB command line "set call_count = 100" or "set update_log_level = ESP_LOG_WARN" 4. Continue the application by typing in GDB command line "continue" 5. Interrupt application by pressing Ctrl+C @@ -170,7 +173,7 @@ Then: 9. Add breakpoint by typing in GDB command line "break test_point2" or break 40 (break at line 40). 10. Continue the application by typing in GDB command line "continue" 11. After application stop at label "test_point2". -12. Make stepping by typing "si" +12. Make stepping by typing "si" 13. To exit from GDB to monitor type "exit" and press "y" To exit from monitor please use Ctrl+] diff --git a/examples/system/heap_task_tracking/README.md b/examples/system/heap_task_tracking/README.md index 9284a519d5..7afeff1488 100644 --- a/examples/system/heap_task_tracking/README.md +++ b/examples/system/heap_task_tracking/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Heap Task Tracking Example ## Overview diff --git a/examples/system/light_sleep/README.md b/examples/system/light_sleep/README.md index 63d99b084b..2d1cbd9d9d 100644 --- a/examples/system/light_sleep/README.md +++ b/examples/system/light_sleep/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Light Sleep Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/system/ota/otatool/README.md b/examples/system/ota/otatool/README.md index aa465c2331..461c6f4ae1 100644 --- a/examples/system/ota/otatool/README.md +++ b/examples/system/ota/otatool/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # OTA Tool Example This example demonstrates common operations the OTA tool [otatool.py](../../../../components/app_update/otatool.py) allows the user to perform: diff --git a/examples/system/pthread/README.md b/examples/system/pthread/README.md index 047df78c57..5a87776234 100644 --- a/examples/system/pthread/README.md +++ b/examples/system/pthread/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Pthread Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/system/select/README.md b/examples/system/select/README.md index 888d46109c..952c571c63 100644 --- a/examples/system/select/README.md +++ b/examples/system/select/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Synchronous I/O multiplexing example The example demonstrates the use of synchronous I/O multiplexing by the select() diff --git a/examples/wifi/espnow/README.md b/examples/wifi/espnow/README.md index db07648a6c..765cd5d76c 100644 --- a/examples/wifi/espnow/README.md +++ b/examples/wifi/espnow/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # ESPNOW Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -8,22 +11,22 @@ This example shows how to use ESPNOW of wifi. Example does the following steps: * Initialize ESPNOW. * Register ESPNOW sending or receiving callback function. * Add ESPNOW peer information. -* Send and receive ESPNOW data. +* Send and receive ESPNOW data. This example need at least two ESP devices: -* In order to get the MAC address of the other device, Device1 firstly send broadcast ESPNOW data with 'state' set as 0. -* When Device2 receiving broadcast ESPNOW data from Device1 with 'state' as 0, adds Device1 into the peer list. - Then start sending broadcast ESPNOW data with 'state' set as 1. -* When Device1 receiving broadcast ESPNOW data with 'state' as 1, compares the local magic number with that in the data. - If the local one is bigger than that one, stop sending broadcast ESPNOW data and starts sending unicast ESPNOW data to Device2. -* If Device2 receives unicast ESPNOW data, also stop sending broadcast ESPNOW data. - -In practice, if the MAC address of the other device is known, it's not required to send/receive broadcast ESPNOW data first, +* In order to get the MAC address of the other device, Device1 firstly send broadcast ESPNOW data with 'state' set as 0. +* When Device2 receiving broadcast ESPNOW data from Device1 with 'state' as 0, adds Device1 into the peer list. + Then start sending broadcast ESPNOW data with 'state' set as 1. +* When Device1 receiving broadcast ESPNOW data with 'state' as 1, compares the local magic number with that in the data. + If the local one is bigger than that one, stop sending broadcast ESPNOW data and starts sending unicast ESPNOW data to Device2. +* If Device2 receives unicast ESPNOW data, also stop sending broadcast ESPNOW data. + +In practice, if the MAC address of the other device is known, it's not required to send/receive broadcast ESPNOW data first, just add the device into the peer list and send/receive unicast ESPNOW data. -There are a lot of "extras" on top of ESPNOW data, such as type, state, sequence number, CRC and magic in this example. These "extras" are -not required to use ESPNOW. They are only used to make this example to run correctly. However, it is recommended that users add some "extras" +There are a lot of "extras" on top of ESPNOW data, such as type, state, sequence number, CRC and magic in this example. These "extras" are +not required to use ESPNOW. They are only used to make this example to run correctly. However, it is recommended that users add some "extras" to make ESPNOW data more safe and more reliable. ## How to use example @@ -35,7 +38,7 @@ idf.py menuconfig ``` * Set WiFi mode (station or SoftAP) under Example Configuration Options. -* Set ESPNOW primary master key under Example Configuration Options. +* Set ESPNOW primary master key under Example Configuration Options. This parameter must be set to the same value for sending and recving devices. * Set ESPNOW local master key under Example Configuration Options. This parameter must be set to the same value for sending and recving devices. @@ -45,7 +48,7 @@ idf.py menuconfig * Set Send len under Example Configuration Options. * Set Enable Long Range Options. When this parameter is enabled, the ESP32 device will send data at the PHY rate of 512Kbps or 256Kbps - then the data can be transmitted over long range between two ESP32 devices. + then the data can be transmitted over long range between two ESP32 devices. ### Build and Flash @@ -110,8 +113,8 @@ I (24125) espnow_example: send data to 30:ae:a4:80:45:68 ## Troubleshooting -If ESPNOW data can not be received from another device, maybe the two devices are not -on the same channel or the primary key and local key are different. +If ESPNOW data can not be received from another device, maybe the two devices are not +on the same channel or the primary key and local key are different. -In real application, if the receiving device is in station mode only and it connects to an AP, +In real application, if the receiving device is in station mode only and it connects to an AP, modem sleep should be disabled. Otherwise, it may fail to revceive ESPNOW data from other devices. diff --git a/examples/wifi/fast_scan/README.md b/examples/wifi/fast_scan/README.md index d2b5970c83..40a64d6579 100644 --- a/examples/wifi/fast_scan/README.md +++ b/examples/wifi/fast_scan/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Wi-Fi Fast Scan Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -23,7 +26,7 @@ Before project configuration and build, be sure to set the correct chip target u ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Configuration` menu: diff --git a/examples/wifi/getting_started/softAP/README.md b/examples/wifi/getting_started/softAP/README.md index 22810c2e8a..f356d2dc53 100644 --- a/examples/wifi/getting_started/softAP/README.md +++ b/examples/wifi/getting_started/softAP/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Wi-Fi SoftAP Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -10,7 +13,7 @@ SoftAP supports Protected Management Frames(PMF). Necessary configurations can b ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Configuration` menu: diff --git a/examples/wifi/getting_started/station/README.md b/examples/wifi/getting_started/station/README.md index a778c269a1..4a1989076b 100644 --- a/examples/wifi/getting_started/station/README.md +++ b/examples/wifi/getting_started/station/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Wi-Fi Station Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -8,7 +11,7 @@ This example shows how to use the Wi-Fi Station functionality of the Wi-Fi drive ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Configuration` menu: diff --git a/examples/wifi/iperf/README.md b/examples/wifi/iperf/README.md index ce7247f051..2283fce4f5 100644 --- a/examples/wifi/iperf/README.md +++ b/examples/wifi/iperf/README.md @@ -1,18 +1,21 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | ESP32-C2 | +| ----------------- | ----- | -------- | -------- | -------- | -------- | + # Iperf Example ## Note about iperf version The iperf example doesn't support all features in standard iperf. It's compitable with iperf version 2.x. ## Note about 80MHz flash frequency -The iperf can get better throughput if the SPI flash frequency is set to 80MHz, but the system may crash in 80MHz mode for ESP-WROVER-KIT. -Removing R140~R145 from the board can fix this issue. Currently the default SPI frequency is set to 40MHz, if you want to change the SPI flash +The iperf can get better throughput if the SPI flash frequency is set to 80MHz, but the system may crash in 80MHz mode for ESP-WROVER-KIT. +Removing R140~R145 from the board can fix this issue. Currently the default SPI frequency is set to 40MHz, if you want to change the SPI flash frequency to 80MHz, please make sure R140~R145 are removed from ESP-WROVER-KIT or use ESP32 DevKitC. ## Introduction -This example implements the protocol used by the common performance measurement tool [iPerf](https://iperf.fr/). +This example implements the protocol used by the common performance measurement tool [iPerf](https://iperf.fr/). Performance can be measured between two ESP32s running this example, or between a single ESP32 and a computer running the iPerf tool -Demo steps to test station TCP Tx performance: +Demo steps to test station TCP Tx performance: 1. Build the iperf example with sdkconfig.defaults, which contains performance test specific configurations diff --git a/examples/wifi/power_save/README.md b/examples/wifi/power_save/README.md index 63b11576f5..a9595666dd 100644 --- a/examples/wifi/power_save/README.md +++ b/examples/wifi/power_save/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Wifi Power Save Example This example shows how to use power save mode of wifi. diff --git a/examples/wifi/roaming/README.md b/examples/wifi/roaming/README.md index 37e83407fe..a27c3f905d 100644 --- a/examples/wifi/roaming/README.md +++ b/examples/wifi/roaming/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Roaming Example (See the README.md file in the upper level 'examples' directory for more information about examples.) diff --git a/examples/wifi/scan/README.md b/examples/wifi/scan/README.md index 28feace27c..402505cde6 100644 --- a/examples/wifi/scan/README.md +++ b/examples/wifi/scan/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Wi-Fi Scan Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -15,7 +18,7 @@ Before project configuration and build, be sure to set the correct chip target u ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Configuration` menu: diff --git a/examples/wifi/smart_config/README.md b/examples/wifi/smart_config/README.md index b94d10068b..e9b8abb0d7 100644 --- a/examples/wifi/smart_config/README.md +++ b/examples/wifi/smart_config/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # smartconfig Example This example shows how ESP32 connects to a target AP with ESPTOUCH. @@ -6,7 +9,7 @@ This example shows how ESP32 connects to a target AP with ESPTOUCH. ### Hardware Required -Download ESPTOUCH APP from app store: +Download ESPTOUCH APP from app store: [Android source code](https://github.com/EspressifApp/EsptouchForAndroid) [iOS source code](https://github.com/EspressifApp/EsptouchForIOS) is available. diff --git a/examples/wifi/wifi_eap_fast/README.md b/examples/wifi/wifi_eap_fast/README.md index aced7cc9bc..ff150d2a29 100644 --- a/examples/wifi/wifi_eap_fast/README.md +++ b/examples/wifi/wifi_eap_fast/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # WPA2 Enterprise Example This example shows how ESP32 connects to AP with Wi-Fi enterprise encryption using the EAP-FAST method. The example does the following steps: diff --git a/examples/wifi/wifi_easy_connect/dpp-enrollee/README.md b/examples/wifi/wifi_easy_connect/dpp-enrollee/README.md index 03ced1a144..89815d3bcf 100644 --- a/examples/wifi/wifi_easy_connect/dpp-enrollee/README.md +++ b/examples/wifi/wifi_easy_connect/dpp-enrollee/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Device Provisioning Protocol (Enrollee) Example This example shows how to configure ESP32 as an enrollee using Device Provisioning Protocol(DPP) also known as Wi-Fi Easy Connect. @@ -13,7 +16,7 @@ To run the example with an Android 10+ device follow below steps - 3. Now go to Settings->WiFi & Internet->Wi-Fi->Example-AP->Advanced->Add Device. 4. Scan QR Code using the scanner, which will make ESP32 connect to Example-AP. -Optional configuration available +Optional configuration available *Note:* - QR Code should be displayed as dark on a white/light background to work properly. diff --git a/examples/wifi/wifi_enterprise/README.md b/examples/wifi/wifi_enterprise/README.md index 9e83f3e2e9..0b207471e4 100644 --- a/examples/wifi/wifi_enterprise/README.md +++ b/examples/wifi/wifi_enterprise/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # WPA2 Enterprise Example This example shows how ESP32 connects to AP with Wi-Fi enterprise encryption. The example does the following steps: @@ -46,9 +49,9 @@ idf.py -p PORT flash monitor mkdir demoCA/private sh -c "echo '01' > ./demoCA/serial" touch ./demoCA/index.txt - touch xpextensions + touch xpextensions - add following lines in xpextensions file + add following lines in xpextensions file [ xpclient_ext ] extendedKeyUsage = 1.3.6.1.5.5.7.3.2 @@ -79,7 +82,7 @@ idf.py -p PORT flash monitor openssl pkcs12 -in client.p12 -out client.pem openssl pkcs12 -in server.p12 -out server.pem - + ### Example output diff --git a/examples/wifi/wps/README.md b/examples/wifi/wps/README.md index eb5b051cd8..2c9f63dbd5 100644 --- a/examples/wifi/wps/README.md +++ b/examples/wifi/wps/README.md @@ -1,3 +1,6 @@ +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + # Wi-Fi WPS Example (See the README.md file in the upper level 'examples' directory for more information about examples.) @@ -15,7 +18,7 @@ Before project configuration and build, be sure to set the correct chip target u ### Configure the project -Open the project configuration menu (`idf.py menuconfig`). +Open the project configuration menu (`idf.py menuconfig`). In the `Example Configuration` menu: diff --git a/examples/zigbee/esp_zigbee_gateway/README.md b/examples/zigbee/esp_zigbee_gateway/README.md index ae11dd1cdb..80c63ea7e0 100644 --- a/examples/zigbee/esp_zigbee_gateway/README.md +++ b/examples/zigbee/esp_zigbee_gateway/README.md @@ -1,4 +1,7 @@ -# Gateway Example +| Supported Targets | ESP32 | ESP32-S2 | ESP32-S3 | ESP32-C3 | +| ----------------- | ----- | -------- | -------- | -------- | + +# Gateway Example (See the `README.md` file in the upper level 'examples' directory for more information about examples.) @@ -36,20 +39,20 @@ Build the project, flash it to the board, and start the monitor tool to view the As you run the example, you will see the following log: -esp_zigbee_gateway: -I (660) ESP_ZB_GATEWAY: status: -1 -I (670) ESP_ZB_GATEWAY: Zigbee stack initialized -I (680) ESP_ZB_GATEWAY: Zigbee rcp device booted -I (1280) ESP_ZB_GATEWAY: Start network formation -I (3060) ESP_ZB_GATEWAY: Formed network successfully (ieee extended address: f9:54:2d:01:a0:03:f7:84, PAN ID: 0x8651) -I (4060) ESP_ZB_GATEWAY: status: 0 -I (4400) ESP_ZB_GATEWAY: Network steering started +esp_zigbee_gateway: +I (660) ESP_ZB_GATEWAY: status: -1 +I (670) ESP_ZB_GATEWAY: Zigbee stack initialized +I (680) ESP_ZB_GATEWAY: Zigbee rcp device booted +I (1280) ESP_ZB_GATEWAY: Start network formation +I (3060) ESP_ZB_GATEWAY: Formed network successfully (ieee extended address: f9:54:2d:01:a0:03:f7:84, PAN ID: 0x8651) +I (4060) ESP_ZB_GATEWAY: status: 0 +I (4400) ESP_ZB_GATEWAY: Network steering started ## Gateway Functions * After Zigbee gateway starts up, it will read MAC ieee address and Zigbee stack version number from the Zigbee rcp and start working together with Zigbee rcp via UART communication to form a Zigbee network * More Gateway functionalities supporting Wi-Fi interaction will come later - + ## Troubleshooting For any technical queries, please open an [issue](https://github.com/espressif/esp-idf/issues) on GitHub. We will get back to you soon