Beer always hepls
My installation is kind of second circulation floor heating for bathroom, sauna and laundry room. Geothermal pump is doing the heating and Ouman is just adjusting the floor heating. So I have to make Thermia pump curve and Ouman curve to dance the same song. Or actually Ouman is doing it by itself. I made this fine tune (and kuivausjakso) thing in the first place from same reason you have, my wife isnât HA user at all so I stamped a Ikea Zigbee button to laundry room wall. Now she can just push the button after she (or mostly I) takes the laundry out of the machine to dry. Graph showing the on going water temp would be straight line, but I have automation to stop the heatpump when spot prices are too high.
Hi, I tried looking for register 1004 towards my Ouman
curl http://ip.ip.ip.ip:port/request\?S_1004_85 --output -
request?S_1004_85=Relä inte i funktion;#
and I get this which translates to âRelay not in useâ, seems I donât use this feature so canât help out unfortunately.
Could you please explain what this function does on register 1004 so I can add it to my registers list on Github, this is a register currently missing in my documentation here Ouman-EH800---Home-Assistant/registers.txt at f5bb9c351799a39a2cea4c6b0943396901c4e1e1 ¡ Belaial/Ouman-EH800---Home-Assistant ¡ GitHub
Hi
Register 1004 is state of the Ouman relay in EXU-800 module. Itâs only read register. Answers are ârequest?S_1004_85=ONâ or ârequest?S_1004_85=OFFâ. Request working well, but HA value-template is not working. I was trying that value_template and Paylod_on and Payload_off, but these not working. And extra measurement registers are little different what I was read (237, 283 and 347). These works well. I think extra measurements could be in different registers depending Ouman configuration.
Added info about register 1004, thank you for that.
Regarding the value-template not working itâs harder for me to help there since I donât use that relay.
Maybe you need to implement a command_state: like in this example of a switch
According to the HA specs I understand that you have to set payloads for ON and OFF states:
- binary_sensor:
name: relay
command: curl "{{ states('input_text.ouman_eh800_ip')}}request?S_1004_85" | cut -d "=" -f2 | cut -d ";" -f1
payload_on: ON
payload_off: OFF
Hello all!
My brother has a Ouman in his garage for floor heating and we have setup Home Assistant to control heat sources and get inputs from solar panel production and electric prices to make automations ![]()
By following this great thread, we have managed to add temps sensors and basic adjustment of the ouman.
We are trying to make a climate entity in HA for the Ouman where one can adjust set temperaure, feedback of actual temperatur, home/away/off modes. But our limited level of coding competence is unfortunately blocking us from getting this done.
Do you have any suggestions on how to get this done?
If anyone needs to calculate lämmitystarveluku S17 in official way (used in Finland), hereâs one possible way to do it. Outdoor temp is required information, it can be read from EH-800.
A heads up to people using this, it seems that HA 2024.8.0 breaks our little project, all I get after upgrading now on all my Ouman sensors is,
This entity is no longer being provided by the command_line integration. If the entity is no longer in use, delete it in settings.
I have not yet had time to look into solving it.
EDIT
It seems itâs not the HA 2024.8.0 that broke it, seems my EH800 have suffered a dead Ethernet port⌠I get no response from ping or anything soâŚ
Can confirm EH-800 working as before, running Core 2024.8.1, operating system 13.0., updated couple days ago.
Yeah, as mentioned in my edit of previous message, dead Ethernet port om my Ouman⌠800⏠for a new one ![]()
Thereâs no repair / replacement service? Did you disassemble the failed one, pictures of its internals would be nice ![]()
(side note before my reply, sorted it via my insurance company, they where super helpful, more than the Ouman broke in a thunderstorm)
Thereâs no repair / replacement service?
Not sure, have not checked into that.
Did you disassemble the failed one, pictures of its internals would be nice
Only as far as I needed to see the PCB with the IC that I presume is the one that controls the Ethernet port.
Since all was sorted via insurance I did not bother more than this, also I needed to turn in the broken one so, also I donât own a hot air soldering station so would have been a hassle to try and replace the IC.
I could not see any burnt areas on the PCB, so a good bet would have been to replace that SMSC 8700c-AEZG.
Adding Ouman EH800 Floor Heating Controller as a Climate Entity in Home Assistant
Iâve integrated the Ouman EH800 floor heating controller into Home Assistant (HA) as a climate entity. If youâre looking to achieve the same, hereâs a step-by-step guide on how I did it.
Overview
Rather than adjusting the heat curve directly on the Ouman, I set all three curve values to the same target and manage this target via Home Assistant. This allows for seamless control of the heating curve from HA.
Step 1: Create an Input Number Helper
First, create an input number helper to set the target temperature in configuration.yaml:
input_number:
heating_curve:
name: Heating Curve
min: 4
max: 30
step: 1
unit_of_measurement: "°C"
icon: mdi:thermometer
Step 2: Control the Heating Curves via Shell Commands
Next, add shell commands to set the three heating curve setpoints on the Ouman device based on the input number helper:
shell_command:
ouman_logon: 'curl "http://192.168.1.134:80/login?uid=xxxxxx;pwd=yyyyyy;" > /dev/null'
ouman_set_heating_curve: >
curl "http://192.168.1.134:80/update?S_61_85={{ states('input_number.heating_curve') }};" ;
curl "http://192.168.1.134:80/update?S_63_85={{ states('input_number.heating_curve') }};" ;
curl "http://192.168.1.134:80/update?S_65_85={{ states('input_number.heating_curve') }};"
Step 3: Add Sensors for Monitoring
I also added sensors to monitor the current floor temperature and the setpoint from the Ouman controller:
command_line:
- sensor:
name: Ouman EH800 - Floor Temperature
command: 'curl "http://192.168.1.134:80/request?S_259_85" | cut -d '';'' -f 1 | cut -b 18-'
unit_of_measurement: "°C"
unique_id: sensor.ouman_eh800_temperatur_golv
- sensor:
name: Ouman EH800 - Setpoint Temperature
command: 'curl "http://192.168.1.134:80/request?S_275_85" | cut -d '';'' -f 1 | cut -b 18-'
unit_of_measurement: "°C"
unique_id: sensor.ouman_eh800_temperatur_setpoint
Step 4: Create the Climate Entity
For the climate entity, I used the hass-template-climate integration. This lets you build a custom climate entity from any sensor data. Hereâs the configuration I used for the Ouman EH800:
climate:
- platform: climate_template
name: Ouman EH800 Thermostat
unique_id: ouman_eh800_thermostat
modes:
- "heat"
min_temp: 8
max_temp: 30
target_temperature_template: "{{ states('sensor.ouman_eh800_temperatur_setpoint') | float }}"
set_temperature:
service: input_number.set_value
data:
entity_id: input_number.heating_curve
value: "{{ temperature }}"
current_temperature_template: "{{ states('sensor.ouman_eh800_temperatur_golv') | float }}"
availability_template: "{{ states('sensor.ouman_eh800_temperatur_radiator') not in ['unknown', 'unavailable'] }}"
Step 5: Automation to Ensure Setpoint Update
Occasionally, the setpoint doesnât update immediately for reasons I havenât fully identified. To ensure the setpoint is applied correctly, I created an automation that checks every 30 seconds after updating and resends the command if necessary:
alias: Ensure Ouman Setpoint Update
description: ""
trigger:
- platform: state
entity_id: input_number.heating_curve
action:
- wait_template: >
{{ states('climate.ouman_eh800_thermostat') | float == states('input_number.heating_curve') | float }}
timeout: "00:00:30"
continue_on_timeout: true
- condition: template
value_template: >
{{ states('climate.ouman_eh800_thermostat') | float != states('input_number.heating_curve') | float }}
- data:
entity_id: climate.ouman_eh800_thermostat
temperature: "{{ states('input_number.heating_curve') | float }}"
service: climate.set_temperature
This setup allows you to control your Ouman EH800 floor heating system through Home Assistant. The target temperature is managed via Home Assistant, while the Ouman unit takes care of the actual heating regulation in automatic mode.
@ugglas, amazing work! ![]()
Hey everyone!
I created a custom integration for the Ouman EH-800 which is configurable via the Home Assistant UI.
Itâs available here:
I recommend installing the integration with HACS. It should support almost all the features that are controllable via the Ouman web UI.
The integration detects whether you have room sensors and/or the second heating circuit installed, and only then creates the entities for those features. I donât have a second heating circuit or the room sensors installed myself, so I wasnât able to test if control works properly. However, they should be fully supported by the integration. If you end up trying the integration, please let me know if you run into any issues!
The information in this thread was very useful for development, so thank you to everyone who contributed to this thread in the past.
Enjoy!
Thanks, installed, this is cool! ![]()
I added mention of this integration right into first post of thread to make sure itâs easy to find without reading already quite long thread. Also added that original thread is sitll good source for everyone interested in EH-800âs inner working.
Welcome to the forum and thank you for making this awesome addon!
I have already integrated my Ouman via the old method but Iâm here to help you develop the âL2 partsâ if needed since I have that (all working via old method).
Since I have a complete installation already with automationâs and so on that I donât want to mess around with I have spun up a virtual machine and installed a fresh HA with your addon (the manual way, no HACS) all seems to be working except I assume some L2 stuff are missing, I can see the following
Let me know what you want me to test, also, do you want to continue here on the forum or should we continue on Github via a Issue?
EDIT
I have not enabled anything manually in case you want to test things, I figured it will enable all things automatically if detected.
First of all, thank you! Also sorry for the late reply, it seems like I did not have notifications set up properly for this forum.
If you are still willing to help me with the L2-related testing, I would very much appreciate it. I have created a GitHub issue for further discussion, so I would appreciate if the more technical details are discussed over there.
All of the L2-related sensor and control endpoints are defined here. From what I can see, you have everything visible that I have defined within the API. I assume that you do not have a separate indoor temperature sensor for L2? This is the thing I see missing from the entities in your screenshot.
I am curious about the things that you think are missing from the L2 parts. If you have the endpoint IDs for those and maybe screenshots from the Ouman webui, then I would definitely be interested in adding them.
The integration should automatically discover which additional modules you have, such as the inside temperature sensor and L2 parts. I am glad to see that it discovered those parts correctly since I was unable to test that one. If you have the L2 room temperature sensor installed, then something is wrong with my implementation, since it should have detected that as well.
Hi, no worries about the late reply!
I am very much willing to help, currently traveling so wonât be able to check up on this before next week.
I will get back to you in the Github issue sometime next week!
Regarding what might be missing and so on I need to check again, canât remember the details now, maybe I was thing think about those disabled entities I posted or something, either way I will report my finding in the Github issue instead!
If you have the L2 room temperature sensor installed, then something is wrong with my implementation, since it should have detected that as well.
I donât think you can have two room temperature sensors, only one and I have that and in controls the floor heating valve on L1.
Either way, I will get back to you on Github within a couple of days!






