diff options
| author | Filip Wandzio <contact@philw.dev> | 2025-10-29 13:29:27 +0100 |
|---|---|---|
| committer | Filip Wandzio <contact@philw.dev> | 2025-10-29 13:29:27 +0100 |
| commit | a27af14e815ef993e9a0c94e5bc8b32dbf989a94 (patch) | |
| tree | fed25911f251f95c7f2c71d1d770a5013452664c /firmware/Makefile | |
| parent | 4698910f842c322b80ebd1cf19a4e32c0fb2249d (diff) | |
| download | e1-master.tar.gz e1-master.zip | |
Solve baud detection bug, fix wifi searching task scheduling bug, improve documentation, implement additional mqtt topicsHEADmaster
Diffstat (limited to 'firmware/Makefile')
| -rw-r--r-- | firmware/Makefile | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/firmware/Makefile b/firmware/Makefile index 0fd1699..0595792 100644 --- a/firmware/Makefile +++ b/firmware/Makefile | |||
| @@ -9,7 +9,29 @@ BUILD_FLAGS = -D WIFI_SSID="\\\"$(WIFI_SSID)\\\"" \ | |||
| 9 | -D WIFI_PASS="\\\"$(WIFI_PASS)\\\"" \ | 9 | -D WIFI_PASS="\\\"$(WIFI_PASS)\\\"" \ |
| 10 | -D MQTT_URI="\\\"$(MQTT_URI)\\\"" | 10 | -D MQTT_URI="\\\"$(MQTT_URI)\\\"" |
| 11 | 11 | ||
| 12 | .PHONY: build upload monitor clean debug-flags test | 12 | PORT ?= $(shell ls /dev/ttyUSB* /dev/ttyACM* 2>/dev/null | head -n 1) |
| 13 | |||
| 14 | ifdef BAUD | ||
| 15 | BAUD := $(BAUD) | ||
| 16 | else ifneq ("$(wildcard .baud_detected)","") | ||
| 17 | BAUD := $(shell cat .baud_detected) | ||
| 18 | else | ||
| 19 | BAUD := 115200 | ||
| 20 | endif | ||
| 21 | |||
| 22 | detect-baud: | ||
| 23 | @echo "[*] Detecting correct baud rate..." | ||
| 24 | @if screen -L -dmS test_screen $(PORT) 74880; then \ | ||
| 25 | sleep 1; \ | ||
| 26 | grep -q "rst:" screenlog.0 && echo "74880" > .baud_detected || echo "115200" > .baud_detected; \ | ||
| 27 | rm -f screenlog.0; \ | ||
| 28 | screen -S test_screen -X quit; \ | ||
| 29 | else \ | ||
| 30 | echo "115200" > .baud_detected; \ | ||
| 31 | fi | ||
| 32 | @echo "[✓] Set BAUD=$$(cat .baud_detected)" | ||
| 33 | |||
| 34 | .PHONY: build upload monitor clean debug-flags test detect-baud | ||
| 13 | 35 | ||
| 14 | build: | 36 | build: |
| 15 | @echo "Starting build with SSID=$(WIFI_SSID)" | 37 | @echo "Starting build with SSID=$(WIFI_SSID)" |
| @@ -20,7 +42,11 @@ upload: | |||
| 20 | PLATFORMIO_BUILD_FLAGS="$(BUILD_FLAGS)" pio run -e $(ENV) -t upload | 42 | PLATFORMIO_BUILD_FLAGS="$(BUILD_FLAGS)" pio run -e $(ENV) -t upload |
| 21 | 43 | ||
| 22 | monitor: | 44 | monitor: |
| 23 | pio device monitor -e $(ENV) | 45 | @PORT=$(PORT); \ |
| 46 | BAUD=$(BAUD); \ | ||
| 47 | if [ -z "$$PORT" ]; then echo "[ERROR] Port /dev/ttyUSB* or /dev/ttyACM* not found"; exit 1; fi; \ | ||
| 48 | echo "[*] Opening monitor: $$PORT @ $$BAUD baud"; \ | ||
| 49 | screen $$PORT $$BAUD | ||
| 24 | 50 | ||
| 25 | clean: | 51 | clean: |
| 26 | pio run -e $(ENV) -t clean | 52 | pio run -e $(ENV) -t clean |
