Files
kvida-os/docker-compose.yml
Ronny Eia 524714148b Rebuild firmware scaffold for ESP32-C6/ESP-IDF, replacing NCS/Zephyr
The product pivoted away from a Matter-first nRF54L15 device to an
ESP32-C6/ESP-IDF/C++17 platform where behaviour is defined by a
Blockly-generated Lua program instead of custom firmware (see the
updated kvida meta-repo vision). Removes the west/NCS/Zephyr scaffold
and replaces it with:

- A pinned ESP-IDF v6.0.2 Docker build environment (Espressif's
  official image already bundles the toolchain, unlike NCS/west).
- A layered component structure (drivers -> sensors -> profiles ->
  lua_runtime -> transport) matching the new architecture principles,
  with per-component READMEs describing responsibilities.
- An A/B OTA + LittleFS partition table and a minimal main.cpp.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-08 19:54:25 +02:00

28 lines
910 B
YAML

services:
build:
build:
context: .
dockerfile: docker/Dockerfile
working_dir: /project
environment:
- IDF_TARGET=esp32c6
volumes:
# Project source, bind-mounted.
- .:/project
# Build output and IDF Component Registry cache, kept in named
# volumes so they survive across container runs without polluting
# the bind-mounted source tree.
- build-cache:/project/build
- managed-components-cache:/project/managed_components
tty: true
# USB access (for `idf.py flash`/`monitor`) is expected to be handled
# via usbipd-win forwarding the board's serial port into WSL2. If
# flashing needs to run inside this container rather than on the WSL2
# host, uncomment and adjust once the forwarded device node is known:
# devices:
# - "/dev/ttyUSB0:/dev/ttyUSB0"
volumes:
build-cache:
managed-components-cache: