Skip to content

Commit a4a63a3

Browse files
authored
Merge pull request #81 from eman/docs-update
documentation updates
2 parents 6fac265 + 819e54b commit a4a63a3

21 files changed

Lines changed: 168 additions & 255 deletions

README.rst

Lines changed: 11 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ nwp500-python
55
Python library for Navien NWP500 Heat Pump Water Heater
66
========================================================
77

8-
A Python library for monitoring and controlling the Navien NWP500 Heat Pump Water Heater through the Navilink cloud service. This library provides comprehensive access to device status, temperature control, operation mode management, and real-time monitoring capabilities.
8+
A Python library for monitoring and controlling the Navien NWP500 Heat Pump Water Heater through the Navilink cloud service.
99

1010
**Documentation:** https://nwp500-python.readthedocs.io/
1111

@@ -32,25 +32,21 @@ Installation
3232
Basic Installation (Library Only)
3333
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3434

35-
For using the library as a Python package without the CLI:
35+
For using the library as a Python package:
3636

3737
.. code-block:: bash
3838
3939
pip install nwp500-python
4040
41-
This installs the core library with support for API and MQTT clients. No CLI framework is required.
42-
4341
Installation with CLI Support
4442
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4543

46-
To use the command-line interface with rich formatting and colors:
44+
To use the CLI with rich formatting and colors:
4745

4846
.. code-block:: bash
4947
5048
pip install nwp500-python[cli]
5149
52-
This includes both the ``click`` CLI framework and the ``rich`` formatting library for enhanced terminal output with formatted tables, progress bars, and colored output.
53-
5450
Basic Usage
5551
-----------
5652

@@ -111,9 +107,9 @@ Monitor your device in real-time using MQTT:
111107
Command Line Interface
112108
======================
113109

114-
The library includes a command line interface for monitoring and controlling your Navien water heater.
110+
Monitor and control your Navien water heater from the terminal.
115111

116-
**Installation Requirement:** The CLI requires the ``cli`` extra:
112+
**Installation Requirement:**
117113

118114
.. code-block:: bash
119115
@@ -218,39 +214,18 @@ Quick Reference
218214
Device Status Fields
219215
====================
220216

221-
The library provides access to comprehensive device status information:
222-
223-
**Temperature Sensors**
224-
* Water temperature (current and target)
225-
* Tank upper/lower temperatures
226-
* Ambient temperature
227-
* Discharge, suction, and evaporator temperatures
228-
* Inlet temperature
229-
230-
**System Status**
231-
* Operation mode (Heat Pump, Energy Saver, High Demand, Electric, Vacation)
232-
* Compressor status
233-
* Heat pump and electric heater status
234-
* Evaporator fan status
235-
* Tank charge percentage
236-
237-
**Power & Energy**
238-
* Current power consumption (Watts)
239-
* Total energy capacity (Wh)
240-
* Available energy capacity (Wh)
241-
242-
**Diagnostics**
243-
* WiFi signal strength
244-
* Error codes
245-
* Fault status
246-
* Cumulative operation time
247-
* Flow rates
217+
The library provides access to comprehensive device status information. See the `full documentation <https://nwp500-python.readthedocs.io/>`_ for all available fields.
248218

249219
Documentation
250220
=============
251221

252222
Full docs: https://nwp500-python.readthedocs.io/
253223

224+
Home Assistant Integration
225+
==========================
226+
227+
Use this library with Home Assistant: `ha_nwp500 <https://github.com/eman/ha_nwp500>`_
228+
254229
Data Models
255230
===========
256231

docs/enumerations.rst

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
Enumerations Reference
22
======================
33

4-
This document provides a comprehensive reference for all enumerations used in
5-
the Navien NWP500 protocol.
4+
This document lists all enumerations used in the Navien NWP500 protocol.
65

76
Device Control Commands
87
-----------------------
@@ -222,7 +221,7 @@ rounding algorithms when converting internal Celsius values to Fahrenheit:
222221
- **ASYMMETRIC** (Type 0): Special rounding based on raw value remainder
223222
- **STANDARD** (Type 1): Simple round to nearest integer
224223

225-
This ensures the mobile app matches the device's built-in display exactly.
224+
This keeps the mobile app display in sync with the device's built-in display.
226225

227226
Device Type Enumerations
228227
-------------------------

