Difference: CustomNopMicroPython (3 vs. 4)

Revision 42022-04-21 - UliRaich

Line: 1 to 1
 
META TOPICPARENT name="TinyML"

Preparing a custom version of MicroPython with TensorFlow

Introduction

Line: 7 to 7
  Here are the steps to build this custom microPython version:
Changed:
<
<
  • The steps to build the firmware can be found in tflite-micro-micropython/.github/workflows/build_esp32.yml
    In my case the Espressif development environment espidf has already been downloaded and set up earlier. I use espidf version 4.3.1, the latest stable version at time of writing.

    Activate the virtual Python environment needed for espidf (if venvwrapper is installed: workon espidf)
    Make sure that the modules Pillow and Wave have been installed on this virtual environment. If not, install them with pip:
>
>
  • The steps to build the firmware can be found in tflite-micro-micropython/.github/workflows/build_esp32.yml
    In my case the Espressif development environment espidf has already been downloaded and set up earlier. I use espidf version 4.3.1, the latest stable version at time of writing.

    Activate the virtual Python environment needed for espidf (if venvwrapper is installed: workon espidf)
    Make sure that the modules Pillow and Wave have been installed on this virtual environment. If not, install them with pip:
 
    • pip3 install Pillow
    • pip3 install Wave
  • Setup the sub-modules needed for tflm:
Line: 29 to 29
 
    • cd ../micropython/mpy_cross
    • make
  • cd .. (the micropython folder of tflite-micro-micropython)
Changed:
<
<
    • git apply ../boards/esp32/MICROLITE_SPIRAM_CAM/micropython.patch
      !MicroPython allocates the full SPIRAM installed on the esp32-cam module for its heap. However, the esp32-camera driver needs some of the SPIRAM for its image buffer. The patch modifies main.c in micropython/ports/esp32 such that part of the SPIRAM is kept free for the camera driver.
>
>
    • git apply ../boards/esp32/MICROLITE_SPIRAM_CAM/micropython.patch
      !MicroPython allocates the full SPIRAM installed on the esp32-cam module for its heap. However, the esp32-camera driver needs some SPIRAM for its image buffer. The patch modifies main.c in micropython/ports/esp32 such that part of the SPIRAM is kept free for the camera driver.
  • cd boards/esp32/MICROLITE_SPIRAM_16M (when using the TTGO T7 Mini32 V1.5 ESP32-WROVER-B CPU board)
 
    • idf.py clean build (this builds the MicroPython firmware)
  • flash the custom MicroPython interpreter
    • idf.py flash
Line: 37 to 38
  tflite_micropython.png
Changed:
<
<
Since all the necessary drivers and libraries are now available in MicroPython we can go ahead and try the TensorFlow Lite Micro examples.
>
>
Since all the necessary drivers and libraries are now ready in MicroPython we can go ahead and try the TensorFlow Lite Micro examples.
  -- Uli Raich - 2022-01-31
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback