Initial ESP32-C3 single-nail firmware with Wi-Fi onboarding
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# piNail ESP32-C3 (Single-Nail)
|
||||
|
||||
ESP32-C3 firmware for a single-nail piNail controller.
|
||||
|
||||
## What changed vs piNail2
|
||||
- Single nail only.
|
||||
- Loop timing is fixed for responsiveness (`1800ms` cycle, `200ms` tick).
|
||||
- Loop timing controls are intentionally not exposed in API/UI.
|
||||
- Wi-Fi onboarding uses captive portal (`piNail-Setup` / `pinailsetup`).
|
||||
|
||||
## Hardware target
|
||||
- Board: ESP32-C3 DevKitM-1 class board.
|
||||
- Thermocouple ADC: MAX6675 (SPI-like bitbang).
|
||||
- Relay output: active HIGH relay module.
|
||||
|
||||
## GPIO mapping
|
||||
- Relay: `GPIO2`
|
||||
- MAX6675 SCK: `GPIO4`
|
||||
- MAX6675 CS: `GPIO5`
|
||||
- MAX6675 SO: `GPIO6`
|
||||
|
||||
## API compatibility
|
||||
Implemented endpoints:
|
||||
- `GET /api/status`
|
||||
- `GET /api/history`
|
||||
- `POST /api/power`
|
||||
- `POST /api/setpoint`
|
||||
- `POST /api/pid`
|
||||
- `POST /api/pid/reset`
|
||||
- `POST /api/safety/reset`
|
||||
- `GET /api/heartbeat`
|
||||
|
||||
Not implemented in this firmware:
|
||||
- Scheduler and dual-nail routing.
|
||||
- Autotune endpoints.
|
||||
- Loop timing reconfiguration endpoint.
|
||||
|
||||
## Build and flash
|
||||
```bash
|
||||
pio run -t upload --upload-port /dev/ttyACM0
|
||||
pio device monitor -b 115200 --port /dev/ttyACM0
|
||||
```
|
||||
Reference in New Issue
Block a user