1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00

boards/esp32: reformat docs for 80 chars

This commit is contained in:
Gunar Schorcht 2021-10-13 17:11:49 +02:00
parent 4c03e9c113
commit de78a827c3
8 changed files with 241 additions and 97 deletions

View File

@ -78,8 +78,11 @@ UART_DEV(0):RxD | GPIO3 | Console (configuration is fixed) | \ref esp32_uart_in
</center>
\n
@note
- GPIO4 only works properly on the board if the function switch for GPIO4 (DIP SW 5) is OFF.
- SPI_DEV(0) is not available if module `esp_jtag` is used. For the SPI_DEV(0) pins to work properly, the function switches (DIP switches) for the JTAG signals must be set to OFF.
- GPIO4 only works properly on the board if the function switch
for GPIO4 (DIP SW 5) is OFF.
- SPI_DEV(0) is not available if module `esp_jtag` is used. For the
SPI_DEV(0) pins to work properly, the function switches (DIP switches)
for the JTAG signals must be set to OFF.
[Back to table of contents](#esp32_ethernet_kit_v1_0_toc)
@ -87,8 +90,9 @@ UART_DEV(0):RxD | GPIO3 | Console (configuration is fixed) | \ref esp32_uart_in
The board schematic can be found [here](https://dl.espressif.com/dl/schematics/SCH_ESP32-ETHERNET-KIT_A_V1.0_20190517.pdf).
By default, only 3 bidirectional GPIO pins are unused: GPIO4, GPIO32, GPIO33. The suggested configuration is for PWM
and I2C, but they can also be used for SPI or another serial port. By disabling the JTAG interface on the board,
By default, only 3 bidirectional GPIO pins are unused: GPIO4, GPIO32, GPIO33.
The suggested configuration is for PWM and I2C, but they can also be used
for SPI or another serial port. By disabling the JTAG interface on the board,
another 4 GPIOs can be made available (GPIO12, GPIO13, GPIO14, GPIO15).
[Back to table of contents](#esp32_ethernet_kit_v1_0_toc)

View File

@ -22,7 +22,8 @@
2. [Board Configuration](#esp32_heltec_lora32_v2_board_configuration)
3. [Board Pinout](#esp32_heltec_lora32_v2_pinout)
4. [Using the OLED Display](#esp32_heltec_lora32_v2_oled_display)
5. [Optional Hardware Configurations](#esp32_heltec_lora32_v2_optional_hardware)
5. [Optional Hardware Configurations]
(#esp32_heltec_lora32_v2_optional_hardware)
3. [Flashing the Device](#esp32_heltec_lora32_v2_flashing)
## Overview {#esp32_heltec_lora32_v2_overview}
@ -75,7 +76,8 @@ There are two hardware versions of the board:
Since many GPIOs are broken out, they can be used for different purposes
in different applications. For flexibility, some GPIOs might be listed in
various peripheral configurations. For example, GPIO0 is used in the ADC
channel definition \ref ADC_GPIOS and the PWM channel definition \ref PWM0_GPIOS.
channel definition \ref ADC_GPIOS and the PWM channel definition
\ref PWM0_GPIOS.
This is possible because GPIOs are only used for a specific peripheral
interface when
@ -95,7 +97,8 @@ unless you exactly know what you are doing.
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by \ref esp32_application_specific_configurations "application-specific configurations".
overridden by \ref esp32_application_specific_configurations
"application-specific configurations".
<center>
Function | GPIOs | Remarks |Configuration
@ -176,9 +179,8 @@ BOARD=esp32-heltec-lora32-v2 make -C tests/pkg_u8g2/ flash
MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet
network interface modules have been tested with the board. You could use
the following code in your
\ref esp32_application_specific_configurations "application-specific configuration"
to use such modules:
the following code in your \ref esp32_application_specific_configurations
"application-specific configuration" to use such modules:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#ifdef BOARD_ESP32_HELTEC_LORA32_V2
@ -215,9 +217,10 @@ purpose. However, if optional off-board hardware modules are used,
these GPIOs may also be occupied,
see section \ref esp32_heltec_lora32_v2_board_configuration for more information.
The corresponding board schematics can be found
[here for SX1276 version](https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF) and
[here for SX1278 version](https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WiFi_LoRa_32_V2(433%2C470-510).PDF).
The corresponding board schematics can be found [here for SX1276 version]
(https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF)
and [here for SX1278 version]
(https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WiFi_LoRa_32_V2(433%2C470-510).PDF).
\anchor esp32_heltec_lora_32_v2_pinout_img
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/Heltec_WiFi_LoRa_32_V2_pinout.png" "WiFi LoRa 32 V2 Pintout Diagram"
@ -226,11 +229,14 @@ The corresponding board schematics can be found
## Flashing the Device {#esp32_heltec_lora32_v2_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with reset/boot/flash logic. Just connect the board to your host computer and type using the programming port:
Flashing RIOT is quite easy. The board has a Micro-USB connector with
reset/boot/flash logic. Just connect the board to your host computer and
type using the programming port:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-heltec-lora32-v2 ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling RIOT
for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_heltec_lora32_v2_toc)
*/

View File

@ -21,7 +21,8 @@
1. [MCU](#esp32_mh_et_live_minikit_mcu)
2. [Board Configuration](#esp32_mh_et_live_minikit_board_configuration)
3. [Board Pinout](#esp32_mh_et_live_minikit_pinout)
4. [Optional Hardware Configurations](#esp32_mh_et_live_minikit_optional_hardware)
4. [Optional Hardware Configurations]
(#esp32_mh_et_live_minikit_optional_hardware)
3. [Flashing the Device](#esp32_mh_et_live_minikit_flashing)
## Overview {#esp32_mh_et_live_minikit_overview}
@ -38,9 +39,11 @@ can also be used with ESP32. Examples for such shields are:
- RGB LED Shield
- ...
This makes it possible to create different hardware configurations without the need for a soldering iron or a breadboard.
This makes it possible to create different hardware configurations without
the need for a soldering iron or a breadboard.
MH-ET LIVE MiniKit for ESP32 belongs to the class of general purpose boards where most ESP32 pins are broken out for easier access.
MH-ET LIVE MiniKit for ESP32 belongs to the class of general purpose boards
where most ESP32 pins are broken out for easier access.
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/MH-ET_LIVE_D1_mini_ESP32_2.png" "MH-ET LIVE MiniKit for ESP32" width=250px
@ -50,7 +53,8 @@ This stackable platform was tested in an RIOT application with:
- MRF24J40 IEEE 802.15.4 radio Shield (contact gunar@schorcht.net for more information)
- BMP180 Pressure Sensor Shield
This application is a good example how easy it is with this board to create different hardware applications.
This application is a good example how easy it is with this board to create
different hardware applications.
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/MH-ET_LIVE_D1_mini_ESP32_5.png" "RIOT application with SD-Card, MRF24J40 Radio, and BMP180 Pressure Sensor"
@ -76,7 +80,10 @@ information about the ESP32, see section \ref esp32_mcu_esp32 "MCU ESP32".
### Board Configuration {#esp32_mh_et_live_minikit_board_configuration}
The following table shows the default board configuration, which is sorted according to the defined functionality of GPIOs. This configuration can be overridden by an \ref esp32_application_specific_configurations "application-specific configuration".
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by an \ref esp32_application_specific_configurations
"application-specific configuration".
<center>
Pin | Default Configuration* | Optional Modules | Remarks / Prerequisites | Configuration
@ -111,19 +118,27 @@ GPIO32 | - | | | |
GPIO33 | - | | | |
</center>
\b * Default configuration cannot be used or is not available at all when optional hardware is used.
\b * Default configuration cannot be used or is not available at all when
optional hardware is used.
@note
- GPIO9 and GIOP10 can only be used in **dout** and **dio** \ref esp32_flash_modes "flash modes".
- The **RESET** signal of MRF24J40 shield can be connected to the RST **pin** of the board (see \ref esp32_mh_et_live_minikit_pinout_img "pinout") to keep the configured GPIO free for other purposes.
- GPIO9 and GIOP10 can only be used in **dout** and **dio**
\ref esp32_flash_modes "flash modes".
- The **RESET** signal of MRF24J40 shield can be connected to the RST **pin**
of the board (see \ref esp32_mh_et_live_minikit_pinout_img "pinout") to
keep the configured GPIO free for other purposes.
For detailed information about the configuration of ESP32 boards, see section \ref esp32_peripherals "Common Peripherals".
For detailed information about the configuration of ESP32 boards, see
section \ref esp32_peripherals "Common Peripherals".
[Back to table of contents](#esp32_mh_et_live_minikit_toc)
### Optional Hardware Configurations {#esp32_mh_et_live_minikit_optional_hardware}
ENC28J60-based Ethernet network interface modules have been tested with the board. You could use the following code in your \ref esp32_application_specific_configurations "application-specific configuration" to use such a module:
ENC28J60-based Ethernet network interface modules have been tested with the
board. You could use the following code in your
\ref esp32_application_specific_configurations
"application-specific configuration" to use such a module:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#if MODULE_ENC28J80 && BOARD_ESP32_MH_ET_LIVE_MINIKIT
@ -132,17 +147,26 @@ ENC28J60-based Ethernet network interface modules have been tested with the boar
#define ENC28J80_PARAM_RESET GPIO12 /* ENC28J80 RESET signal */
#endif
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For **ENC28J80_PARAM_SPI** the default parameter defined by the driver can be used.
For **ENC28J80_PARAM_SPI** the default parameter defined by the driver can
be used.
@note The **RESET** signal of ENC28J60 based modules can also be connected to the **RST** pin of the board (see \ref esp32_mh_et_live_minikit_pinout_img "pinout") to keep the configured GPIO free for other purposes.
@note The **RESET** signal of ENC28J60 based modules can also be connected
to the **RST** pin of the board (see \ref esp32_mh_et_live_minikit_pinout_img
"pinout") to keep the configured GPIO free for other purposes.
[Back to table of contents](#esp32_mh_et_live_minikit_toc)
### Board Pinout {#esp32_mh_et_live_minikit_pinout}
The following picture shows the pinout of MH-ET LIVE MiniKit for ESP32 board as defined by the default board configuration. The light green GPIOs are not used by configured on-board hardware components and can be used for any purpose. However, if optional off-board hardware modules are used, these GPIOs may also be occupied, see section \ref esp32_mh_et_live_minikit_board_configuration for more information.
The following picture shows the pinout of MH-ET LIVE MiniKit for ESP32 board
as defined by the default board configuration. The light green GPIOs are not
used by configured on-board hardware components and can be used for any
purpose. However, if optional off-board hardware modules are used, these
GPIOs may also be occupied, see section
\ref esp32_mh_et_live_minikit_board_configuration for more information.
The corresponding board schematic can be found [here](https://i.imgur.com/EpE4dGj.jpg)
The corresponding board schematic can be found
[here](https://i.imgur.com/EpE4dGj.jpg)
\anchor esp32_mh_et_live_minikit_pinout_img
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/MH-ET_LIVE_D1_mini_ESP32_pinout.png" "MH-ET LIVE MiniKit for ESP32 pinout"
@ -151,11 +175,14 @@ The corresponding board schematic can be found [here](https://i.imgur.com/EpE4dG
## Flashing the Device {#esp32_mh_et_live_minikit_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with a reset/boot/flash logic. Just connect the board to your host computer using the programming port and type:
Flashing RIOT is quite easy. The board has a Micro-USB connector with a
reset/boot/flash logic. Just connect the board to your host computer using
the programming port and type:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-mh-et-live-minikit ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling
RIOT for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_mh_et_live_minikit_toc)
*/

View File

@ -26,18 +26,25 @@
## Overview {#esp32_olimex_esp32_evb_overview}
[Olimex ESP32-EVB](https://github.com/OLIMEX/ESP32-EVB) and [Olimex ESP32-GATEWAY](https://github.com/OLIMEX/ESP32-GATEWAY) are open source hardware boards which use the ESP32-WROOM module. The key features of the boards are:
[Olimex ESP32-EVB](https://github.com/OLIMEX/ESP32-EVB) and
[Olimex ESP32-GATEWAY](https://github.com/OLIMEX/ESP32-GATEWAY) are
open source hardware boards which use the ESP32-WROOM module. The key
features of the boards are:
- Ethernet LAN interface
- MicroSD card interface
- IR interface (Olimex ESP32-EVB only)
- CAN interface (Olimex ESP32-EVB only)
- two Relais (Olimex ESP32-EVB only)
- [UEXT](https://www.olimex.com/Products/Modules/UEXT/) connector with I2C, SPI and UART interfaces (Olimex ESP32-EVB only)
- [UEXT](https://www.olimex.com/Products/Modules/UEXT/) connector with
I2C, SPI and UART interfaces (Olimex ESP32-EVB only)
Using the UEXT connector, a lot of [off-board hardware modules](https://www.olimex.com/Products/Modules/) can be connected to Olimex ESP32-EVB to extend the hardware without the need for soldering iron or breadboards.
Using the UEXT connector, a lot of [off-board hardware modules](https://www.olimex.com/Products/Modules/) can be connected to Olimex ESP32-EVB to extend the hardware without the need
for soldering iron or breadboards.
Because of the differences in the on-board hardware, it is necessary to add the following line to the makefile of the application to use the according configuration for Olimex ESP32-GATEWAY:
Because of the differences in the on-board hardware, it is necessary to
add the following line to the makefile of the application to use the
according configuration for Olimex ESP32-GATEWAY:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
USEMODULE += olimex_esp32_gateway
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -66,16 +73,21 @@ information about the ESP32, see section \ref esp32_mcu_esp32 "MCU ESP32".
### Board Configuration {#esp32_olimex_esp32_evb_board_configuration}
Olimex ESP32-EVB and Olimex ESP32-GATEWAY have the following on-board components:
Olimex ESP32-EVB and Olimex ESP32-GATEWAY have the following on-board
components:
- Ethernet LAN interface
- MicroSD card interface
- IR interface (Olimex ESP32-EVB only)
- CAN interface (Olimex ESP32-EVB only)
- two Relais (Olimex ESP32-EVB only)
- [UEXT](https://www.olimex.com/Products/Modules/UEXT/) connector with I2C, SPI and UART interfaces (Olimex ESP32-EVB only)
- [UEXT](https://www.olimex.com/Products/Modules/UEXT/) connector with
I2C, SPI and UART interfaces (Olimex ESP32-EVB only)
The following table shows the default board configuration, which is sorted according to the defined functionality of GPIOs. This configuration can be overridden by \ref esp32_application_specific_configurations "application-specific configurations".
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by \ref esp32_application_specific_configurations
"application-specific configurations".
<center>
Pin | Configuration\n ESP32-EVB | Configuration\n ESP32-GATEWAY | Remarks / Prerequisites | Configuration
@ -112,21 +124,30 @@ GPIO27 | EMAC_RMII:RX_DV | EMAC_RMII:RX_DV | LAN interface | \ref esp32_ether
\n
@note
- To use the board configuration for Olimex-ESP32-GATEWAY, it is necessary to add the following line to makefile of the application:
To use the board configuration for Olimex-ESP32-GATEWAY, it is necessary
to add the following line to makefile of the application:
\n
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
USEMODULE += olimex_esp32_gateway
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- GPIO9 and GIOP10 can only be used in **dout** and **dio** \ref esp32_flash_modes "flash modes".
- It might be necessary to remove the SD card or the peripheral hardware attached to the SPI_DEV(0) interface for flashing RIOT. Reason is that the **SPI_DEV(0)** interface uses the HSPI interface with the GPIO2 pin as the MISO signal, which has bootstrapping functionality.
- GPIO9 and GIOP10 can only be used in **dout** and **dio**
\ref esp32_flash_modes "flash modes".
- It might be necessary to remove the SD card or the peripheral hardware
attached to the SPI_DEV(0) interface for flashing RIOT. Reason is that
the **SPI_DEV(0)** interface uses the HSPI interface with the GPIO2 pin
as the MISO signal, which has bootstrapping functionality.
For detailed information about the configuration of ESP32 boards, see section \ref esp32_peripherals "Common Peripherals".
For detailed information about the configuration of ESP32 boards, see
section \ref esp32_peripherals "Common Peripherals".
[Back to table of contents](#esp32_olimex_esp32_evb_toc)
### Optional Hardware Configurations {#esp32_olimex_esp32_evb_optional_hardware}
MRF24J40-based IEEE 802.15.4 radio modules have been tested with the board. You could use the following code in your \ref esp32_application_specific_configurations "application-specific configuration" to use such modules:
MRF24J40-based IEEE 802.15.4 radio modules have been tested with the board.
You could use the following code in your
\ref esp32_application_specific_configurations
"application-specific configuration" to use such modules:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#ifdef BOARD_ESP32_OLIMEX_EVB && !MODULE_ESP32_OLIMEX_GATEWAY
@ -142,17 +163,29 @@ MRF24J40-based IEEE 802.15.4 radio modules have been tested with the board. You
For other parameters, the default values defined by the drivers can be used.
@note
- Since the Olimex-ESP32-GATEWAY does not break out the GPIO of the HSPI interface SPI_DEV(0), it is not possible to connect such module to Olimex-ESP32-GATEWAY.
- Since the Olimex-ESP32-EVB has a lot of on-board hardware, only a few GPIOs are available for external hardware.
- The **RESET** signal of MRF24J40 based modules can also be connected to the **RST** pin of the board (see \ref esp32_olimex_esp32_evb_pinout_img "pinout") to keep the configured GPIO free for other purposes.
- Since the Olimex-ESP32-GATEWAY does not break out the GPIO of the HSPI
interface SPI_DEV(0), it is not possible to connect such module to
Olimex-ESP32-GATEWAY.
- Since the Olimex-ESP32-EVB has a lot of on-board hardware, only a few
GPIOs are available for external hardware.
- The **RESET** signal of MRF24J40 based modules can also be connected
to the **RST** pin of the board (see \ref esp32_olimex_esp32_evb_pinout_img
"pinout") to keep the configured GPIO free for other purposes.
[Back to table of contents](#esp32_olimex_esp32_evb_toc)
### Board Pinout {#esp32_olimex_esp32_evb_pinout}
The following pictures shows the pinout of Olimex ESP32-EVB and Olimex ESP32-GATEWAY boards as defined by the default board configuration. The light green GPIOs are not used by configured on-board hardware components and can be used for any purpose. However, if optional off-board hardware modules are used, these GPIOs may also be occupied, see section \ref esp32_olimex_esp32_evb_board_configuration for more information.
The following pictures shows the pinout of Olimex ESP32-EVB and
Olimex ESP32-GATEWAY boards as defined by the default board configuration.
The light green GPIOs are not used by configured on-board hardware components
and can be used for any purpose. However, if optional off-board hardware
modules are used, these GPIOs may also be occupied, see section
\ref esp32_olimex_esp32_evb_board_configuration for more information.
The corresponding board schematics can be found on GitHub for [Olimex ESP32-EVB board](https://github.com/OLIMEX/ESP32-EVB/raw/master/HARDWARE/REV-D/ESP32-EVB_Rev_D.pdf) and for [Olimex ESP32-GATEWAY](https://github.com/OLIMEX/ESP32-GATEWAY/raw/master/HARDWARE/Hardware%20revision%20C/ESP32-GATEWAY_Rev_C.pdf).
The corresponding board schematics can be found on GitHub for
[Olimex ESP32-EVB board](https://github.com/OLIMEX/ESP32-EVB/raw/master/HARDWARE/REV-D/ESP32-EVB_Rev_D.pdf) and for
[Olimex ESP32-GATEWAY](https://github.com/OLIMEX/ESP32-GATEWAY/raw/master/HARDWARE/Hardware%20revision%20C/ESP32-GATEWAY_Rev_C.pdf).
\anchor esp32_olimex_esp32_evb_pinout_img
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/Olimex_ESP32-EVB_pinout.png" "Olimex ESP32-EVB pinout"
@ -162,11 +195,14 @@ The corresponding board schematics can be found on GitHub for [Olimex ESP32-EVB
## Flashing the Device {#esp32_olimex_esp32_evb_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with reset/boot/flash logic. Just connect the board to your host computer and type using the programming port:
Flashing RIOT is quite easy. The board has a Micro-USB connector with
reset/boot/flash logic. Just connect the board to your host computer and
type using the programming port:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-olimex-evb ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling
RIOT for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_olimex_esp32_evb_toc)
*/

View File

@ -76,7 +76,8 @@ There are two hardware versions of the board:
Since many GPIOs are broken out, they can be used for different purposes
in different applications. For flexibility, some GPIOs might be listed in
various peripheral configurations. For example, GPIO0 is used in the ADC
channel definition \ref ADC_GPIOS and the PWM channel definition \ref PWM0_GPIOS.
channel definition \ref ADC_GPIOS and the PWM channel definition
\ref PWM0_GPIOS.
This is possible because GPIOs are only used for a specific peripheral
interface when
@ -96,7 +97,8 @@ unless you exactly know what you are doing.
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by \ref esp32_application_specific_configurations "application-specific configurations".
overridden by \ref esp32_application_specific_configurations
"application-specific configurations".
TTGO- T-Beam rev1
@ -153,24 +155,30 @@ section \ref esp32_peripherals "Common Peripherals".
### Board Pinout {#esp32_ttgo_t_beam_pinout}
The following figures show the pinout of the defined default configurations for TTGO T-Beam boards.
The following figures show the pinout of the defined default configurations
for TTGO T-Beam boards.
@image html "https://ae01.alicdn.com/kf/HTB1OhPmXtzvK1RkSnfoq6zMwVXah.jpg" "TTGO T-Beam rev1 Pintout Diagram"
@image html "https://ae01.alicdn.com/kf/Hee7e9a85bb294351952a073325e6b2f96.jpg" "TTGO T-Beam V1.0 Pintout Diagram"
The corresponding board schematics can be found on TinyMicros.com for [TTGO T-Beam rev0](http://tinymicros.com/mediawiki/images/b/b9/TTGO_T-Beam_Schematic.pdf) and GitHub for [TTGO T-Beam V1.0](https://github.com/Xinyuan-LilyGO/LilyGo-LoRa-Series/blob/master/schematic/LilyGo_TBeam_V1.0.pdf)
The corresponding board schematics can be found on TinyMicros.com for
[TTGO T-Beam rev0](http://tinymicros.com/mediawiki/images/b/b9/TTGO_T-Beam_Schematic.pdf)
and GitHub for
[TTGO T-Beam V1.0](https://github.com/Xinyuan-LilyGO/LilyGo-LoRa-Series/blob/master/schematic/LilyGo_TBeam_V1.0.pdf)
[Back to table of contents](#esp32_ttgo_t_beam_toc)
## Flashing the Device {#esp32_ttgo_t_beam_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with reset/boot/flash logic. Just connect the board to your host computer and type using the programming port:
Flashing RIOT is quite easy. The board has a Micro-USB connector with
reset/boot/flash logic. Just connect the board to your host computer and type
using the programming port:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-ttgo-t-beam ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling
RIOT for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_ttgo_t_beam_toc)
*/

View File

@ -21,18 +21,21 @@
1. [MCU](#esp32_wemos_lolin_d32_pro_mcu)
2. [Board Configuration](#esp32_wemos_lolin_d32_pro_board_configuration)
3. [Board Pinout](#esp32_wemos_lolin_d32_pro_pinout)
4. [Optional Hardware Configurations](#esp32_wemos_lolin_d32_pro_optional_hardware)
4. [Optional Hardware Configurations]
(#esp32_wemos_lolin_d32_pro_optional_hardware)
3. [Flashing the Device](#esp32_wemos_lolin_d32_pro_flashing)
## Overview {#esp32_wemos_lolin_d32_pro_overview}
Wemos LOLIN D32 Pro is a development board that uses the ESP32-WROVER module which has a built-in 4 MByte SPI RAM. Most important features of the board are
Wemos LOLIN D32 Pro is a development board that uses the ESP32-WROVER module
which has a built-in 4 MByte SPI RAM. Most important features of the board are
- Micro-SD card interface
- TFT display interface
- SPI RAM 4 MByte
Wemos LOLIN D32 Pro belongs to the class of general purpose boards where most ESP32 pins are broken out for easier access.
Wemos LOLIN D32 Pro belongs to the class of general purpose boards where most
ESP32 pins are broken out for easier access.
@image html
"https://docs.wemos.cc/en/latest/_static/boards/d32_pro_v2.0.0_1_16x16.jpg" "Wemos LOLIN D32 PRO" width=400px
@ -65,7 +68,10 @@ The board for the Wemos LOLIN D32 Pro has the following on-board components:
- 1 x Micro SD card interface
- 1 x TFT display connector
The following table shows the default board configuration, which is sorted according to the defined functionality of GPIOs. This configuration can be overridden by an \ref esp32_application_specific_configurations "application-specific configuration".
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by an \ref esp32_application_specific_configurations
"application-specific configuration".
<center>
Pin | Default Configuration* | Optional Configuration | Remarks / Prerequisites | Configuration
@ -96,9 +102,13 @@ GPIO14 | - | TFT_CS | when TFT is connected | |
GPIO27 | - | TFT_DC | when TFT is connected | |
</center>
\b * Default configuration cannot be used or is not available at all when optional configuration is used. For example, when the TFT is connected, GPIO32 is used as **TFT_LED** signal and ADC_LINE(4) is not available.
\b * Default configuration cannot be used or is not available at all when
optional configuration is used. For example, when the TFT is connected,
GPIO32 is used as **TFT_LED** signal and ADC_LINE(4) is not available.
@note When the TFT display is connected, add the following line to the makefile of the application to enable the according default board and peripheral configuration:
@note When the TFT display is connected, add the following line to the
makefile of the application to enable the according default board and
peripheral configuration:
\n
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
USEMODULE += esp_lolin_tft
@ -110,7 +120,10 @@ For detailed information about the configuration of ESP32 boards, see section \r
### Optional Hardware Configurations {#esp32_wemos_lolin_d32_pro_optional_hardware}
MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet network interface modules have been tested with the board. You could use the following code in your \ref esp32_application_specific_configurations "application-specific configuration" to use such modules:
MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet
network interface modules have been tested with the board. You could use
the following code in your \ref esp32_application_specific_configurations
"application-specific configuration" to use such modules:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#ifdef BOARD_ESP32_WEMOS_LOLIN_D32_PRO
@ -132,14 +145,24 @@ MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet network i
For other parameters, the default values defined by the drivers can be used.
@note
- Only a few GPIOs are available for external hardware on the Wemos LOLIN D32 PRO. Therefore, MRF24J40 and ENC28J60 based modules use the same GPIOs and only one of these modules can be used simultaneously.
- The **RESET** signal of MRF24J40 and ENC28J60 based modules can also be connected to the **RST** pin of the board (see \ref esp32_wemos_lolin_d32_pro_pinout_img "pinout") to keep the configured GPIO free for other purposes.
- Only a few GPIOs are available for external hardware on the
Wemos LOLIN D32 PRO. Therefore, MRF24J40 and ENC28J60 based modules use
the same GPIOs and only one of these modules can be used simultaneously.
- The **RESET** signal of MRF24J40 and ENC28J60 based modules can also be
connected to the **RST** pin of the board (see
\ref esp32_wemos_lolin_d32_pro_pinout_img "pinout") to keep the configured
GPIO free for other purposes.
[Back to table of contents](#esp32_wemos_lolin_d32_pro_toc)
### Board Pinout {#esp32_wemos_lolin_d32_pro_pinout}
The following picture shows the pinout of WEMOS LOLIN D32 PRO board as defined by the default board configuration. The light green GPIOs are not used by configured on-board hardware components and can be used for any purpose. However, if optional off-board hardware modules are used, these GPIOs may also be occupied, see section \ref esp32_wemos_lolin_d32_pro_board_configuration for more information.
The following picture shows the pinout of WEMOS LOLIN D32 PRO board as
defined by the default board configuration. The light green GPIOs are
not used by configured on-board hardware components and can be used for
any purpose. However, if optional off-board hardware modules are used,
these GPIOs may also be occupied, see section
\ref esp32_wemos_lolin_d32_pro_board_configuration for more information.
The corresponding board schematic can be found [here]
(https://docs.wemos.cc/en/latest/_static/files/sch_d32_pro_v2.0.0.pdf).
@ -151,11 +174,14 @@ The corresponding board schematic can be found [here]
## Flashing the Device {#esp32_wemos_lolin_d32_pro_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with reset/boot/flash logic. Just connect the board to your host computer using the programming port and type:
Flashing RIOT is quite easy. The board has a Micro-USB connector with
reset/boot/flash logic. Just connect the board to your host computer
using the programming port and type:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-wemos-lolin-d32-pro ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling
RIOT for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_wemos_lolin_d32_pro_toc)
*/

View File

@ -26,7 +26,11 @@
## Overview {#esp32_wroom_32_overview}
This board definition covers not just a single board, but rather a large set of generic boards that use an ESP32-WROOM-32 module and simply break out all GPIOs to external pads without having any special hardware or interfaces on-board. Examples are Espressif's ESP32-DevKitC or NodeMCU-ESP32S and a large number of clones.
This board definition covers not just a single board, but rather a large set
of generic boards that use an ESP32-WROOM-32 module and simply break out all
GPIOs to external pads without having any special hardware or interfaces
on-board. Examples are Espressif's ESP32-DevKitC or NodeMCU-ESP32S and a
large number of clones.
\image html "https://dl.espressif.com/dl/schematics/pictures/esp32-devkitc-v4-front.jpg" "Espressif ESP32-DevKitC V4" width=400px
@ -52,7 +56,9 @@ information about the ESP32, see section \ref esp32_mcu_esp32 "MCU ESP32".
### Board Configuration {#esp32_wroom_32_board_configuration}
Generic ESP32-WROOM-32 boards do not have special hardware on board and all GPIOs are simply broken out for flexibility. Therefore, the board configuration is the most flexible one with provides:
Generic ESP32-WROOM-32 boards do not have special hardware on board and all
GPIOs are simply broken out for flexibility. Therefore, the board
configuration is the most flexible one with provides:
18 x ADC channels at maximum
2 x DAC channels at maximum
@ -60,19 +66,30 @@ Generic ESP32-WROOM-32 boards do not have special hardware on board and all GPIO
1 x I2C at maximum
2 x UART
Since all GPIOs have broken out, GPIOs can be used for different purposes in different applications. For flexibility, GPIOs can be listed in various peripheral configurations. For example, GPIO13 is used in the ADC channel definition and the definition of the MOSI signal of SPI_DEV(0).
Since all GPIOs have broken out, GPIOs can be used for different purposes
in different applications. For flexibility, GPIOs can be listed in various
peripheral configurations. For example, GPIO13 is used in the ADC channel
definition and the definition of the MOSI signal of SPI_DEV(0).
This is possible because GPIOs are only used for a specific peripheral interface when
This is possible because GPIOs are only used for a specific peripheral
interface when
- the corresponding peripheral module is used, eg. periph_i2c, or
- a corresponding init function is called z. adc_init, dac_init and pwm_init or
- The corresponding peripheral interface is used for the first time, eg. spi_aqcuire.
- the corresponding peripheral module is used, e.g. `periph_i2c`, or
- a corresponding init function is called z. `adc_init`, `dac_init` and
`pwm_init` or
- The corresponding peripheral interface is used for the first time,
e.g. `spi_aqcuire.
That is, the purpose for which a GPIO is used depends on which module or function is used first.
That is, the purpose for which a GPIO is used depends on which module
or function is used first.
For example, if module periph_i2c is not used, the GPIOs listed in I2C configuration can be used for the other purposes.
For example, if module periph_i2c is not used, the GPIOs listed in I2C
configuration can be used for the other purposes.
The following table shows the default board configuration, which is sorted according to the defined functionality of GPIOs. This configuration can be overridden by \ref esp32_application_specific_configurations "application-specific configurations".
The following table shows the default board configuration, which is sorted
according to the defined functionality of GPIOs. This configuration can be
overridden by \ref esp32_application_specific_configurations
"application-specific configurations".
<center>
Function | GPIOs | Remarks |Configuration
@ -99,17 +116,24 @@ UART_DEV(1):RxD | GPIO9 | not available in **qout** and **qio** flash mode | \r
</center>
\n
@note
- The configuration of ADC channels contains all ESP32 GPIOs that can be used as ADC channels.
- The configuration of DAC channels contains all ESP32 GPIOs that can be used as DAC channels.
- GPIO9 and GIOP10 can only be used in **dout** and **dio** \ref esp32_flash_modes "flash modes".
- The configuration of ADC channels contains all ESP32 GPIOs that can be
used as ADC channels.
- The configuration of DAC channels contains all ESP32 GPIOs that can be used
as DAC channels.
- GPIO9 and GIOP10 can only be used in **dout** and **dio**
\ref esp32_flash_modes "flash modes".
For detailed information about the configuration of ESP32 boards, see section \ref esp32_peripherals "Common Peripherals".
For detailed information about the configuration of ESP32 boards, see
section \ref esp32_peripherals "Common Peripherals".
[Back to table of contents](#esp32_wroom_32_toc)
### Optional Hardware Configurations {#esp32_wroom_32_optional_hardware}
MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet network interface modules have been tested with the board. You could use the following code in your \ref esp32_application_specific_configurations "application-specific configuration" to use such modules:
MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet
network interface modules have been tested with the board. You could use
the following code in your \ref esp32_application_specific_configurations
"application-specific configuration" to use such modules:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#ifdef BOARD_ESP32_WROOM-32
@ -131,15 +155,23 @@ MRF24J40-based IEEE 802.15.4 radio modules and ENC28J60-based Ethernet network i
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For other parameters, the default values defined by the drivers can be used.
@note The **RESET** signal of MRF24J40 and ENC28J60 based modules can also be connected to the **RST** pin of the board (see \ref esp32_wroom_32_pinout "pinout") to keep the configured GPIO free for other purposes.
@note The **RESET** signal of MRF24J40 and ENC28J60 based modules can also
be connected to the **RST** pin of the board (see \ref esp32_wroom_32_pinout
"pinout") to keep the configured GPIO free for other purposes.
[Back to table of contents](#esp32_wroom_32_toc)
### Board Pinout {#esp32_wroom_32_pinout}
The following figure shows the pinout of the defined default configuration for the EPS32-DevKitC board as an example of generic ESP32-WROOM-32 boards. The light green GPIOs are not used by configured on-board hardware components and can be used for any purpose. However, if optional off-board hardware modules are used, these GPIOs may also be occupied, see section \ref esp32_wroom_32_board_configuration for more information.
The following figure shows the pinout of the defined default configuration
for the EPS32-DevKitC board as an example of generic ESP32-WROOM-32 boards.
The light green GPIOs are not used by configured on-board hardware components
and can be used for any purpose. However, if optional off-board hardware
modules are used, these GPIOs may also be occupied, see
section \ref esp32_wroom_32_board_configuration for more information.
The corresponding board schematics can be found her [here](https://dl.espressif.com/dl/schematics/esp32_devkitc_v4-sch-20180607a.pdf)
The corresponding board schematics can be found her [here]
(https://dl.espressif.com/dl/schematics/esp32_devkitc_v4-sch-20180607a.pdf)
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/ESP32-WROOM-32_pinouts.png" "EPS32-DevKitC V4 Pinout"
@ -147,11 +179,14 @@ The corresponding board schematics can be found her [here](https://dl.espressif.
## Flashing the Device {#esp32_wroom_32_flashing}
Flashing RIOT is quite easy. The board has a Micro-USB connector with reset/boot/flash logic. Just connect the board to your host computer and type using the programming port:
Flashing RIOT is quite easy. The board has a Micro-USB connector with
reset/boot/flash logic. Just connect the board to your host computer
and type using the programming port:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-wroom-32 ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT for ESP32 boards, see \ref esp32_riot.
For detailed information about ESP32 as well as configuring and compiling
RIOT for ESP32 boards, see \ref esp32_riot.
[Back to table of contents](#esp32_wroom_32_toc)
*/

View File

@ -78,7 +78,8 @@ ESP-WROVER-KIT has the following on-board components
The following table shows the default board configuration sorted according to
the defined functionality of GPIOs for different hardware options. This
configuration can be overridden by \ref esp32_application_specific_configurations .
configuration can be overridden by
\ref esp32_application_specific_configurations .
These abbreviations are used in subsequent tables:
@ -208,7 +209,7 @@ interface modules have been tested with the board. You could use the following
code in your \ref esp32_application_specific_configurations
"application-specific configuration" to use such modules:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.c}
#ifdef BOARD_ESP32_WROVER_KIT
#if MODULE_MRF24J40
@ -224,7 +225,7 @@ code in your \ref esp32_application_specific_configurations
#endif
#endif
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For other parameters, the default values defined by the drivers can be used.
@note
@ -257,22 +258,23 @@ Flashing RIOT is quite straight forward. The board has a Micro-USB connector
with reset/boot/flash logic. Just connect the board using the programming port
to your host computer and type:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-wrover-kit ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The USB bridge is based on FDI FT2232HL and offers two USB interfaces:
- the first interface is the JTAG interface for [On-Chip debugging](#esp32_wrover_kit_debugging)
- the first interface is the JTAG interface for
[On-Chip debugging](#esp32_wrover_kit_debugging)
- the second interface is the console interface, which is also used for flashing
Therefore, you have to declare the USB interface in the make command. For
example, if the ESP32-WROVER-KIT is connected to the host computer through the
USB interfaces `/dev/ttyUSB0` and `/dev/ttyUSB1`, the make command would be
used as following:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make flash BOARD=esp32-wrover-kit PORT=/dev/ttyUSB1 ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
For detailed information about ESP32 as well as configuring and compiling RIOT
for ESP32 boards, see \ref esp32_riot.