rt-thread/bsp/ESP32_C3/README.md

4.6 KiB
Raw Blame History

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.