Danfoss ECL110 modbus Elfin-EW11 (RS485 to wifi) Floor Heating Climate Control

Hello!

This is my first post here! I’m playing around with HA since some time and I manage to connect my heating system to HA and I wanted to share my solution (since I spend quite some time to make it work).
I am using the Elfin-EW11 that is a RS485 to wifi converter, used as a TCP-server in STA wifi mode.

I used the integration of /Ingramz/ecl110 and /JohNan/homeassistant-danfoss_ecl_modbus/tree/main to make it happen.

I have the Danfoss ECL 110 Application 130 in my swedish house, controlling the floor heating temperature.
I only have 2 sensor connected to it: S1 actual outdoor temperature & S3 actual flow temperature.
(S2 actual room temperature and S4 actual return temperature are not connected, the supplier indicated that it is not needed in their usual installation, I would disagree but it works ok this way)

By removing the bottom front cover, we can see the modbus (PCB with 4 pads). It probably exists a connector for it (25.002.0453) but I could only order 50 so I open to the top part (with a flat screwdriver from the behind top, two small notches help to open it).
Then the PCB is exposed and I solder two wires on the 2 middle connector (A & B).


I cannot use the GND and 5V to power to Elfin-EW11, it draws too much current and the ECL110 will reboot constantly.

I put back to front screen and pass the cable through the pass-hole,
I use the 4 pin connectors to plug A & B following the right order indicated on the ethernet connector.

I cut a old USB cable to connect the +5V and GND and connect to an wall adapter. I check with the multimeter that I have 5V.

Then I can connect the Elfin-EW11 with the wifi antenna:

The I configure the Elfin-EW11, connect direclty by wifi and access its configuration page on 10.10.100.254 (ID: admin pwd: admin) and set it as “STA” in system stetting, and add my router information.
In Serial port setting:

  • Baud Rate: 19200
  • Data bit: 8
  • Stop Bit: 2
  • Parity: Even
  • Protocol: Modbus

I submit and restart the device from the Others tab.
I try to find its IP address (with Fing, or with the router app)

Then from home assistant, I add this in my configuration.yaml:

modbus:
  - name: danfoss_ecl
    type: tcp
    host: [your EW11 IP address]
    port: 502

    sensors:
      - name: "ECL Outside Temp"
        address: 11200
        slave: 5
        input_type: holding
        data_type: int16
        scale: 0.1
        precision: 1
        unit_of_measurement: "°C"
        device_class: temperature

      - name: "ECL Flow Temp S3"
        address: 11202
        slave: 5
        input_type: holding
        data_type: int16
        scale: 0.1
        precision: 1
        unit_of_measurement: "°C"
        device_class: temperature

      - name: "ECL Pump Status"
        address: 4001
        slave: 5
        input_type: holding
        data_type: int16

      - name: "ECL S2 Desired Room Temp"
        address: 11228
        slave: 5
        input_type: holding
        data_type: int16
        scale: 0.1
        precision: 1
        unit_of_measurement: "°C"
        device_class: temperature

    climates:
      - name: "ECL 110 Control"
        unique_id: ecl110_climate_control
        slave: 5
        address: 11179
        target_temp_register: 11179
        input_type: holding
        data_type: int16
        scale: 1
        precision: 1
        max_temp: 30
        min_temp: 10
        temp_step: 1
        temperature_unit: C

Then in my dashboard I can add the correct tile and check the correct functioning

In the Elfin-EW11 configuration page, in “Communication State - ‘netp’”, the IP address shown should be the one from your HA.

Then I check that changing the temperature from HA is changing the ECL110 confort temperature, and the other way.

Then I can finally remotly control my floor heating system from my phone! Only cost me 10€.
There is Ngenic that is a all in one solution but an expensive monthly subscription.
I could have upgrade my device to ECL120 but this is expensive.

I started to use johNan integration, but my outside temperature was wrong and I couldn’t fix it. I did this mannual configuration and it is quite simple this way.

I hope it will help someone, at least I have a written track of my improvement.

Cheers :slight_smile:

1 Like