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>
1.4 KiB
kvida-os
Fastvare for Kvida — en konfigurerbar automasjonsplattform (ESP32-C6) fra Xylon.
Visjon og arkitektur er beskrevet i meta-repoet kvida. Dette repoet inneholder kun fastvaren, bygget på ESP-IDF (C++17).
Forutsetninger
- Docker
- WSL2
usbipd-win(for å videresende ESP32-C6 sin USB-seriellport fra Windows til WSL2 ved flashing)
Arkitektur
Lagdelt: drivers -> sensors -> profiles -> lua_runtime -> transport, se komponent-READMEene under components/ og AGENTS.md for detaljer. Bruker konfigurerer enheten visuelt (Blockly -> Lua), ikke ved å skrive/kompilere fastvare.
Quickstart
# Bygg toolchain-imaget (Espressif sitt offisielle ESP-IDF v6.0.2-image)
docker compose build
# Velg target (kjøres én gang; genererer sdkconfig)
docker compose run --rm build idf.py set-target esp32c6
# Bygg fastvaren
docker compose run --rm build idf.py build
# Flash + monitor (krever seriellport videresendt via usbipd-win til WSL2)
docker compose run --rm build idf.py -p <PORT> flash monitor
Prosjektet er pinnet til ESP-IDF v6.0.2 (se docker/Dockerfile).
Status
main/ bygger og logger oppstart. components/* inneholder foreløpig bare README-er som beskriver ansvar per lag — ingen reell logikk ennå. partitions.csv har et A/B OTA + LittleFS-oppsett med plassholder-størrelser (4MB flash) som bør justeres når ekte flash-størrelse/image-størrelse er kjent.