tangzz98 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
..
.vscode ee1e0a0df0 [bsp][esp][esp32c3] add the bsp of esp32c3 (#5869) 3 years ago
drivers 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
images 11dccf2581 [ESP32-C3]add English README.md. 2 years ago
main cb7fd304ff ESP32_C3 migrate to ESP-IDF package (#6427) 2 years ago
.config 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
CMakeLists.txt 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
Kconfig 955b8d9ae3 [bsp] update esp32 Kconfig (#6218) 2 years ago
Makefile ee1e0a0df0 [bsp][esp][esp32c3] add the bsp of esp32c3 (#5869) 3 years ago
README.md 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
README_ZH.md 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
SConscript cb7fd304ff ESP32_C3 migrate to ESP-IDF package (#6427) 2 years ago
SConstruct cb7fd304ff ESP32_C3 migrate to ESP-IDF package (#6427) 2 years ago
rtconfig.h 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
rtconfig.py cb7fd304ff ESP32_C3 migrate to ESP-IDF package (#6427) 2 years ago
rtt.patch 82bf18b771 ESP32: Support applying patch to local IDF (#6467) 2 years ago
sdkconfig cb7fd304ff ESP32_C3 migrate to ESP-IDF package (#6427) 2 years ago

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-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

Install ESP-IDF

ESP-IDF can be installed in two ways

  1. Use Env tool
  2. Download the package

    pkgs --update
    
  3. 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
    
  4. 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
    
  5. Apply patch to a local installation of ESP-IDF

  6. 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
    
  7. Any convenient method to install ESP-IDF can be used, such as VSCode plugin. Make sure to install the master version of ESP-IDF.

  8. 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
    
  9. After applying the patch, ESP-IDF FreeRTOS projects can be compiled as usual

    Compile and Upload

  10. Configure RT-Thread under the BSP directory

    scons --menuconfig
    
  11. 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
    
  12. 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.

  13. 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.