Skip to content
Open
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
5 changes: 3 additions & 2 deletions identified.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@ analysis.
| 38 | Internal Unit Temp | ×0.1 | °C | −2.2 – 21.8 | STATISTICAL | Tracks outdoor ambient +5°C offset; r=0.953 vs reg_39 — consistent with enclosure heat from inverter/compressor. AP mode label: "T3 Suction" |
| 39 | Outdoor Ambient Temp | ×0.1 | °C | −5.5 – 17.4 | STATISTICAL | Range consistent with UK ambient over logging period. AP mode label: "Evaporator Temp" |
| 40 | System Return Temp | ×0.1 | °C | 16.9 – 52.8 | CONFIRMED | Tracks Shelly return within −0.4°C during stable flow. Actual system return water temp (EWT). AP mode label: "T5 Return Temp" |
| 45 | Discharge Gas Temp | ×0.1 | °C | 17.3 – 84.1 | STATISTICAL | Only register reaching >60°C; r=0.922 vs flow temp; mean 7.6°C above condensing temp. AP mode label: "T10 Discharge" |
| 45 | Discharge Gas Temp | ×0.1 | °C | 17.3 – 84.1 | CONFIRMED | Only register reaching >60°C; r=0.922 vs flow temp; mean 7.6°C above condensing temp. AP mode label: "T10 Discharge" |
| 47 | Flow Rate | ×0.01 | l/min | — | NAMED | Sika VVX20 flow meter built into unit |
| 50 | Reported COP | ×0.01 | — | 2.75 – 5.97 | STATISTICAL | Mean 4.23 consistent with live COP; negative correlation with flow temp confirms higher lift → lower COP. Previously labelled "Suction Pressure" |
| 50 | Suction | ×0.01 | — | 2.75 – 5.97 | CONFIRMED | Cross-checked with HP installer page labelled: "Suction (bar). Previously labelled "Reported COP" |
| 51 | Compressor Speed | ×1 | % | 0 – 100 | STATISTICAL | Exact 0–100 range; correlates with compressor frequency |
| 52 | Fan Suction | ×1 | Pa | - | CONFIRMED | Cross-check with HP installer page labelled: "Fan suction (Pa)" |
| 53 | Compressor Frequency | ×0.1 | Hz | 0 – 60 | STATISTICAL | Raw 0–600 = 0–60 Hz; r=0.708 vs compressor speed % |
| 64 | Heat Output | ×1 (signed Int16) | W | Observed: −8,870 to +6,745 (AdamLC 24h, 13 Apr 2026). Theoretical Int16: ±32,767 | CONFIRMED | r=0.999 vs flow×ΔT thermal calculation (heating, original identified.md analysis). Signed interpretation confirmed by two installations 13 Apr 2026: AdamLC defrost peaks −8,276 W / −8,870 W (raw 57,260 / 56,666); Stu startup transients −4 to −893 W. R48 phases during defrost validate reverse-cycle physics (3.85 bar equalized at entry, ~16 bar at peak-negative R64). |
| 66 | Operating Mode | ×1 | enum | 0 – 3 | STATISTICAL | Discrete values 0/1/2/3 — likely Off / Heating / DHW / Defrost. Requires operational confirmation |
Expand Down
9 changes: 9 additions & 0 deletions qsh-modbus-sniffer/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
# Changelog

## 4.10.0 - 2026-07-26

### Revise registers based on cross-validation

Updated the following registers based on HP installer page
`Cosy Modbus Reg 52` -> `Fan suction`
`Cosy DHW Cylinder Temp` -> `Discharge Gas Temp`
`Cosy Reported COP` -> `Suction`

## 4.9.0 - 2026-07-26

### Breaking
Expand Down
2 changes: 1 addition & 1 deletion qsh-modbus-sniffer/config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: "QSH Modbus Sniffer"
description: "Passive Modbus RTU sniffer for Octopus Cosy 6 heat pump. Captures all traffic between hub and outdoor unit via Waveshare RS485-to-WiFi gateway."
version: "4.9.0"
version: "4.10.0"
slug: "qsh_modbus_sniffer"
url: "https://github.com/stuartleeks/qsh-modbus-sniffer"
arch:
Expand Down
23 changes: 9 additions & 14 deletions qsh-modbus-sniffer/rootfs/opt/qsh/cosy6_decoder.py
Original file line number Diff line number Diff line change
Expand Up @@ -160,12 +160,11 @@
# Previously misnamed "Condenser Mid Temp" — regs 29/30 are the actual
# condenser (refrigerant) sensors. This is the water side.
44: {"name": "T9 Flow Temp", "scale": 0.1, "unit": "°C", "icon": "mdi:thermometer-water", "class": "temperature"},
# CONFIRMED: DHW cylinder temp. During active DHW cycle (2026-02-18
# 06:30-08:21), read 52.4°C rising to 54.4°C toward 55°C setpoint.
# Range 22-82°C spans ambient (off) through DHW boost temperatures.
# CONFIRMED: Compressor discharge gas temp. Matches HP installer page.
# Previously misnamed "DHW Cylinder Temp" - not available via Modbus
# Previously misnamed "Compressor Shell Temp" — reg 56 is the actual
# discharge temp (40.8°C), confirming this is NOT a compressor sensor.
45: {"name": "DHW Cylinder Temp", "scale": 0.1, "unit": "°C", "icon": "mdi:thermometer-high", "class": "temperature"},
45: {"name": "Discharge Gas Temp", "scale": 0.1, "unit": "°C", "icon": "mdi:thermometer-high", "class": "temperature"},
# CONFIRMED (defrost validated, R290 cross-check): Primary frost signal.
# Steady state 5.8-7.8°C. Drops to 0°C at defrost trigger.
# Spikes to 37-55°C during hot gas defrost, decays as ice melts.
Expand Down Expand Up @@ -206,16 +205,12 @@
# 13 bar → 35.1°C (matches condenser inlet R29). 5 bar → 4.8°C (matches
# equalized evaporator R55). Closed.
48: {"name": "Discharge Pressure", "scale": 0.01, "unit": "bar", "icon": "mdi:gauge-full", "class": "pressure"},
# STATISTICAL (identified.md + 2026-04-05 analysis): Reported COP.
# Raw range 236-635 at scale ×0.01 = 2.36-6.35 (unitless ratio).
# identified.md: mean 4.23, negative correlation with flow temp (higher
# lift → lower COP). Cross-validated: reg_64/reg_27 implied COP ≈ 3.94,
# Δ = 7% from reg_50 — within measurement uncertainty.
# 2026-04-05: inversely correlated with power/heat output. Mode means:
# idle 52.9 (/100=5.3), heating 35.6 (/100=3.6), DHW 32.0 (/100=3.2).
# Higher COP at idle is physically expected (no lift, residual circulation).
50: {"name": "Reported COP", "scale": 0.01, "unit": "", "icon": "mdi:gauge", "class": None},

# CONFIRMED: Cross-validated with HP installer page during DWH cycle.
# Previously Reported COP but unlikely to be provided via Cosy
50: {"name": "Suction", "scale": 0.01, "unit": "bar", "icon": "mdi:gauge", "class": "pressure"},
# CONFIRMED: Cross-validated with HP installer page during DHW cycle
52: {"name": "Fan Suction", "scale": 1, "unit": "Pa", "icon": "mdi:gauge", "class": "pressure"},

# --- Flow Rate ---
# NAMED: Second sniffer matched to "Flow Rate" from HP installer page.
# Value 1714. Units unclear — if ×0.01 = 17.14 l/min.
Expand Down