rt-thread-official/bsp/ESP32_C3
tangzz98 82bf18b771
ESP32: Support applying patch to local IDF (#6467)
2022-09-26 00:55:51 -04:00
..
.vscode [bsp][esp][esp32c3] add the bsp of esp32c3 (#5869) 2022-04-29 09:01:44 +08:00
drivers ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
images [ESP32-C3]add English README.md. 2022-08-31 14:54:30 +08:00
main ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00
.config ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
CMakeLists.txt ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
Kconfig [bsp] update esp32 Kconfig (#6218) 2022-08-22 13:40:27 -04:00
Makefile [bsp][esp][esp32c3] add the bsp of esp32c3 (#5869) 2022-04-29 09:01:44 +08:00
README.md ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
README_ZH.md ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
SConscript ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00
SConstruct ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00
rtconfig.h ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
rtconfig.py ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00
rtt.patch ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
sdkconfig ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00

README.md

ESP32-C3 BSP Introduction

中文 | English

This document records the execution instruction of the BSP (board support package) for the ESP32-C3 development board.

The document is covered in two parts:

  • Board Resources Introduction
  • Quickly Get Started

Resources Introduction

We tested 2 development boards, it all works, but due to the different LED pins of the two development boards, so we'll need to select the corresponding development board in the menuconfig.

LUATOS_ESP32C3

hongxu

The mainly-used resources of LUATOS_ESP32C3 are shown as follows:

  • MCU: esp32-c3Main Frequency 160MHz, 407.22 CoreMark; 2.55 CoreMark/MHz
  • Built-in Chip: 384KB ROM, 400KB SRAM
  • Peripherals
    • Red LED: 2, LED: D4 (IO12), D5IO13
    • Button: 2, K1BOOT K2(RST)
    • SPI FLASH: 4M
  • Common-used interfaces: USB, UART, etc.

For more details about this board, please refer to Here.

Peripheral Condition

Each peripheral supporting condition for this BSP is as follows:

On-board Peripherals Support Remark
GPIO Support
UART Support Using LUATOS_ESP32C3 development board requires connecting serial port to USB chip UART0_TX and UART0_RX (such as CP2102)
JTAG debug Support ESP32C3 usb-linked development boards can be debugged

Install ESP-IDF

ESP-IDF can be installed in two ways

  1. Use Env tool
  • Download the package
pkgs --update
  • Go to ESP-IDF package directory and install IDF tools. This command only needs to be run once after the package is downloaded for the first time.
cd packages/ESP-IDF-latest
./install.sh
# Use install.bat in Windows environment
  • Under the ESP-IDF package directory, export IDF environment variables. This commands need to be run every time when the BSP is built in a new terminal.
. export.sh
# Use export.bat in Windows environment
  1. Apply patch to a local installation of ESP-IDF
  • Select the below option with SCons --menuconfig
Hardware Drivers Config
    [*] Use local ESP-IDF installation

And deselect ESP-IDF package

RT-Thread online packages
    peripheral libraries and drivers
        [ ] ESP-IDF: Espressif IoT Development Framework
  • Any convenient method to install ESP-IDF can be used, such as VSCode plugin. Make sure to install the master version of ESP-IDF.
  • Enter the local ESP-IDF directory and run the following commands
git checkout 5c1044d84d625219eafa18c24758d9f0e4006b2c
# Replace rtt.patch with the actual directory of rtt.patch under the BSP directory
git am rtt.patch
  • After applying the patch, ESP-IDF FreeRTOS projects can be compiled as usual

Compile and Upload

  • Configure RT-Thread under the BSP directory
scons --menuconfig
  • Whenever RT-Thread configuration is changed with scons --menuconfig, a new CMakeLists.txt needs to be generated with the command below
scons --target=esp-idf
  • If ESP-IDf is installed using Env, use idf.py to compile and upload the program. Refer to Espressif official documents for reference. Otherwise follow the appropriate steps depending on how ESP-IDF was installed, such as using VSCode plugin.
  • Once the project is successfully downloaded, the system runs automatically, the red LED will blink in 1s on cycles.

Notes

  • The basic functions are now supported, but it needs more, welcome any contributions and feedback.

Maintainer:

Special thanks to chenyingchun0312 for providing support on the RISC-V part working.