I am starting this topic to collection information about the Danfoss Air HRV Unit (Technically the CCM Module that connects to the Danfoss Air)
Overview
The Danfoss Air systems consists of three (minimum) devices in a non-openhab setup. A Danfoss Air Heat Exchanger (A2, A3, W1, W2) also called the Danfoss Air Unit. The unit is attached via cable to the Danfoss Air CCM by modbus (I think). The CCM is connected via Z-Wave to the Danfoss Air Dial.
The Danfoss CCM has two connections out, an ethernet link and a wireless Z-Wave connection. The ethernet connection is used for Service and Installation as well as setting up programs and other expert configurations.
The Z-Wave connection is used by the Air Dial (acting as a controller) to provide the room temperature, and control functions as boost, level, etc. and getting information such as temperatures in the system (outside intake, exhaust, inblow and suction), filter level, etc.
The CCM has the following command classes for Z-Wave
- Basic V1
- HRV Control Command Class
- HRV Status Command Class
- Manufacturer Proprietary
- Manufacturer Specific V1
- Version V1
I have successfully connected the Z-Wave interface to Zipato’s Zipabox where I was able to control the device on/off via the HRV control command class.
5 minutes conversation with Jon Suphammer (https://www.suphammer.net/) let me know that Danfoss uses the proprietary command to encapsulate their own protocol, just packaged as the z-wave command data. The protocol is called DEVILINK CC
I have ordered a https://www.suphammer.net/suphacap in order to fully log and debug the “conversation” however my initial suspicion is that the protocol is the same/similar to what @leaxi has discovered here: https://community.openhab.org/t/danfoss-air-unit-ethernet-connection/ but I will hopefully confirm that as soon as the device arrives (or if someone else has knowledge on the matter)
Why work on this when the ethernet is going well?
Because
- The Danfoss Unit is often placed in the ceiling or other remote places where a proper ethernet cable could be difficult to get to.
- The Z-Wave connection seems to be the preferred controlling method for the device
- Less points of failure, don’t want to spend time debugging my network because the HRV is not working.
- Options!
Next step
- I will confirm the protocol over the 0x91 command class.
I have though not been able to find any example on how to utilize the proprietary command class. I am unsure what the best approach is here? @chris is there a good way to do this in the Z-Wave 2.0 binding? Obviously you do not want to pollute the binding with very device specific code, but how else would it be possible to distribute? Is is possible to expand the z-wave in another binding?
References
https://products.z-wavealliance.org/products/179 (The actual CCM)
https://products.z-wavealliance.org/products/173 (What you would expect was the CCM)
https://community.openhab.org/t/danfoss-air-unit-ethernet-connection