Skip to content

feat: add chlorinator diagnostics - #154

Open
kmbulebu wants to merge 7 commits into
cryptk:mainfrom
kmbulebu:agent/chlorinator-diagnostics
Open

kmbulebu wants to merge 7 commits into
cryptk:mainfrom
kmbulebu:agent/chlorinator-diagnostics

Conversation

@kmbulebu

Copy link
Copy Markdown

Adds requests for salt cell chlorinator measurements and relay polarity.

Parse cell voltage, current, cell and board temperatures, and instant and average salt levels while preserving the raw controller values.

Tested against my pool setup.

measurement = await api.async_get_chlorinator_measurement(
      pool_id=7,
      chlorinator_id=8,
  )

  print(f"Cell voltage: {measurement.voltage:.2f} V")
  print(f"Cell current: {measurement.current:.2f} A")
  print(f"Cell temperature: {measurement.cell_temperature_f:.1f} °F")
  print(f"Board temperature: {measurement.board_temperature_f:.1f} °F")
  print(f"Instant salt: {measurement.instant_salt_level} ppm")
  print(f"Average salt: {measurement.average_salt_level} ppm")

  polarity = await api.async_get_chlorinator_relay_polarity(
      pool_id=7,
      chlorinator_id=8,
  )

  print(f"Relay polarity: {polarity.relay_setting}")

Sample with chlorinator on:

  Cell voltage: 31.64 V
  Cell current: 0.36 A
  Cell temperature: 85.4 °F
  Board temperature: 119.5 °F
  Instant salt: 2869 ppm
  Average salt: 2936 ppm
  Relay polarity: 1

Sample with chlorinator off:

  Cell voltage: 0.00 V
  Cell current: 0.00 A
  Cell temperature: 0.0 °F
  Board temperature: 0.0 °F
  Instant salt: 0 ppm
  Average salt: 2900 ppm

kmbulebu and others added 3 commits July 19, 2026 17:32
Add local API requests for chlorinator measurements and relay polarity.

Parse cell voltage, current, cell and board temperatures, and instant and
average salt levels while preserving the raw controller values.
Comment thread pyomnilogic_local/models/chlorinator_diagnostics.py Outdated
Comment thread pyomnilogic_local/models/chlorinator_diagnostics.py
Comment thread pyomnilogic_local/omnitypes.py Outdated
kmbulebu and others added 2 commits September 1, 2026 13:33
- Remove unnecessary response-name validation
- Document the 10 kΩ NTC thermistor lookup table
- Reuse the existing diagnostic message type
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants