Parameter Format¶
Parameters use a structured addressing scheme:
Address Format¶
P<pool_number>.<channel><index>
Examples:
- P4.v1 → Pool 4, value channel, index 1
- P5.s40 → Pool 5, status channel, index 40
- P6.u13 → Pool 6, unit channel, index 13
Channels¶
Channel |
Name |
Purpose |
|---|---|---|
|
Value |
Primary reading or setpoint |
|
Status |
Binary status bitmask (use bit extraction) |
|
Unit |
Unit code or enum index |
|
Min |
Minimum allowed value |
|
Max |
Maximum allowed value |
|
Type |
Data type identifier |
Status Bits¶
Tip
Extracting status bits:
# P5.s40 holds a bitmask
status_fam = param_store.get_family("P5", 40)
status = status_fam.status_raw if status_fam else 0 # e.g., 0b00001010 = 10
# Check individual bits
bit_0 = bool(status & (1 << 0)) # False (pump off)
bit_1 = bool(status & (1 << 1)) # True (heater on)
bit_3 = bool(status & (1 << 3)) # True (alarm active)
Writing Parameters¶
Parameter write helpers are not part of the public API yet.
For now, treat this library as read-first (prime via REST + deltas via WebSocket) and use it primarily for state sync.