My girlfriend and I bought a new house! And with it, an (older) Itho Daalderop CVE ECO 2SP mechanical ventilation unit. Itho Daalderop is a Dutch brand selling ventilation appliances and heating systems. I believe they mostly sell their products in The Netherlands.
The above ventilation unit keeps the air in our house (specifically our bathroom, kitchen, and downstairs toilet) fresh by continuously exchanging indoor air with fresh outdoor air. It also came with a 868MHz RFT remote control to manually adjust the ventilation speed:
A minor inconvenience is that the unit does not automatically adjust the ventilation speed based on the indoor air quality (e.g. humidity). I therefore wondered if it would be possible to automate the unit via my Home Assistant instance, paired with a humidity sensor in the bathroom, instead of manually using the remote control whenever we take a shower. As it turns out (like many times before), other people were wondering the same thing far before me.
A quick search led me to a Tweakers topic called Itho Daalderop - open source wifi control add-on module. Tweaker arjenhiemstra, with help of the community and in spirit of open source, reverse engineered the communication protocol used by the Itho Daalderop ventilation units. He then developed an add-on module that can be connected to the ventilation unit’s PCB to enable WiFi control via MQTT. Arjen Hiemstra even open sourced everything on GitHub. The whole project was covered in a Tweakers review (Dutch).
Stuff like this warms my heart, where the power of open source and community collaboration enables us to extend the functionality of our devices beyond what the manufacturer provides ❤️.
Furthermore, he sells these add-on modules on his webshop for a reasonable price, and I decided to order one. The installation was quite straightforward, the add-on module comes with clear instructions (also in English) on how to connect it to the ventilation unit’s PCB 2x4-pin header:
First, I powered off the ventilation unit (in my case, unplugging the Perilex plug):
I then waited a few seconds to make sure all capacitors were discharged. Next, I opened the ventilation unit’s casing and opened the PCB compartment. Here you can see I already had my RFT remote control add-on module attached to that header:
I then detached the RFT remote control add-on module, and replaced it with Arjen’s WiFi add-on module (notice the same 2x4 pin header on the add-on module):
Arjen’s WiFi add-on module supports connecting the old RFT remote control add-on module on top, on its own 2x4-pin header, which is great! I therefore attached the RFT remote control module on top of it. Here’s how the final setup looked like:
Before closing everything up, I powered on the ventilation unit again to test if both the WiFi add-on module would power up and started broadcasting its own WiFi access point.
Try connecting to the WiFi access point broadcasted by the add-on module.
The SSID is nrg-itho-xxxx, where xxxx is a 4 character random string which differs per board, and the default password is password.
Once connected, open a web browser and navigate to http://nrg-itho-xxxx (again, replace those trailing 4 characters matching the SSID’s), or http://192.168.4.1.
You should see the web interface of the WiFi add-on module:
On the 'Systems settings' page, set a new password for the add-on module’s web interface, API and file editor. On the 'MQTT' page, connect it to the MQTT broker on your Home Assistant by providing the IP address, username, and password. Also turn on 'Home Assistant MQTT Discovery' to make Home Assistant automatically discover the ventilation unit.
Once configured, close up the ventilation unit again.
|
Note
|
If you, like me, already had an RFT remote control add-on module attached, and re-attached it on top of the WiFi add-on module, you will need to pair it again. Go to the 'RF devices' page, click 'Learn/Leave mode', and then simultaneously press the 1 and 3 (or Low and High) buttons diagonally opposite of each other, on the remote control pane, to start pairing mode. Once paired, you should see the remote control listed on the 'RF remotes' table below on the same page. |
The ventilation unit should now be controllable from Home Assistant:
From here you could for instance also add a fan card to your Home Assistant dashboard to manually control the ventilation speed:
If you have a humidity sensor in your bathroom and connected to Home Assistant (e.g. any of these), we can now automate the ventilation speed based on the humidity level in the bathroom. I decided to use the 🚿 Bathroom Humidity Exhaust Fan community blueprint by Blacky. I also needed to add 3 custom toggle helpers paired with an automation each, to set the Low, Medium, and High preset speeds based on the humidity level, and a derivative helper which the blueprint uses to determine whether to turn the fan on or off.
First, create 3 new toggle helpers, e.g. Bathroom Fan Low, Bathroom Fan Medium, and Bathroom Fan High.
Then create a derivative helper, e.g. Bathroom Fan Humidity Derivative, with a 'Precision' of '2' decimals, a 'Time window' of '0:03:00' (3 minutes), and a 'Time unit' of 'Minutes'.
Next, create the following 3 automations for Low, Medium, and High preset modes.
Here is the YAML for the Low preset mode automation as an example:
alias: Bathroom Fan Low Automation
description: ""
triggers:
- trigger: state
entity_id:
- input_boolean.bathroom_fan_low
to:
- "on"
conditions: []
actions:
- action: fan.set_preset_mode
metadata: {}
data:
preset_mode: Low
target:
entity_id: fan.nrg_itho_e9b0_fan
mode: singleRepeat the same for the Medium and High preset modes, changing the alias, entity_id and preset_mode values accordingly.
Now, import the 🚿 Bathroom Humidity Exhaust Fan blueprint into your Home Assistant instance, and create a new automation from it. Please refer to the blueprint documentation for detailed instructions on how to set it up and tailoring it to your environment. Here’s how I configured mine, for reference:
alias: Automatic Bathroom Fan Control
description: ""
use_blueprint:
path: Blackshome/bathroom-humidity-exhaust-fan.yaml
input:
trigger: sensor.bathroom_fan_humidity_derivative
bathroom_humidity_sensor: sensor.bathroom_temperature_humidity
fan_switch:
entity_id: input_boolean.bathroom_fan_high
include_max_humidity: maximum_humidity_enabled
max_humidity: 80
falling_humidity: -0.1
include_fan_speed: fan_low_speed_enabled
fan_speed_low:
- input_boolean.bathroom_fan_medium
fan_speed_off:
- input_boolean.bathroom_fan_low
month_winter_mode:
- "12"
- "1"
- "2"
winter_include_fan_speed: fan_low_speed_enabled
winter_max_humidity: 85
winter_include_max_humidity: maximum_humidity_enabled
include_winter_mode: winter_mode_enabledThat should be all. Time to take a shower (and test if it works)!