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

v

Value

Primary reading or setpoint

s

Status

Binary status bitmask (use bit extraction)

u

Unit

Unit code or enum index

n

Min

Minimum allowed value

x

Max

Maximum allowed value

t

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.