/sscma-example-esp32

Example of SenseCraft Model Assistant Model deployment related to ESP32

Primary LanguageC++

SSCMA Deployment on Espressif Chipsets

English | 简体中文

Introduction

The project provides examples of how to deploy models from SSCMA to Espressif chipsets. It is based on the ESP-IDF and TFLite-Micro.

Getting Started

Install ESP IDF

Follow instructions in this guide ESP-IDF - Get Started to setup the built toolchain used by SSCMA examples. Currently we're using the latest version v5.1.

Clone and Setup the Repository

  1. Clone our repository.

    git clone https://github.com/Seeed-Studio/sscma-example-esp32
  2. Go to sscma-example-esp32 folder.

    cd sscma-example-esp32
  3. Fetch the submodules.

    git submodule update --init

Build and Run Examples

  1. Go to examples folder and list all available examples.

    cd examples && \
    ls
  2. Choose a <demo> and enter its folder.

    cd '<demo>'
  3. Generate build config using ESP-IDF.

    Currently we develop and test on XIAO-ESP32S3 module.

    # set build target
    idf.py set-target esp32s3

    You can change a display driver, enable or disable a TFLite operator if it need using menuconfig.

    # change device or demo specific configuration
    idf.py menuconfig
  4. Build the demo firmware.

    idf.py build
  5. Flash the demo firmware to device and Run.

    To flash (the target serial port may vary depend on your operating system, please replace /dev/ttyACM0 with your device serial port).

    idf.py --port /dev/ttyACM0 flash
    

    Monitor the serial output.

    idf.py --port /dev/ttyACM0 monitor
    

Tip

  • Use Ctrl+] to exit monitor.

  • The previous two commands can be combined.

    idf.py --port /dev/ttyACM0 flash monitor

Supported Models and Performance

Please refer to SSCMA Model Zoo for details.

Contributing

  • If you find any issue in using these examples, or wish to submit an enhancement request, please use the raise a Issue or submit a Pull Request.

License

These examples are covered under MIT License.

These examples use the ESP-IDF which is covered under Apache License 2.0.

TensorFlow, FlashDB, JPEGENC and other third-party libraries are distribute under their own License.