Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

iRT-ESP without Moduline 30? #6

Closed
jperquin opened this issue Aug 21, 2020 · 13 comments
Closed

iRT-ESP without Moduline 30? #6

jperquin opened this issue Aug 21, 2020 · 13 comments
Labels
question Further information is requested

Comments

@jperquin
Copy link

Question
Can the iRT-ESP be used without a room thermostat, ie. Moduline 30?

Device information
Set-up: Nefit Ecomline HR from 1997, keesbbq's ift modified complete kit, zwave radiator thermostats for individual zone control and home assistant for the boiler / radiator logic.
Current non-domotica install depends on a Honeywell Chronotherm III (just on/off control connected to ports 1 and 2 of the UBA 4000) and I am not sure if buying a Nefit Moduline 30 makes sense for me.
Instead I was thinking to just install the iRT_EMS to ports 5 and 6.

Am I on the right track?

@jperquin jperquin added the question Further information is requested label Aug 21, 2020
@Victor-Mo
Copy link
Owner

@jperquin That is what the active mode is for. That will allow you the request a certain water temperature from the boiler.

The irt board should be connected to connections 3 and 4 on the UBA and a wire between 1 and 2. (See attached picture). There should not be any other devices on the bus. (The iRT bus is very sensitive). The iRT board should be externally powered (USB bus).

I am running a similar setup. I have the older Conrad FHT-80 devices for controlling the radiators. I use a Culfw USB dongle to pickup the communication to the FHT-80 devices (opening percentage of the radiators) and combine that with the outside temperature to calculate the requested water temperature. The iRT board then requests this from the UBA.

active_mode_small

@jperquin
Copy link
Author

jperquin commented Aug 22, 2020

Hi Victor,

Thanks for your quick response.

Looking at the package (corresponds to the pic below, except mine is V 1.6), will I be using the mini board (4 pins), 100k resistor and 3-lead cable (yellow/blk/red)?

Suppose the whole unit is powered via the wemos micro-usb port?

ems-gw-irt-2

@Victor-Mo
Copy link
Owner

Hi,

The complete board will be powered by the USB connector on the wemos. You need to connect the iRT bus to the two blue screw terminals. The rest (the 100k, 4 pin mini PCB, the 3 wire lead and 3.5 mm lead) are not necessary. They are used if you convert the board back to EMS.

Just to double check, you did order the board as iRT board ? It should then be ready to go.

@bbqkees
Copy link

bbqkees commented Aug 25, 2020

@jperquin If you purchased an iRT modified board its ready to go.
The resistor, buck and jack cable are included to revert back to EMS in case you replace the old boiler for a new Nefit boiler.

@jperquin
Copy link
Author

Thanks Kees.

Had connected the board "as received" but did not get it to communicate with the boiler, so soldered the provided 100k Ohm resistor and no luck either.

Will try again after removing the resistor and advise.

@jperquin
Copy link
Author

jperquin commented Aug 25, 2020

..we have lift-off!

Currently getting following string via MQTT Explorer on boiler data:
{"wWSelTemp":88,"selFlowTemp":0,"selBurnPow":0,"pumpMod":0,"outdoorTemp":0,"wWCurTmp":63,"curFlowTemp":58,"retTemp":58,"boilTemp":0,"wWActivated":"on","wWOnetime":"off","burnGas":"off","heatPmp":"on","fanWork":"off","ignWork":"off","heating_temp":88,"wWHeat":"off","burnStarts":0,"burnWorkMin":0,"ServiceCode":"0y","ServiceCodeNumber":7}

Could use some guidance on which parameters to control and what the exact MQTT publish command should look like.

Help much appreciated.

@jperquin
Copy link
Author

Had a look at the original tweakers post here and have copied the HA sensors and climate logic from @mafradon.
Apparently mafradon has made some changes to the logic and I was wondering if those have been incorporated in the latest FW build, as I am getting this error:
Screenshot 2020-08-25 at 17 19 28

@Victor-Mo
Copy link
Owner

@jperquin Great news that it is working !

There are two things you can actively control via MQTT. If the warm water production is on or off and the requested flow temperature (for heating).

Below some example, adjust the topic to your setup:

Warm water on:
topic: home/irt-esp/boiler_cmd_wwactivated
data: on

Warm water of:
topic: home/irt-esp/boiler_cmd_wwactivated
data: off

Request flow temp
topic: home/irt-esp/boiler_cmd
data: {"cmd":"flowtemp",data:45}

If you request a flow temperature of more than 10 degrees celsius the boiler will start and try to reach the requested flow temperature. if you request a flow temperature less the 10 degrees the boiler will stop. The firmware will try to optimise the burnerpower of the boiler to reach and maintain the request flow temperature. If the requested temperature is lower then the current flow temperature the boiler will stop but keep the pump running until the temperature is below the requested temperature and then it will start again. The PID controller in the firmware will try to optimise the burner power to prevent the boiler from stopping and starting.

I have not seen the changes @mafradon made, but I also have not tried his home assistant configuration.

@jperquin
Copy link
Author

Thanks Victor.

For HA to publish the correct MQTT command to set the desired flowtemp it can only send a number, not json template data (like {"cmd":"flowtemp",data:45}).

I tried publishing the desired number to "ems-esp/boiler_cmd_flowtemp" but that's not doing anything..

@Victor-Mo
Copy link
Owner

I use a custom piece of c code on an old NLSU2 to publish/control flow temp (long story). I am not a HA expert, but I googled a bit and this topic: publish-mqtt-message-in-json-format explains how to publish a HA value in a JSON format.

The topic 'ems-esp/boiler_cmd_flowtemp' does not exist.

@jperquin
Copy link
Author

jperquin commented Sep 3, 2020

I ended up with the following config for climate.yaml:

- platform: mqtt
  name: Cv Ketel
  modes:
    - "auto"
    - "off"
  min_temp: 0
  max_temp: 80
  temp_step: 1
  current_temperature_topic: "ems-esp/boiler_data"
  temperature_state_topic: "ems-esp/boiler_data"
  mode_state_topic: "ems-esp/boiler_data"
  current_temperature_template: "{{ value_json.curFlowTemp }}"
  temperature_state_template: "{{ value_json.selFlowTemp }}"
  mode_state_template: "{% if value_json.wWActivated == 'off' %} off {% else %} auto {% endif %}"
  temperature_command_topic: "ems-esp/setpoint"
  mode_command_topic: "ems-esp/boiler_cmd_wwactivated"

and an automation that gets triggered by the (dummy) ems-esp/setpoint topic, which then fires the correctly formatted json to ems-esp/boiler_cmd

automations.yaml:

- id: '1598377832108'
  alias: EMS-ESP setpoint converter
  description: ''
  trigger:
  - entity_id: sensor.setpoint_flow_temperature
    platform: state
  condition: []
  action:
  - data:
      payload_template: '{"cmd":"flowtemp",data:{{ states.sensor.setpoint_flow_temperature.state
        | int }}}'
      retain: true
      topic: ems-esp/boiler_cmd
    service: mqtt.publish
  mode: single

@jperquin
Copy link
Author

jperquin commented Sep 3, 2020

Would be nice if the warmwater temp could also be set to a specific target temperature, not just on or off..

@Victor-Mo Victor-Mo mentioned this issue Sep 15, 2020
@Victor-Mo
Copy link
Owner

I have not been able to find a message that can set the target warm water temperature. I think it can only be set on the boiler itself. Closing this issue (it can always be reopened).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants