From 00cc8cf299d2ba7d78c5b10e6d1249f5891eb87d Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Thu, 4 Nov 2021 17:01:31 +0100 Subject: [PATCH 1/7] docs: Changes on the peripherals table now by ESP32 family --- docs/source/libraries.rst | 84 ++++++++++++++++++++------------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index 52b419c394c..f664bc1ff4a 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -7,47 +7,51 @@ Here is where the Libraries API's descriptions are located: Supported Peripherals --------------------- -Currently, the Arduino ESP32 supports the following peripherals with Arduino style. Some other peripherals are not supported yet, but it's supported using ESP-IDF style. +Currently, the Arduino ESP32 supports the following peripherals with Arduino APIs. -+-------------+-------------+---------+--------------------+ -| Peripheral | Arduino API | ESP-IDF | Comment | -+=============+=============+=========+====================+ -| ADC | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| DAC | No | No | | -+-------------+-------------+---------+--------------------+ -| GPIO | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| SDIO/SPI | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| I2C | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| I2S | No | Yes | In Development | -+-------------+-------------+---------+--------------------+ -| Wi-Fi | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| Bluetooth | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| RMT | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| Touch | Yes | Yes | ESP32 & ESP32-S2 | -+-------------+-------------+---------+--------------------+ -| Timer | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| UART | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| Hall Sensor | Yes | Yes | Only for ESP32 | -+-------------+-------------+---------+--------------------+ -| LEDC | Yes | Yes | | -+-------------+-------------+---------+--------------------+ -| Motor PWM | No | No | | -+-------------+-------------+---------+--------------------+ -| TWAI | No | No | | -+-------------+-------------+---------+--------------------+ -| Ethernet | Yes | Yes | Only for ESP32 | -+-------------+-------------+---------+--------------------+ -| USB | Yes | Yes | Only for ESP32-S2 | -+-------------+-------------+---------+--------------------+ ++---------------+---------------+---------------+---------------+-------------------+ +| Peripheral | ESP32 | ESP32-S2 | ESP32-C3 | Comments | ++===============+===============+===============+===============+===================+ +| ADC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Bluetooth | Yes | Not Supported | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| DAC | No | No | No | Planned | ++---------------+---------------+---------------+---------------+-------------------+ +| Ethernet | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------+ +| GPIO | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Hall Sensor | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------+ +| I2C | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| I2S | No | No | No | WIP | ++---------------+---------------+---------------+---------------+-------------------+ +| LEDC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Motor PWM | No | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------+ +| Pulse Counter | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| RMT | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| SDIO/SPI | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Timer | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Temp. Sensor | Not Supported | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| Touch | Yes | Yes | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------+ +| TWAI | No | No | No | | ++---------------+---------------+---------------+---------------+-------------------+ +| UART | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ +| USB | Not Supported | Yes | Yes | ESP32-C3 only CDC | ++---------------+---------------+---------------+---------------+-------------------+ +| Wi-Fi | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------+ Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding datasheet. From 4ac68dd36a5fb41af310b58c4bec0bf033e7e18b Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Fri, 5 Nov 2021 09:10:02 +0100 Subject: [PATCH 2/7] docs: Peripheral list updated --- docs/source/libraries.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index f664bc1ff4a..41c29a49d34 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -40,7 +40,7 @@ Currently, the Arduino ESP32 supports the following peripherals with Arduino API +---------------+---------------+---------------+---------------+-------------------+ | Timer | Yes | Yes | Yes | | +---------------+---------------+---------------+---------------+-------------------+ -| Temp. Sensor | Not Supported | Yes | Yes | | +| Temp. Sensor | Yes | Yes | Yes | | +---------------+---------------+---------------+---------------+-------------------+ | Touch | Yes | Yes | Not Supported | | +---------------+---------------+---------------+---------------+-------------------+ From 0bd40364fd2b2c623c0dc0c07684a60bdf67e75b Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Fri, 5 Nov 2021 09:36:49 +0100 Subject: [PATCH 3/7] docs: Fix on ESP-IDF as component --- docs/source/esp-idf_component.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/source/esp-idf_component.rst b/docs/source/esp-idf_component.rst index ba2ff67604d..d6f387375d5 100644 --- a/docs/source/esp-idf_component.rst +++ b/docs/source/esp-idf_component.rst @@ -10,8 +10,7 @@ For a simplified method, see `lib-builder `_. Installation ------------ -.. note:: -Latest Arduino Core ESP32 version is now compatible with [ESP-IDF v4.4](https://github.com/espressif/esp-idf/tree/release/v4.4). Please consider this compability when using Arduino as component in ESP-IDF. +.. note:: Latest Arduino Core ESP32 version is now compatible with [ESP-IDF v4.4](https://github.com/espressif/esp-idf/tree/release/v4.4). Please consider this compability when using Arduino as component in ESP-IDF. - Download and install `ESP-IDF `_. - Create blank idf project (from one of the examples). From 01dcc963901f459aa0cdfab693b472980a5ac7e0 Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Fri, 5 Nov 2021 13:44:25 +0100 Subject: [PATCH 4/7] docs: Added product selector link --- docs/source/libraries.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index 41c29a49d34..47348d2ad80 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -53,7 +53,7 @@ Currently, the Arduino ESP32 supports the following peripherals with Arduino API | Wi-Fi | Yes | Yes | Yes | | +---------------+---------------+---------------+---------------+-------------------+ -Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding datasheet. +Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at `Product Selector `_ page. APIs ---- From 13ba0f20a80d294086e84c74a1e2af1067669044 Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Fri, 5 Nov 2021 13:51:27 +0100 Subject: [PATCH 5/7] docs: Temp sensor removed from ESP32 support --- docs/source/libraries.rst | 86 +++++++++++++++++++-------------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index 47348d2ad80..aa45ccf9262 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -9,49 +9,49 @@ Supported Peripherals Currently, the Arduino ESP32 supports the following peripherals with Arduino APIs. -+---------------+---------------+---------------+---------------+-------------------+ -| Peripheral | ESP32 | ESP32-S2 | ESP32-C3 | Comments | -+===============+===============+===============+===============+===================+ -| ADC | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Bluetooth | Yes | Not Supported | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| DAC | No | No | No | Planned | -+---------------+---------------+---------------+---------------+-------------------+ -| Ethernet | Yes | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+-------------------+ -| GPIO | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Hall Sensor | Yes | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+-------------------+ -| I2C | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| I2S | No | No | No | WIP | -+---------------+---------------+---------------+---------------+-------------------+ -| LEDC | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Motor PWM | No | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+-------------------+ -| Pulse Counter | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| RMT | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| SDIO/SPI | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Timer | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Temp. Sensor | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| Touch | Yes | Yes | Not Supported | | -+---------------+---------------+---------------+---------------+-------------------+ -| TWAI | No | No | No | | -+---------------+---------------+---------------+---------------+-------------------+ -| UART | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ -| USB | Not Supported | Yes | Yes | ESP32-C3 only CDC | -+---------------+---------------+---------------+---------------+-------------------+ -| Wi-Fi | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+-------------------+ ++---------------+---------------+---------------+---------------+--------------------+ +| Peripheral | ESP32 | ESP32-S2 | ESP32-C3 | Comments | ++===============+===============+===============+===============+====================+ +| ADC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Bluetooth | Yes | Not Supported | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| DAC | No | No | No | Planned | ++---------------+---------------+---------------+---------------+--------------------+ +| Ethernet | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+--------------------+ +| GPIO | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Hall Sensor | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+--------------------+ +| I2C | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| I2S | No | No | No | WIP | ++---------------+---------------+---------------+---------------+--------------------+ +| LEDC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Motor PWM | No | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+--------------------+ +| Pulse Counter | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| RMT | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| SDIO/SPI | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Timer | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Temp. Sensor | Not Supported | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| Touch | Yes | Yes | Not Supported | | ++---------------+---------------+---------------+---------------+--------------------+ +| TWAI | No | No | No | | ++---------------+---------------+---------------+---------------+--------------------+ +| UART | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ +| USB | Not Supported | Yes | Yes | ESP32-C3 only CDC | ++---------------+---------------+---------------+---------------+--------------------+ +| Wi-Fi | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+--------------------+ Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at `Product Selector `_ page. From 20b29324e2daf392840c6c636c6f1a1cc743f0ee Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Mon, 8 Nov 2021 10:52:54 +0100 Subject: [PATCH 6/7] docs: Peripheral Table updated according to the review --- docs/source/libraries.rst | 96 +++++++++++++++++++++------------------ 1 file changed, 53 insertions(+), 43 deletions(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index aa45ccf9262..11190b03a10 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -9,52 +9,62 @@ Supported Peripherals Currently, the Arduino ESP32 supports the following peripherals with Arduino APIs. -+---------------+---------------+---------------+---------------+--------------------+ -| Peripheral | ESP32 | ESP32-S2 | ESP32-C3 | Comments | -+===============+===============+===============+===============+====================+ -| ADC | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Bluetooth | Yes | Not Supported | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| DAC | No | No | No | Planned | -+---------------+---------------+---------------+---------------+--------------------+ -| Ethernet | Yes | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+--------------------+ -| GPIO | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Hall Sensor | Yes | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+--------------------+ -| I2C | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| I2S | No | No | No | WIP | -+---------------+---------------+---------------+---------------+--------------------+ -| LEDC | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Motor PWM | No | Not Supported | Not Supported | | -+---------------+---------------+---------------+---------------+--------------------+ -| Pulse Counter | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| RMT | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| SDIO/SPI | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Timer | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Temp. Sensor | Not Supported | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| Touch | Yes | Yes | Not Supported | | -+---------------+---------------+---------------+---------------+--------------------+ -| TWAI | No | No | No | | -+---------------+---------------+---------------+---------------+--------------------+ -| UART | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ -| USB | Not Supported | Yes | Yes | ESP32-C3 only CDC | -+---------------+---------------+---------------+---------------+--------------------+ -| Wi-Fi | Yes | Yes | Yes | | -+---------------+---------------+---------------+---------------+--------------------+ ++---------------+---------------+---------------+---------------+-------------------------------+ +| Peripheral | ESP32 | ESP32-S2 | ESP32-C3 | Comments | ++===============+===============+===============+===============+===============================+ +| ADC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Bluetooth | Yes | Not Supported | Not Supported | Bluetooth Classic | ++---------------+---------------+---------------+---------------+-------------------------------+ +| BLE | Yes | Not Supported | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| DAC | Yes | Yes | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Ethernet | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| GPIO | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Hall Sensor | Yes | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| I2C | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| I2S | No | No | No | WIP | ++---------------+---------------+---------------+---------------+-------------------------------+ +| LEDC | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Motor PWM | No | Not Supported | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Pulse Counter | No | No | No | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| RMT | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| SDIO | No | No | No | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| SPI | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Timer | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Temp. Sensor | Not Supported | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Touch | Yes | Yes | Not Supported | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| TWAI | No | No | No | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| UART | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ +| USB | Not Supported | Yes | Yes | ESP32-C3 only CDC/JTAG | ++---------------+---------------+---------------+---------------+-------------------------------+ +| Wi-Fi | Yes | Yes | Yes | | ++---------------+---------------+---------------+---------------+-------------------------------+ Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at `Product Selector `_ page. +Datasheets: + +* `ESP32 `_ +* `ESP32-S2 `_ +* `ESP32-C3 `_ + APIs ---- From 6d9a2fe151b442f2cf08866221a1e789dc3ef43d Mon Sep 17 00:00:00 2001 From: "pedro.minatel" Date: Mon, 8 Nov 2021 11:23:34 +0100 Subject: [PATCH 7/7] docs: Added Ethernet notes for RMII and SPI support --- docs/source/libraries.rst | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/source/libraries.rst b/docs/source/libraries.rst index 11190b03a10..6275e603f2a 100644 --- a/docs/source/libraries.rst +++ b/docs/source/libraries.rst @@ -20,7 +20,7 @@ Currently, the Arduino ESP32 supports the following peripherals with Arduino API +---------------+---------------+---------------+---------------+-------------------------------+ | DAC | Yes | Yes | Not Supported | | +---------------+---------------+---------------+---------------+-------------------------------+ -| Ethernet | Yes | Not Supported | Not Supported | | +| Ethernet | Yes | Not Supported | Not Supported | (*) | +---------------+---------------+---------------+---------------+-------------------------------+ | GPIO | Yes | Yes | Yes | | +---------------+---------------+---------------+---------------+-------------------------------+ @@ -57,9 +57,15 @@ Currently, the Arduino ESP32 supports the following peripherals with Arduino API | Wi-Fi | Yes | Yes | Yes | | +---------------+---------------+---------------+---------------+-------------------------------+ -Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at `Product Selector `_ page. +Notes +^^^^^ -Datasheets: +(*) SPI Ethernet is supported by all ESP32 families and RMII only for ESP32. + +.. note:: Some peripherals are not available for all ESP32 families. To see more details about it, see the corresponding SoC at `Product Selector `_ page. + +Datasheet +^^^^^^^^^ * `ESP32 `_ * `ESP32-S2 `_