docs/guides/advanced_features_explained.rst

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
1-
Advanced Features Explained: Weather-Responsive Heating, Demand Response, and Tank Stratification
2-
==================================================================================================
1+
Weather Response, Demand Response, and Tank Stratification
2+
===========================================================
33

4-
This document provides comprehensive technical documentation for three advanced NWP500 features.
4+
This document covers three advanced NWP500 features.
55

66
Overview of Advanced Features
77
-----------------------------
88

9-
The NWP500 heat pump water heater implements sophisticated algorithms for grid integration, environmental responsiveness, and efficiency optimization:
9+
The NWP500 heat pump water heater implements algorithms for grid integration, environmental responsiveness, and efficiency optimization:
1010

1111
1. **Weather-Responsive Heating** - Adjusts heating strategy based on ambient temperature conditions
1212
2. **Demand Response Integration** - Responds to grid signals for demand/response events (CTA-2045)
13-
3. **Tank Stratification Optimization** - Uses dual temperature sensors for enhanced heating efficiency
13+
3. **Tank Stratification Optimization** - Uses dual temperature sensors for improved heating efficiency
1414

1515
Weather-Responsive Heating
1616
==========================
1717

1818
Feature Overview
1919
----------------
2020

21-
The device continuously monitors ambient air temperature to optimize heat pump performance and adjust heating strategies. This enables the system to maintain comfort while adapting to seasonal conditions automatically.
21+
The device continuously monitors ambient air temperature to optimize heat pump performance and adjust heating strategies based on seasonal conditions.
2222

2323
Technical Implementation
2424
------------------------
@@ -230,12 +230,6 @@ Implementation in Device Firmware
230230
3. **Grid Stability**: Participate in demand response events, earn utility incentives
231231
4. **Cost Reduction**: Shift heating to low-price periods automatically
232232

233-
Utility Integration Requirements
234-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
235-
236-
To use demand response with your NWP500:
237-
238-
239233
Tank Temperature Sensors
240234
------------------------
241235

docs/guides/auto_recovery.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ Refresh authentication tokens before retrying (handles token expiry).
127127
await mqtt_client.subscribe_device_status(device, on_status)
128128
await mqtt_client.start_periodic_requests(device)
129129
130-
**Pros:** Handles token expiry, more robust
130+
**Pros:** Handles token expiry, more reliable
131131

132132
**Cons:** More complex, need to manage client lifecycle
133133

@@ -453,4 +453,4 @@ For production use, **use Strategy 4 (Exponential Backoff)** via the ``Resilient
453453
* Subscription restoration
454454
* Configurable limits and delays
455455

456-
This ensures your application stays connected even during extended network outages.
456+
Your application will stay connected even through extended network outages.

docs/guides/command_queue.rst

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,12 @@ Queue Management
5454

5555
**Internal Components:**
5656

57-
- ``QueuedCommand`` dataclass - Stores command details (topic, payload, QoS, timestamp)
58-
- ``_command_queue`` - Deque with maximum length for efficient FIFO operations
59-
- ``_queue_command()`` - Internal method to add commands to queue
60-
- ``_send_queued_commands()`` - Internal method to process queue on reconnection
57+
Internally, the queue uses a fixed-length deque for O(1) operations and FIFO ordering. You do not need to interact with these components directly.
6158

6259
Integration with Reconnection
6360
------------------------------
6461

65-
The command queue integrates seamlessly with the existing automatic reconnection feature:
62+
The command queue works with the existing automatic reconnection feature:
6663

6764
1. Connection is lost
6865
2. Commands sent during disconnection are queued
@@ -231,7 +228,7 @@ Benefits
231228
========
232229

233230
1. **No Lost Commands** - Commands sent during disconnection are preserved
234-
2. **Automatic Recovery** - Works seamlessly with auto-reconnection
231+
2. **Automatic Recovery** - Works with auto-reconnection
235232
3. **Transparent** - Works automatically without user intervention
236233
4. **Configurable** - Adjust queue size or disable if needed
237234
5. **Monitorable** - Query queue status at any time
@@ -247,7 +244,7 @@ The command queue feature is designed with reliability and ease of use in mind:
247244
- **Enabled by default** - Most users want commands preserved during network issues
248245
- **Automatic operation** - No manual queue management required
249246
- **Configurable** - Can be disabled or tuned for specific use cases
250-
- **Integrated** - Works seamlessly with automatic reconnection
247+
- **Integrated** - Works with automatic reconnection
251248

252249
Use Cases
253250
=========

0 commit comments

Comments
 (0)