version: '3' vars: ENV: esp32-c6 PORT: /dev/cu.usbmodem1101 BAUD: "115200" DEVICE_IP: "" # ustaw np.: task config-download DEVICE_IP=192.168.1.42 tasks: build: desc: Kompiluj firmware cmds: - pio run -e {{.ENV}} upload: desc: Wgraj firmware na urzadzenie cmds: - pio run -e {{.ENV}} --target upload uploadfs: desc: Wgraj filesystem (data/wifi.json + data/config.json) na urzadzenie cmds: - pio run -e {{.ENV}} --target uploadfs flash: desc: Wgraj filesystem i firmware (pelne wgranie) cmds: - task: uploadfs - task: upload monitor: desc: Otworz monitor portu szeregowego cmds: - pio device monitor -p {{.PORT}} -b {{.BAUD}} upload-monitor: desc: Wgraj firmware i otworz monitor cmds: - task: upload - task: monitor flash-monitor: desc: Pelne wgranie (fs + firmware) i otworz monitor cmds: - task: flash - task: monitor erase: desc: Skasuj cala pamiec flash urzadzenia cmds: - esptool.py --port {{.PORT}} erase_flash erase-flash: desc: Skasuj flash, wgraj fs i firmware od nowa cmds: - task: erase - task: flash clean: desc: Wyczysc katalog build cmds: - pio run -e {{.ENV}} --target clean deps: desc: Zainstaluj/zaktualizuj biblioteki cmds: - pio pkg install -e {{.ENV}} wifi: desc: Edytuj konfiguracje WiFi (data/wifi.json) i wgraj filesystem cmds: - ${EDITOR:-nano} data/wifi.json - task: uploadfs gestures: desc: Edytuj konfiguracje gestow (data/config.json) i wgraj filesystem cmds: - ${EDITOR:-nano} data/config.json - task: uploadfs config-download: desc: "Pobierz konfiguracje gestow z urzadzenia -> data/config.json (uzyj: task config-download DEVICE_IP=)" cmds: - | IP="{{.DEVICE_IP}}" if [ -z "$IP" ]; then read -rp "IP urzadzenia: " IP fi echo "[config-download] Pobieranie z http://$IP/config.json ..." curl -sf "http://$IP/config.json" -o data/config.json \ && echo "[config-download] Zapisano do data/config.json (tylko gesty, bez WiFi)" \ || { echo "[config-download] BLAD: nie mozna polaczyc z $IP"; exit 1; } test: desc: Uruchom testy jednostkowe (native, na Mac) cmds: - pio test -e native default: desc: Pokaz liste dostepnych zadan cmds: - task --list