feat: initial myprimal MQTT bridge service
Dynamic MySolem/MyIndygo IoT bridge with MQTT, Home Assistant autodiscovery, and Homebridge EasyMQTT compatibility. - Device discovery via MySolem API on startup (all modules/inputs/outputs) - Configurable poll engine (fast/normal/slow buckets, per-input overrides) - MQTT retained state publishing + HA autodiscovery payloads - Unified manual command routing (linesControl vs sendManualModuleCommand) - Runtime config via MQTT $config/set, persisted to config.json - Expression override system (API-provided > hardcoded > passthrough) - Minimal REST API: /health, /state, /control, /rediscover - Docker deployment (Dockerfile + docker-compose.yml) - 38 unit tests Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
# pool-level-sensor — Pool Level Float Switch (POOL-LVL-0E953B)
|
||||
|
||||
**Module ID**: `6a174dd1e0b88ea3e925531c`
|
||||
**Serial**: `0300020E953B0001`
|
||||
**MAC**: `C8:B9:61:0E:95:3B`
|
||||
**UUID**: `030058B9610E953B00000001000E953B`
|
||||
**Firmware**: 7.3.1 | **Hardware**: B | **Manufacturer**: `03`
|
||||
**Type**: `pool-level-sensor`
|
||||
**Role**: Detects pool water level — triggers fill valve via LRLEVEL (lr-niv)
|
||||
|
||||
---
|
||||
|
||||
## Inputs
|
||||
|
||||
| Input ID | Index | Type | Unit | Interval | Notes |
|
||||
|---|---|---|---|---|---|
|
||||
| `6a174dd1e0b88ea3e925531e` | 1 | 21 (level TOR) | raw (0/1) | 1 min | Main level switch |
|
||||
| `6a174dd1e0b88ea3e925531f` | 2 | 0 | raw | 0 (event-driven) | Secondary / aux (no telemetry recorded) |
|
||||
|
||||
Both inputs: expression `x` (raw passthrough). `metadata.equipmentType: "waterLevel"` on input 1.
|
||||
|
||||
### Recent readings
|
||||
|
||||
```
|
||||
2026-05-31T14:54 1 (level OK / above threshold)
|
||||
2026-05-30T18:27 1 (level OK)
|
||||
2026-05-29T16:18 0 (level LOW — fill triggered)
|
||||
2026-05-29T16:17 1
|
||||
2026-05-29T15:59 0 (level LOW)
|
||||
```
|
||||
|
||||
`0` = water below threshold (fill needed)
|
||||
`1` = water level OK
|
||||
|
||||
Only 11 events recorded over the last month — sensor only transmits on state change.
|
||||
|
||||
---
|
||||
|
||||
## Remote state
|
||||
|
||||
- Battery: **41%** — low, needs replacement
|
||||
- Last radio contact: 2026-06-04T20:14:07Z
|
||||
- Relay: `60ca4276ad69dac1558f7c61` (LRMB10)
|
||||
|
||||
The `poolLevelSensorCleaningReminder` alert (2026-05-28) confirms this device needs cleaning.
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
- Works in tandem with `LRLEVEL-0D2ED9` (lr-niv): when this sensor reads 0, LRLEVEL opens the fill valve
|
||||
- No programs or outputs — pure sensor
|
||||
- Type 21 = pool level TOR switch (new type, not seen in other modules)
|
||||
Reference in New Issue
Block a user