Port of arduino-st4 (Kevin Ferrare) to ESP32/PlatformIO with: - FreeRTOS mutex protection at every layer (Pin, Axis, Pulse, Controller) - Hardware timer pulse guiding with ISR-safe deferred stop pattern - Backward-compatible serial protocol (57600 baud, #-terminated) - Extended commands: PULSE, POS?, SYNC, STATUS?, VERSION? - Optional WiFi/WebSocket control (gated by ST4_WIFI_ENABLED) - Dead-reckoning position tracker using esp_timer microsecond precision All 4 examples build clean against esp32dev target.
25 lines
691 B
Makefile
25 lines
691 B
Makefile
.PHONY: all basic serial pulse wifi clean
|
|
|
|
BOARD = esp32dev
|
|
LIB = .
|
|
|
|
all: basic serial pulse wifi
|
|
@echo "All examples built successfully"
|
|
|
|
basic:
|
|
pio ci examples/basic_gpio/basic_gpio.ino --lib="$(LIB)" --board=$(BOARD)
|
|
|
|
serial:
|
|
pio ci examples/serial_compatible/serial_compatible.ino --lib="$(LIB)" --board=$(BOARD)
|
|
|
|
pulse:
|
|
pio ci examples/pulse_guide/pulse_guide.ino --lib="$(LIB)" --board=$(BOARD)
|
|
|
|
wifi:
|
|
pio ci examples/wifi_control/wifi_control.ino --lib="$(LIB)" --board=$(BOARD) \
|
|
--project-option="build_flags=-DST4_WIFI_ENABLED" \
|
|
--project-option="lib_deps=bblanchon/ArduinoJson@^7.0.0, mathieucarbou/ESPAsyncWebServer@^3.6.0"
|
|
|
|
clean:
|
|
rm -rf .pio
|