Anyone using Duco Ventilation Communication Print Ethernet module?

I’m looking for a way to add the sensor information into HA. There is a simple web interface available with information in tables. What is the best way to get started?

Best regards,

Albert

Hi Albert,

I just bought and installed the same system in my house yesterday. I’m also planning to integrate this into my HA installation. By the looks of it one can simply issue some get requests to change the fan settings. I’ll write some code lines this weekend for a first attempt to control the box and also get the pressure and power consumption into HA. It won’t be pretty but should work for now.

By the looks of it there’s also a MQTT feature (see Box Config Page). But I’m not sure how to use this. If I point it at my MQTT broker the thing resets itself with a new IP. I can’t find any documentation so might have to contact Duco directly.

In general it would be nice to get a proper integration for the Box in HA. So far I’ve only seen a couple of serial port to MQTT implementations.

If you are interested with helping with the development I’ll keep posting my efforts in this threat.

I created in sensors:

  • platform: rest
    name: Ducobox_Node1
    json_attributes:

(and did this for al 12 nodes to read the status, same as webinterface data)

also created input selectors (used to trigger automations)
duco_badkamer_mode:
name: Duco afzuiging badkamer
options:
- “AUTO”
- “CNT3”
- “MAN3”
icon: mdi:target
duco_kantoor_rooster_mode:
name: Duco rooster kantoor
options:
- “AUTO”
- “OPEN”

And created services to use in automations:
rest_command:
duco_box_cnt3:
url: ‘http://172.16.250.156/nodesetoperstate?node=1&value=CNT3
duco_box_cnt2:
url: ‘http://172.16.250.156/nodesetoperstate?node=1&value=CNT2
duco_box_cnt1:
url: ‘http://172.16.250.156/nodesetoperstate?node=1&value=CNT1
duco_box_auto:
url: ‘http://172.16.250.156/nodesetoperstate?node=1&value=AUTO

Fixed it all with Automations, if status inputselector then service rest command.

Hi, do you have any link or reference to that “ethernet” module?

And please can you format your previous post correct? :slight_smile:

See my post at https://www.linkedin.com/pulse/duco-homeassistant-albert-smit I’ll try to format it the right way next time :slight_smile: Info duco communication module: https://www.duco.eu/nl/producten/mechanische-ventilatie/toebehoren/communication-print

https://www.novaventum.nl/duco-configuration-yaml-homeassistant for full text version of my code

Thanks! Hmz… I have 1 duco… 140 euro to make it home assisted… :thinking:

If you have the 7 channel valve system, it’s a good investment. But with ‘basic’ 1-2-3 level powered box, it’s expensive.

@albertjSmit, so I have basically the same setup running now (yay for rainy weekend in NL).

I’m also pulling out the power consumption. Somehow the total pressure value seems static regardless of the fan level. I’ve tied things to my CO2 sensors and so far it’s working as intended.

@sender, AFAIK there are some other projects which use the serial port for connected (ESP or similar) but I’m not sure if you can actually set the fan speeds that way.

For completeness:

sensor:
## Duco Ventilation Box
  - platform: rest
    resource: http://192.168.1.127/nodeinfoget?node=1
    name: DucoBox
    json_attributes:
     - trgt
     - actl
     - ovrl
     - mode
     - error
    value_template: '{{ value_json.state }}'
  - platform: rest
    resource: http://192.168.1.127/boxinfoget
    name: DucoBox2
    json_attributes:
     - Performance
     - General
     - Calibration
    value_template: '{{ value_json.performance.powernow }}'

  - platform: template
    sensors:
      pressuretotal:
        friendly_name: 'Duco Total Pressure'
        value_template: '{{ states.sensor.ducobox2.attributes["Performance"]["PressureTotal"] | int }}'
        unit_of_measurement: kPa
      duco_powernow:
        friendly_name: 'Duco Power Now'
        value_template: '{{ states.sensor.ducobox2.attributes["Performance"]["PowerNow"] | int  }}'
        unit_of_measurement: Watt
      duco_poweravg:
        friendly_name: 'Duco Power Average'
        value_template: '{{ states.sensor.ducobox2.attributes["Performance"]["PowerAvg"] }}'
      duco_powermax:
        friendly_name: 'Duco Power Max'
        value_template: '{{ states.sensor.ducobox2.attributes["Performance"]["PowerMax"] }}'
      duco_error:
        friendly_name: 'Duco Error '
        value_template: '{{ states.sensor.ducobox.attributes["error"] }}'

