Move UART command handlers into main/cmd/ for clearer layout.
Add cmd/ to CMake include paths and update documentation paths. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+14
-14
@@ -26,8 +26,8 @@ sequenceDiagram
|
||||
| Schema UART | `main/proto/uart_messages.proto` | `MessageType`, Request/Response für Host ↔ Master |
|
||||
| Schema ESP-NOW | `main/proto/esp_now_messages.proto` | Master ↔ Slave (ohne UART) |
|
||||
| Transport UART | `main/uart.c`, `goTool/uart/` | Rahmen `0xAA … 0xCC`, Byte 0 = Command-ID |
|
||||
| Dispatch | `main/cmd_handler.c`, `main/uart_cmd.c` | Queue + `uart_cmd_register()` |
|
||||
| Master-Logik | `main/cmd_*.c` | Decode, Registry, ESP-NOW senden |
|
||||
| Dispatch | `main/cmd/cmd_handler.c`, `main/uart_cmd.c` | Queue + `uart_cmd_register()` |
|
||||
| Master-Logik | `main/cmd/cmd_*.c` | Decode, Registry, ESP-NOW senden |
|
||||
| ESP-NOW | `main/esp_now_comm.c` | Encode/Decode, Send, Slave-`recv_cb` |
|
||||
| Geräte-Funktion | z.B. `main/led_ring.c` | Wiederverwendbare Aktion (Master + Slave) |
|
||||
| Host | `goTool/cmd_*.go`, `api_serve.go`, `webui/` | CLI, HTTP, UI |
|
||||
@@ -46,8 +46,8 @@ sequenceDiagram
|
||||
|
||||
**Find me:** UART `FIND_ME` mit `client_id`; `0` = Master-Ring, `>0` = Unicast `ESPNOW_FIND_ME` an die Slave-MAC aus der Registry.
|
||||
|
||||
Referenz für **nur ESP-NOW-Weiterleitung ohne lokale Wirkung:** `cmd_espnow_unicast_test.c`
|
||||
Referenz für **Master lokal + Slave + `client_id`:** `cmd_espnow_find_me.c`, `cmd_accel_deadzone.c`
|
||||
Referenz für **nur ESP-NOW-Weiterleitung ohne lokale Wirkung:** `main/cmd/cmd_espnow_unicast_test.c`
|
||||
Referenz für **Master lokal + Slave + `client_id`:** `main/cmd/cmd_espnow_find_me.c`, `main/cmd/cmd_accel_deadzone.c`
|
||||
|
||||
---
|
||||
|
||||
@@ -129,13 +129,13 @@ Funktion, die auf **Master und Slave** gleich wirken soll, gehört **nicht** in
|
||||
Find me:
|
||||
|
||||
- `led_ring_find_me()` in `led_ring.c` — sequenz `LED_CMD_FIND_ME` (3× rot/grün/blau, volle Helligkeit)
|
||||
- Optional separater UART-Pfad nur für Ring-Steuerung: `LED_RING` mode `4` in `cmd_led_ring.c` (ohne ESP-NOW)
|
||||
- Optional separater UART-Pfad nur für Ring-Steuerung: `LED_RING` mode `4` in `main/cmd/cmd_led_ring.c` (ohne ESP-NOW)
|
||||
|
||||
---
|
||||
|
||||
## Schritt 4 — UART-Command-Handler (nur Master)
|
||||
|
||||
Neue Dateien: `main/cmd_espnow_find_me.c`, `main/cmd_espnow_find_me.h`
|
||||
Neue Dateien: `main/cmd/cmd_espnow_find_me.c`, `main/cmd/cmd_espnow_find_me.h`
|
||||
|
||||
Muster (gekürzt):
|
||||
|
||||
@@ -191,8 +191,8 @@ Hilfs-APIs (`uart_cmd.h`):
|
||||
cmd_espnow_find_me_register();
|
||||
```
|
||||
|
||||
**Build:** `main/CMakeLists.txt` → `"cmd_espnow_find_me.c"`
|
||||
**Logging-Namen:** `main/cmd_handler.c` → `case alox_MessageType_FIND_ME: return "FIND_ME";`
|
||||
**Build:** `main/CMakeLists.txt` → `"cmd/cmd_espnow_find_me.c"`
|
||||
**Logging-Namen:** `main/cmd/cmd_handler.c` → `case alox_MessageType_FIND_ME: return "FIND_ME";`
|
||||
|
||||
### Ablauf UART intern
|
||||
|
||||
@@ -324,7 +324,7 @@ idf.py build
|
||||
- [ ] Geräte-Modul (z.B. `led_ring_*`)
|
||||
- [ ] `cmd_*.c` + `uart_cmd_register`
|
||||
- [ ] `esp_now_comm`: `send_*` + Slave-`recv` case
|
||||
- [ ] `CMakeLists.txt`, `powerpod.c`, `cmd_handler.c` Name
|
||||
- [ ] `CMakeLists.txt`, `powerpod.c`, `cmd/cmd_handler.c` Name
|
||||
- [ ] goTool: CLI, `client_api`, optional `api_serve` + WebUI
|
||||
- [ ] README aktualisieren
|
||||
- [ ] Master + Slave flashen bei ESP-NOW-Proto-Änderung
|
||||
@@ -337,7 +337,7 @@ idf.py build
|
||||
|---------|--------|
|
||||
| UART Proto | `main/proto/uart_messages.proto` |
|
||||
| ESP-NOW Proto | `main/proto/esp_now_messages.proto` |
|
||||
| UART Handler | `main/cmd_espnow_find_me.c` |
|
||||
| UART Handler | `main/cmd/cmd_espnow_find_me.c` |
|
||||
| ESP-NOW | `main/esp_now_comm.c`, `main/esp_now_comm.h` |
|
||||
| LED | `main/led_ring.c`, `main/led_ring.h` |
|
||||
| Host CLI | `goTool/cmd_find_me.go` |
|
||||
@@ -345,7 +345,7 @@ idf.py build
|
||||
|
||||
Ähnliche Features zum Abgucken:
|
||||
|
||||
- **Nur Master, kein ESP-NOW:** `cmd_version.c`, `cmd_led_ring.c`
|
||||
- **Nur Slave per ESP-NOW (Master leitet nur durch):** `cmd_espnow_unicast_test.c`
|
||||
- **Master + alle Slaves / Filter:** `cmd_accel_deadzone.c`
|
||||
- **Großer ESP-NOW-Fluss mit Status:** `ota_espnow.c`, `cmd_ota.c`
|
||||
- **Nur Master, kein ESP-NOW:** `main/cmd/cmd_version.c`, `main/cmd/cmd_led_ring.c`
|
||||
- **Nur Slave per ESP-NOW (Master leitet nur durch):** `main/cmd/cmd_espnow_unicast_test.c`
|
||||
- **Master + alle Slaves / Filter:** `main/cmd/cmd_accel_deadzone.c`
|
||||
- **Großer ESP-NOW-Fluss mit Status:** `ota_espnow.c`, `main/cmd/cmd_ota.c`
|
||||
|
||||
Reference in New Issue
Block a user