cmods

cmods — Multi-usermod C compilation workspace.

cmods Out-of-tree C build workspace for compiling MicroPython and CircuitPython firmware binaries with displayif drivers and LVGL bindings.

Live Pure-Python Device

Firmware Compilation Workflows

Out-of-tree CMake & Makefile build orchestration for MicroPython and CircuitPython ports.

MicroPython — Workspace Build (build_mp.sh)

# Clone the cmods workspace, then add MicroPython and any usermods into it:
git clone https://github.com/PyDevices/cmods.git
cd cmods
git clone https://github.com/micropython/micropython.git
git clone https://github.com/PyDevices/displayif.git
git clone https://github.com/PyDevices/lvgl-micropython.git

# Build ESP32-S3 firmware with displayif and LVGL usermods enabled:
./build_mp.sh --port esp32 --board ESP32_GENERIC_S3

CircuitPython — Workspace Build (build_cp.sh)

# build_cp.sh auto-discovers each usermod's own apply_cp_patches.sh
# and rebuilds CircuitPython with all of them applied:
cd cmods
./build_cp.sh --port unix --variant coverage