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.
The mainly-used resources of LUATOS_ESP32C3 are shown as follows:
- MCU: esp32-c3,Main Frequency 160MHz, 407.22 CoreMark; 2.55 CoreMark/MHz
- Built-in Chip: 384KB ROM, 400KB SRAM
- Peripherals
- Red LED: 2, LED: D4 (IO12), D5(IO13)
- Button: 2, K1(BOOT) 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 |
Environment construction and compilation
-
Download the RISC-V toolchain:
wget https://github.com/espressif/crosstool-NG/releases/download/esp-2022r1-RC1/riscv32-esp-elf-gcc11_2_0-esp-2022r1-RC1-linux-amd64.tar.xz tar xf riscv32-esp-elf-gcc11_2_0-esp-2022r1-RC1-linux-amd64.tar.xz -
Configure the path of the toolchain:
Add the local path of the
RISC-Vtoolchain to theEXEC_PATHvariable in thertconfig.pyfile, or specify the path by setting theRTT_EXEC_PATHenvironment variable, for example:export RTT_EXEC_PATH=/opt/riscv32-esp-elf/bin -
Compile
Install esptool to convert ELF files to binary flash files:
pip install esptoolExecute the following command on the Linux platform to configure:
scons --menuconfigIt will automatically download env-related scripts to the
~/.envdirectory, and then execute:source ~/.env/env.sh cd bsp/ESP32_C3/ pkgs --updateIt will automatically download
RT-Thread-packages/esp-idfandRT-Thread-packages/FreeRTOS-Wrapper, after updating the software packages, executesconsto compile the board support package.If the compilation is successful,
rtthread.elf,rtthread.binfiles will be generated.
Download and program
-
Programming tool download
The current bsp test uses the
flash_download_tool_3.9.4tool to program without errors.Programming tool download address: https://www.espressif.com.cn/sites/default/files/tools/flash_download_tool_3.9.4_0.zip
-
Programming tool configuration
Chip model selection
ESP32-C3Configure the binary file and offset address as follows:
binary file offset address bootloader.bin 0x0 partition-table.bin 0x8000 rtthread.bin 0x10000 Among them,
bootloader.binandpartition-table.bincan be found in thebsp/ESP32_C3/builtin_imgsfolder. After the configuration is completed, the screenshot is as follows, and then clickSTARTto download.
Notes
- The basic functions are now supported, but it needs more, welcome any contributions and feedback.
Maintainer:
- supperthomas email address: 78900636@qq.com
- tangzz98 email address: tangz98@outlook.com
Special thanks to chenyingchun0312 for providing support on the RISC-V part working.


