Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions docs/protocol/data_conversions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ Electric heating elements are controlled via thermostat ranges. Two sensors (upp
* - ``heatMinOpTemperature``
- add_20
- °F
- **Minimum operating temperature** for heating elements. Safety threshold - elements won't activate if inlet water is below this (prevents pump cavitation).
- **Minimum heat pump operation temperature**. Lowest tank temperature setpoint allowed in the current operating mode. Range: 95-113°F. Default: 95°F. When set, the user can only set the target tank temperature at or above this threshold, ensuring minimum system operating conditions.

Heat Pump Control Temperatures
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -261,15 +261,15 @@ Freeze Protection Temperatures
* - ``freezeProtectionTemperature``
- add_20
- °F
- **Freeze protection temperature setpoint**. Default 43°F (6°C). If any tank sensor drops below this, electric heating activates.
- **Freeze protection temperature setpoint**. Range: 43-50°F (6-10°C). Default: 43°F (6°C). When tank temperature drops below this, electric heating activates automatically to prevent freezing.
* - ``freezeProtectionTempMin``
- add_20
- °F
- **Minimum freeze protection temperature limit**.
- **Minimum freeze protection temperature limit** (lower boundary). Fixed at 43°F (6°C).
* - ``freezeProtectionTempMax``
- add_20
- °F
- **Maximum freeze protection temperature limit**.
- **Maximum freeze protection temperature limit** (upper boundary). Fixed at 50°F (10°C).

Recirculation System Temperatures
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down Expand Up @@ -414,15 +414,15 @@ Safety and Diagnostic Fields
* - ``airFilterAlarmUse``
- device_bool
- Boolean
- **Air filter maintenance reminder enabled flag**. True when air filter alarm feature is active.
- **Air filter maintenance reminder enabled flag**. When enabled (True), triggers maintenance alert based on operating hours. Default: On.
* - ``airFilterAlarmPeriod``
- None (direct value)
- hours
- **Air filter service interval**. Default 1000 hours. Maintenance reminder triggers after this interval.
- **Air filter maintenance cycle interval**. Range: Off or 1,000-10,000 hours. Default: 1,000 hours. Maintenance reminder triggers after this operating time elapsed.
* - ``airFilterAlarmElapsed``
- None (direct value)
- hours
- **Hours since last air filter service reset**. Resets to 0 when maintenance is performed.
- **Hours elapsed since last air filter maintenance reset**. Resets to 0 when maintenance is performed. Track this to schedule preventative replacement.
* - ``cumulatedOpTimeEvaFan``
- None (direct value)
- hours
Expand All @@ -442,15 +442,15 @@ Safety and Diagnostic Fields
* - ``antiLegionellaUse``
- device_bool
- Boolean
- **Anti-legionella function enabled flag**. True when feature is active.
- **Anti-legionella function enabled flag**. When enabled (True), device periodically heats tank to high temperature to prevent Legionella bacteria growth. Default: Off. Enable recommended for systems not regularly flushed.
* - ``antiLegionellaOperationBusy``
- device_bool
- Boolean
- **Anti-legionella cycle in progress flag**. True during periodic high-temperature disinfection cycle.
- **Anti-legionella cycle in progress flag**. True during active high-temperature disinfection cycle.
* - ``antiLegionellaPeriod``
- None (direct value)
- days
- **Anti-legionella execution interval**. Period between automatic disinfection cycles.
- **Anti-legionella execution cycle interval**. Range: 1-30 days. Default: 7 days. Sets how often the device performs the disinfection cycle.

Vacation and Scheduling Fields
------------------------------
Expand Down
16 changes: 8 additions & 8 deletions docs/protocol/device_status.rst
Original file line number Diff line number Diff line change
Expand Up @@ -206,22 +206,22 @@ This document lists the fields found in the ``status`` object of device status m
* - ``freezeProtectionTemperature``
- integer
- °F
- Freeze protection temperature setting.
- Freeze protection temperature setpoint. Range: 43-50°F (6-10°C), Default: 43°F. When tank temperature drops below this, electric heating activates automatically to prevent freezing.
- ``raw + 20``
* - ``antiLegionellaUse``
- bool
- None
- Whether anti-legionella function is enabled.
- Whether anti-legionella function is enabled. When enabled, device periodically heats tank to prevent Legionella bacteria growth. Default: Off.
- Converted from integer (1=OFF, 2=ON) to bool
* - ``antiLegionellaPeriod``
- integer
- days
- Anti-legionella function period.
- Anti-legionella cycle interval. Range: 1-30 days, Default: 7 days. Sets frequency of automatic high-temperature disinfection cycles.
- None
* - ``antiLegionellaOperationBusy``
- bool
- None
- Whether the anti-legionella function is busy.
- Whether the anti-legionella disinfection cycle is currently running.
- Converted from integer (1=OFF, 2=ON) to bool
* - ``programReservationType``
- integer
Expand Down Expand Up @@ -321,17 +321,17 @@ This document lists the fields found in the ``status`` object of device status m
* - ``airFilterAlarmUse``
- bool
- None
- Air filter alarm usage - indicates if air filter maintenance reminder is enabled.
- Air filter maintenance reminder enabled flag. When enabled, triggers alerts based on operating hours. Default: On.
- Converted from integer (1=OFF, 2=ON) to bool
* - ``airFilterAlarmPeriod``
- integer
- hours
- Air filter alarm period setting. Default: 1,000 hours of operation.
- Air filter maintenance cycle interval. Range: Off or 1,000-10,000 hours, Default: 1,000 hours. Sets maintenance reminder frequency.
- None
* - ``airFilterAlarmElapsed``
- integer
- hours
- Elapsed operation time since last air filter maintenance reset.
- Operating hours elapsed since last air filter maintenance reset. Track this to schedule preventative replacement.
- None
* - ``cumulatedOpTimeEvaFan``
- integer
Expand Down Expand Up @@ -431,7 +431,7 @@ This document lists the fields found in the ``status`` object of device status m
* - ``heatMinOpTemperature``
- float
- °F
- Minimum operating temperature for the heating element. This sets the lower threshold at which the heating element can operate.
- Minimum heat pump operation temperature. Lowest tank temperature setpoint allowed in the current operating mode (95-113°F, default 95°F). When set, users can only set the target tank temperature at or above this threshold.
- ``raw + 20``
* - ``drOverrideStatus``
- integer
Expand Down
39 changes: 32 additions & 7 deletions docs/protocol/firmware_tracking.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ The following table tracks known fields that have been introduced in firmware up
* - ``heatMinOpTemperature``
- Controller: 184614912, WiFi: 34013184
- ``raw + 20``
- Minimum operating temperature for the heating element. Sets the lower threshold at which the heating element can operate.
- Minimum heat pump operation temperature. Lowest tank temperature setpoint allowed in the current operating mode (95-113°F, default 95°F).

Reporting New Fields
--------------------
Expand Down Expand Up @@ -127,18 +127,43 @@ Firmware Version History

This section tracks observed firmware versions and their associated changes.

**Latest Known Versions** (as of 2025-10-15):
**Latest Known Versions** (as of 2025-11-18):

- Controller SW Version: 184614912
- Panel SW Version: 0 (not used on NWP500 devices)
- WiFi SW Version: 34013184
API Firmware Information (from /device/firmware/info endpoint):

- **Software Code 33556241** (Controller):

- Current Version: 184614912
- Downloaded Version: 0

- **Software Code 268435985** (WiFi Module):

- Current Version: 34013184
- Downloaded Version: None

- **Software Code 268435761** (Unknown Module 1):

- Current Version: 60454
- Downloaded Version: None

- **Software Code 268435777** (Unknown Module 2):

- Current Version: 60454
- Downloaded Version: None

**Observed Features:**

- These versions include support for ``heatMinOpTemperature`` field
- Controller version 184614912 and WiFi version 34013184 include support for ``heatMinOpTemperature`` field
- Recirculation pump fields (``recirc*``) are present but not yet documented
- Additional modules (268435761, 268435777) with unknown purposes - may be related to auxiliary systems

**Firmware Mapping Notes:**

- Software Code 33556241: Appears to be the main controller firmware
- Software Code 268435985: Likely WiFi/network module firmware
- Software Codes 268435761, 268435777: Unknown purposes - potentially auxiliary modules or DSP/control chips

*Note: This tracking system was implemented on 2025-10-15. Historical firmware information is not available.*
*Tracking system updated on 2025-11-18 with current live device firmware versions.*

Contributing
------------
Expand Down
2 changes: 1 addition & 1 deletion docs/python_api/constants.rst
Original file line number Diff line number Diff line change
Expand Up @@ -310,7 +310,7 @@ Some fields were introduced in specific firmware versions:
{
"heatMinOpTemperature": {
"introduced_in": "Controller: 184614912, WiFi: 34013184",
"description": "Minimum operating temperature for heating element",
"description": "Minimum heat pump operation temperature",
"conversion": "raw + 20"
}
}
Expand Down
Loading