### Rest Commands
rest_command:
  duco_fan_set_1:
    url: http://192.168.1.127/nodesetoperstate?node=1&value=CNT1
  duco_fan_set_2:
    url: http://192.168.1.127/nodesetoperstate?node=1&value=CNT2
  duco_fan_set_3:
    url: http://192.168.1.127/nodesetoperstate?node=1&value=CNT3

Yes, am aware. Already ordered the rf part.

Fan speed should be possible to set according to above and below.

Ducobox RF gateway

De RF gateway maakt gebruik van een CC1101 om de ducobox draadloos aan te sturen. De unit gedraagt zich als een CO2 bedieningsschakelaar. De unit registreert de actuele ventilatiemodus, kan de ventilatiemodus wijzigen en kan een override percentage instellen (ventilatiesnelheid ongeacht de gekozen modus).

Hello all. New to Duco. Have been playing with the JSON on nodeinfoget?node=3 etc., works great. Yet, in the installer-mode of the app I raised the max flow rate for the standard for the RH valve, since I want it ‘to suck harder’ when showering. :-).

The values I want to read are ‘automax’ and ‘capacity’.

Any idea where to find them?

Any idea where to find any documentation on JSON and the Duco API?

Thanks! Adriaan

Hi, I just received my DucoBox Energy Comfort with Communication Print. :slight_smile:

Reading through the above, it looks that its possible to get the integration working. Just wondering 2 things as last comm is 2 years ago.

If I want to have a wired connection to the unit that will allow for reading out the values and also allow to control the unit. What is the best and easiest way? Which of the 2 options above is best for it?

And as I am not electronic technician, I could use some extra assistants to make sure I am doing things right. Anyone able to give me some extra assistance? :slight_smile:

Have a lovely weekend.

Have a look here. Have it running perfect since last post above. Although and despite it’s not esphome…

Thanks for the quick response! However I dont understand the setup at the site. You need to buy extra hardware even though I have bought the communication print? Can you give me in a few bullet flow steps what needs to be done to get it to work? Its just confusing for me at the moment. I hope I can just use the communication print I bought and connect a network cable to it so I can get home assistant to work with it. Fingers crossed. :slight_smile:

Sorry, this is not a straight forward setup if you can’t solder or code. Although it ia the most complete setup since you can read and send commands.

Al you need to know is really in the link. Any detailed question happy to help, but not going to write up again whats already there.

Hi, so I dont need to buy any additional hardware and can just use the communication print and a rj45 Ethernet cable to connect to the unit for simple setup? This is not clear to me. I think I have found the steps under the wiki section. Home · arnemauer/Ducobox-ESPEasy-Plugin Wiki · GitHub I will have another look here.

You need to buy an esp board of around 4-5 euro

There is an even better way to integrate your Ducobox in HA : Click

Everything is opensource, software and hardware, all files are available online. There is support for DIY valve,s so you can open and close certain rooms to ventilate them/ stop ventilation.

One downside: RF is NOT supported

More information about the whole development can be found here: [Dutch] Click

Example integration Ducobox:

If you want one: checkout Github or Tindie.

Note: I was involved during the Design phase of the Valves/Controller

1 Like

This is great!!

I have a ducobox energy though… Do you have any clue whether those will be compatible too? Or supported in the future?