First-time setup
Sibling clones oflvgl-bindings/ and a tagged circuitpython/
# Pick a stable tag from github.com/adafruit/circuitpython/releases
git clone --branch 10.2.1 \
https://github.com/adafruit/circuitpython.git circuitpython
cd circuitpython && make fetch-all-submodules && cd ..
git clone https://github.com/PyDevices/lvgl-bindings.git lvgl-bindings
cd lvgl-bindings
git submodule update --init lvgl
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
./regenerate_lvcp.sh
cd ..
Patch and build
./apply_cp_patches.sh --apply then plain make
unix coverage
Good for the CP test suite / gcov.
cd lvgl-circuitpython
./apply_cp_patches.sh --apply \
--port unix --variant coverage
cd ../circuitpython/ports/unix
make -j VARIANT=coverage
./build-coverage/micropython \
../../lvgl-circuitpython/tools/test_lvgl_cp_unix.py
Board firmware
Patch + make directly. Install GCC 14+ toolchains first (see README).
./apply_cp_patches.sh --apply --port espressif \
--board espressif_esp32p4_function_ev
cd ../circuitpython/ports/espressif && make -j \
BOARD=espressif_esp32p4_function_ev