- Replace gauge.py (MicroPython) references with gaugecontroller.yaml (ESPHome) - Update CLAUDE.md and README.md to document ESPHome-native API integration - Update LED wiring docs for separate main/indicator strips (D22/D36) - Refactor Arduino firmware to drive two WS2812 strips independently - Add per-gauge physical offset caching for main and indicator LEDs - Frame-limit breathe effect (16ms) to reduce unnecessary strip refreshes
60 lines
1.2 KiB
JSON
60 lines
1.2 KiB
JSON
{
|
|
"debug": false,
|
|
|
|
"wifi_ssid": "MyNetwork",
|
|
"wifi_password": "MyPassword",
|
|
|
|
"mqtt_broker": "192.168.1.10",
|
|
"mqtt_port": 1883,
|
|
"mqtt_user": "mqtt_user",
|
|
"mqtt_password": "mqtt_password",
|
|
"mqtt_client_id": "gauge_controller",
|
|
"mqtt_prefix": "gauges",
|
|
|
|
"heartbeat_ms": 10000,
|
|
"rezero_interval_ms": 3600000,
|
|
|
|
"device": {
|
|
"name": "Selsyn Multi",
|
|
"model": "Chernobyl Selsyn-inspired gauge",
|
|
"manufacturer": "AdeBaumann",
|
|
"area": "Control Panels"
|
|
},
|
|
|
|
"arduino_uart": 1,
|
|
"arduino_tx_pin": 17,
|
|
"arduino_rx_pin": 16,
|
|
"arduino_baud": 115200,
|
|
|
|
"gauges": [
|
|
{
|
|
"name": "Gauge 1",
|
|
"entity_name": "Selsyn 1 Power",
|
|
"min": 0,
|
|
"max": 7300,
|
|
"max_steps": 4000,
|
|
"speed": 5000,
|
|
"acceleration": 6000,
|
|
"unit": "W",
|
|
"leds": {
|
|
"ws2812_red": [255, 0, 0],
|
|
"ws2812_green": [0, 255, 0]
|
|
}
|
|
},
|
|
{
|
|
"name": "Gauge 2",
|
|
"entity_name": "Selsyn 2 Power",
|
|
"min": 0,
|
|
"max": 7300,
|
|
"max_steps": 4000,
|
|
"speed": 5000,
|
|
"acceleration": 6000,
|
|
"unit": "W",
|
|
"leds": {
|
|
"ws2812_red": [255, 0, 0],
|
|
"ws2812_green": [0, 255, 0]
|
|
}
|
|
}
|
|
]
|
|
}
|