Add per-slave ESP-NOW OTA progress over UART and fix dashboard updates.

Expose OTA_SLAVE_PROGRESS on the master, track per-slave state during
distribution, run ESP-NOW OTA in a background task so the host can poll
while slaves update, and show master/slave progress in the dashboard
with table layout and faster WebSocket refresh during uploads.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-19 21:07:46 +02:00
co-authored by Cursor
parent 5a948a5c8c
commit a0f4a81a55
23 changed files with 1467 additions and 146 deletions
+9 -5
View File
@@ -18,10 +18,6 @@ default:
@echo "Targets: proto_generate gotool-build gotool-clients gotool-version …"
@echo "Set PORT=$(PORT) (current) for goTool targets."
proto_generate_uart:
cd main/proto && python ../../libs/nanopb/generator/nanopb_generator.py \
-I ../../libs/nanopb/generator/proto uart_messages.proto
proto_generate_espnow:
cd main/proto && python ../../libs/nanopb/generator/nanopb_generator.py \
-I ../../libs/nanopb/generator/proto esp_now_messages.proto
@@ -31,7 +27,15 @@ proto_generate: proto_generate_uart proto_generate_espnow
gotool-proto:
cd $(GOTOOL_DIR) && protoc --go_out=./pb --go_opt=paths=source_relative \
--go_opt=Muart_messages.proto=powerpod/gotool/pb \
-I ../main/proto ../main/proto/uart_messages.proto
--go_opt=Mnanopb.proto=powerpod/gotool/pb/nanopb \
-I ../main/proto \
-I ../libs/nanopb/generator/proto \
../main/proto/uart_messages.proto
@sed -i '/powerpod\/gotool\/pb\/nanopb/d' $(GOTOOL_DIR)/pb/uart_messages.pb.go
proto_generate_uart:
cd main/proto && python3 ../../libs/nanopb/generator/nanopb_generator.py \
-I . -I ../../libs/nanopb/generator/proto uart_messages.proto
gotool-tidy:
cd $(GOTOOL_DIR) && go mod tidy