You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/_integrations/duco.markdown
+33-18Lines changed: 33 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,7 @@ ha_platforms:
15
15
- sensor
16
16
ha_integration_type: hub
17
17
ha_quality_scale: bronze
18
+
ha_dhcp: true
18
19
ha_zeroconf: true
19
20
---
20
21
@@ -37,16 +38,31 @@ Compatible DucoBox models:
37
38
- DucoBox Energy Comfort / Energy Comfort Plus
38
39
- DucoBox Energy Premium
39
40
41
+
### Supported sensor modules
42
+
43
+
The following sensor module types are supported:
44
+
45
+
-**BOX**: The main ventilation box; provides fan control, ventilation state, and Wi-Fi signal strength.
46
+
-**UCCO2**: Wall-mounted CO₂ sensor unit; provides CO₂ concentration and CO₂ air quality index.
47
+
-**BSRH**: Humidity sensor module installed in the duct inlet of the DucoBox, wired directly to the PCB via cable; provides relative humidity and humidity air quality index.
48
+
-**UCRH**: Wireless humidity sensor module; provides relative humidity and humidity air quality index.
49
+
50
+
### Unsupported sensor modules
51
+
52
+
The following sensor module types are discovered but not yet supported:
53
+
54
+
-**UC**: Universal control unit (no sensor data exposed)
55
+
-**UCBAT**: Battery-powered sensor module
56
+
-**VLV**: Valve actuator
57
+
58
+
When Home Assistant discovers a node with an unsupported type, it logs a warning and skips that node. All other nodes continue to work normally.
59
+
40
60
## Prerequisites
41
61
42
62
- A Duco ventilation box with a DUCO Connectivity Board connected to your local network.
43
63
44
64
{% include integrations/config_flow.md %}
45
65
46
-
Your Duco ventilation box can be automatically discovered on your network when the device is connected and powered on. When Home Assistant discovers a new Duco device, it appears as a notification in the UI. Select the notification to complete the setup.
47
-
48
-
If automatic discovery does not work, you can manually add the integration by providing the IP address or hostname.
49
-
50
66
{% configuration_basic %}
51
67
Host:
52
68
description: "The IP address or hostname of your DUCO Connectivity Board on the local network, for example `192.168.1.10`. Only needed when setting up the integration manually."
@@ -56,9 +72,10 @@ Host:
56
72
57
73
The Duco system consists of multiple nodes. Each node appears as a separate device in Home Assistant, connected to the main ventilation box:
58
74
59
-
-**BOX** — the main DucoBox (fan control, ventilation state)
60
-
-**UCCO2** — a wireless CO₂ sensor module
61
-
-**BSRH** — a humidity sensor module installed inside the DucoBox
75
+
-**BOX**: The main DucoBox (fan control, ventilation state)
76
+
-**UCCO2**: A wall-mounted control unit with a built-in CO₂ sensor
77
+
-**BSRH**: A humidity sensor module installed in the duct inlet of the DucoBox
78
+
-**UCRH**: A wireless humidity sensor module
62
79
63
80
### Fan
64
81
@@ -74,7 +91,7 @@ The following actions are available:
74
91
-**Speed 100%**: High speed manual override.
75
92
-**Auto preset**: Same as speed 0%; hands control back to Duco.
76
93
77
-
When an external device (for example a CO₂ sensor or an RF wall switch) triggers a timed speed override on the Duco box, Home Assistant reflects the current ventilation level as a percentage. These timed states cannot be set from Home Assistant; writing a speed always uses the permanent manual mode (a continuous override with no time limit).
94
+
When a connected wall unit (such as a UCCO2) triggers a timed speed override on the Duco box, Home Assistant reflects the current ventilation level as a percentage. These timed states cannot be set from Home Assistant; writing a speed always uses the permanent manual mode (a continuous override with no time limit).
78
95
79
96
### Sensors
80
97
@@ -94,7 +111,7 @@ Available for CO₂ sensor modules. Shows the current CO₂ concentration in par
94
111
95
112
#### Humidity
96
113
97
-
Available for humidity sensor modules (BSRH). Shows the current relative humidity in percent.
114
+
Available for humidity sensor modules (BSRH, UCRH). Shows the current relative humidity in percent.
98
115
99
116
#### CO₂ air quality index
100
117
@@ -109,7 +126,7 @@ Indoor air quality ranges for CO₂:
109
126
110
127
#### Humidity air quality index
111
128
112
-
Available for humidity sensor modules (BSRH). Shows the humidity air quality score as a percentage (0–100%). This entity is disabled by default.
129
+
Available for humidity sensor modules (BSRH, UCRH). Shows the humidity air quality score as a percentage (0–100%). This entity is disabled by default.
113
130
114
131
Indoor air quality ranges for humidity:
115
132
@@ -228,8 +245,8 @@ The integration {% term polling polls %} the Duco box every 30 seconds. If you a
228
245
229
246
## Known limitations
230
247
231
-
- The Duco box enforces a rate limit of approximately 200 write requests per day (HTTP 429, error code 18). The integration handles this gracefully, and the firmware resets the quota automatically around midnight.
232
-
- Timed speed overrides set by external devices (such as an RF wall switch or a CO₂ sensor) cannot be triggered from Home Assistant. They are read-only: the current ventilation level is shown as a percentage, but setting a speed from Home Assistant always uses the permanent manual mode (a continuous override with no time limit).
248
+
- The Duco box enforces a rate limit of 200 write requests per day. When the limit is reached, the integration shows a notification and stops sending write requests until the quota resets automatically around midnight.
249
+
- Timed speed overrides set by a connected wall unit (such as a UCCO2) cannot be triggered from Home Assistant. They are read-only: the current ventilation level is shown as a percentage, but setting a speed from Home Assistant always uses the permanent manual mode (a continuous override with no time limit).
233
250
- When you deregister a sensor module via the Duco app or firmware, the node disappears from the Duco API and Home Assistant removes it automatically on the next data update. However, a BSRH humidity sensor that is physically disconnected from the box PCB (rather than deregistered via software) is not treated as deregistered by the firmware. Its node remains in the API indefinitely, so its entities will stay in Home Assistant until you deregister it through the Duco app.
234
251
235
252
## Troubleshooting
@@ -239,7 +256,7 @@ The integration {% term polling polls %} the Duco box every 30 seconds. If you a
239
256
If your Duco ventilation box is not automatically discovered:
240
257
241
258
- Ensure the device is powered on and connected to the same network as Home Assistant.
242
-
- Check that mDNS/Bonjour traffic is not blocked by your router or firewall.
259
+
- Check that mDNS/Bonjour traffic is not blocked by your router or firewall. If it is, the integration can still discover the device automatically via DHCP the next time the device renews its IP address lease.
243
260
- Verify the device name shows as "DUCO [MAC address]" in your router's device list or network scanner.
244
261
- Manually add the integration using the device's IP address if discovery continues to fail.
245
262
@@ -264,15 +281,13 @@ Home Assistant cannot reach the Duco box at the configured address. This can hap
264
281
265
282
#### Symptom
266
283
267
-
Setting the fan speed or preset mode fails with an error like:
284
+
Setting the fan speed or preset mode fails with a notification in the Home Assistant UI:
268
285
269
-
```text
270
-
Failed to set ventilation state: DucoError('Duco API error (429): {"Code":18,"Result":"FAILED"}')
271
-
```
286
+
> The Duco device has reached its daily write limit. Try again tomorrow.
272
287
273
288
#### Description
274
289
275
-
The Duco box enforces a write rate limit of 200 write requests per day. When the limit is reached, the box rejects further write requests with a 429 error until the quota resets around midnight.
290
+
The Duco box enforces a write rate limit of 200 write requests per day. When the limit is reached, the box rejects further write requests until the quota resets around midnight.
Copy file name to clipboardExpand all lines: source/_integrations/knx.markdown
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -617,7 +617,9 @@ type:
617
617
618
618
### Entity exposures
619
619
620
-
Expose Home Assistant entities to share their state or attributes with the KNX bus. Home Assistant automatically sends the current value whenever it changes and responds to read requests on the KNX bus.
620
+
Expose Home Assistant entities to share their state or attributes with the KNX bus. Home Assistant automatically sends the current value whenever it changes and responds to read requests on the KNX bus. This can be configured from the frontend in the KNX panel or via YAML.
621
+
622
+
{% details "Configuration of entity exposures via YAML" %}
Copy file name to clipboardExpand all lines: source/_integrations/melcloud.markdown
+27-5Lines changed: 27 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -93,13 +93,35 @@ The system cannot be turned on/off through the `climate` entities.
93
93
94
94
The following attributes are available for `sensor` platform entities:
95
95
96
-
- Room temperature for each zone
97
-
- Tank water temperature
98
-
-Outside temperature - 1°C precision, polled every 1-2 hours.
96
+
**Zone sensors** (per radiator zone):
97
+
98
+
-Room temperature
99
99
- Zone flow temperature, polled every 1-2 hours
100
-
- Zone flow return temperature, polled every 1-2 hours
100
+
- Zone return temperature, polled every 1-2 hours
101
101
102
-
Unlike air-to-air devices, air-to-water devices do not report energy consumption in an easily accessible manner.
102
+
**Device sensors:**
103
+
104
+
- Tank water temperature
105
+
- Outside temperature – 1°C precision, polled every 1-2 hours
106
+
- System flow temperature
107
+
- System return temperature
108
+
- Boiler flow temperature
109
+
- Boiler return temperature
110
+
- Mixing tank temperature
111
+
- Condensing temperature
112
+
- Heat pump frequency (compressor frequency in Hz)
113
+
- Demand percentage
114
+
- Daily heating energy:
115
+
- Consumed
116
+
- Produced
117
+
- Daily cooling energy:
118
+
- Consumed
119
+
- Produced
120
+
- Daily hot water energy:
121
+
- Consumed
122
+
- Produced
123
+
124
+
The daily energy sensors use the state class `total_increasing` and are compatible with the Energy Dashboard. Values reset at midnight in the MELCloud service timezone.
|`filename`| no |Path to the file to upload. | /media/image.jpg |
105
-
|`destination_folder`| no | Folder inside your `Apps/Home Assistant` app folder that is the destination for the uploaded content. Will be created if it does not exist. Supports subfolders. | Snapshots/2025 |
103
+
|`filename`| no |One or more local file paths to upload. Accepts a single string or a list of strings. | /media/image.jpg |
104
+
|`destination_folder`| no | Folder inside your `Apps/Home Assistant` app folder that is the destination for the uploaded files. Will be created if it does not exist. Supports subfolders. | Snapshots/2025 |
106
105
|`config_entry_id`| no | The ID of the OneDrive config entry (the OneDrive you want to upload to). | a1bee602deade2b09bc522749bbce48e |
0 commit comments