Posted by: @cathoderaywhat about 120 ohm resistors?
I may review my decision about this over time. [Circulator] Pump modbus is over TCP/IP, the Heat Pump is over RS485. Screen shot is of flow rate x 2 sources, temperature x 2 sources, there are some bad reads
I finally managed to get time to install the MIM-B19N modbus interface into my Samsung 8kw HT Quiet at the weekend. I'm integrating it with Home Assistant slightly differently again, using an ESP32 rather than a Raspberry Pi.
With the ESP32, you can install ESPHome and configure it in a similar way to how @william1066 is. ESPHome is built by the same folks as Home Assistant (Nebu Casa) so it integrates seamlessly. I've put my config up here temporarily, and will put it into a repo once I've finished playing around.
I'm using an RS485 to TTL board, which is powered by the ESP32 via 3v or 5v pin depending on the board. I've tested it successfully with this one and this one.
From the outdoor unit to the RS485 board I ran some shielded Belden 8723 (equivalent, from here £22 for 25 meters). I've got a 120ohm resistor at both ends, but haven't connected the ground cable yet — I will do that at the RS485 end once I've finished setting up.
So far so good, no dropouts for the last 24 hours or so. The only thing I noticed was the target flow temperature (register 68) doesn't seem to read live when water law (weather compensation) is enabled and always returns 30ºC — that's the "low" water law target when outdoor temp is at 17ºC (it's currently ~5ºC outside).
@william1066 - all very interesting and useful, thank you. I don't think you mentioned the RS-485 to USB box you are using? The cheapo type or the more expensive 'isolating' type (where I think the 'isolating' keeps the two sides apart, neither can blow up the other one)?
The wires, of course I meant shielded not sheathed. The shielding, grounding and 120 ohm resistors are as I understand it about better a better cleaner signal. For short runs, poor signals are less of a problem, and as my run will be relatively short, about 5-10m, I will start by keeping things simple.
The trouble is, none of this is simple to a beginner! Let's say I want to rewire a table lamp. I know exactly what cable I need, and how to the job without blowing up the lamp, the house or myself. RS-485 cable? I have absolutely no idea, and as is usual with this stuff, google is your enemy. Within 10 minutes, you will have 50 tabs open and none of them make any sense. Down the bottomless rabbit hole I go again...
This is why a beginner's guide is so sorely needed. I am not stupid, and am reasonably capable with my hands, but none of that is of any use if I can find the practical details of what to do...
PS have however managed to make some progress on doing some of this wirelessly, see here.
Midea 14kW (for now...) ASHP heating both building and DHW
Hello @cathoderay,
since Midea family is pretty big (mine for example is local brand Rotenso) then some manuals are better than others, here is very good example:
https://www.clivet.com/en/edge-evo-2.0-exc
in general very nice lecture and well explained settings, what's more from page 143 of the manual you will find Modbus registers table.
Question how to get to the Modbus line, seems not clear if H1H2 are the right connectors (in manual says it's for cascade unit while on page 63: " This appliance supports the MODBUS RTU communication protocol"), then we have XYE: some Midea version of modbus...
really appreciate your work!
Posted by: @stevenSo far so good, no dropouts for the last 24 hours or so. The only thing I noticed was the target flow temperature (register 68) doesn't seem to read live when water law (weather compensation) is enabled and always returns 30ºC — that's the "low" water law target when outdoor temp is at 17ºC (it's currently ~5ºC outside).
I see the same with "Indoor Temperature" and "Target Indoor Temperature" when you are on external thermostat.
Posted by: @william1066I see the same with "Indoor Temperature" and "Target Indoor Temperature" when you are on external thermostat.
For the time being I've added a template sensor to calculate the approximate target flow temperature using y=mx+b. I added four number helpers into Home Assistant for the high/low values/targets then use the outdoor unit's outdoor temperature sensor as x. I realise water law/weather comp likely isn't strictly linear, but this should get me close enough.
You can see in the graph from this morning it reaches the calculated target temperature, then once the house is 1ºC below the thermostat (Wiser) it starts it's 3 cycles per hour before the DHW kicks in at 8am.
template: - sensor: - name: Target Flow Temperature unique_id: target_flow_temperature_calculated unit_of_measurement: "ºC" device_class: temperature state: > {% set ashp = { "low": states('input_number.wl_low') | int, "low_target": states('input_number.wl_low_target') | int, "high": states('input_number.wl_high') | int, "high_target": states('input_number.wl_high_target') | int } %} {% set m = (ashp.low_target - ashp.high_target)/(ashp.low - ashp.high) %} {% set b = ashp.high_target - (m * ashp.high) %} {{ (m * states('sensor.outdoor_temperature') | float) + b }}
Posted by: @william1066I see the same with "Indoor Temperature" and "Target Indoor Temperature" when you are on external thermostat.
-- Attachment is not available --
I have the same issue (with Samsung controller in Water Outlet mode but no external thermostat). It is frustrating to have to use a separate temperature sensor for Indoor Temp when the controller clearly still has that parameter!
I think the Samsung 'water law'/WC is linear so you should get the exact target flow temp with your method.
I wanted to have some control over the the flow temp whilst still having an element of weather compensation. I therefore have the Samsung controller in Water Outlet mode (which turns the internal WC off) and have implemented the WC curve/line in HA, and also added some basic load control (flow temp turned down 1 degree for every 0.1 degree above indoor temp target). This seems to work OK, so long as the Zigbee temperature sensor is working.
- name: "ASHP WL P" state: > {% set indoor = states('sensor.0x00124b0029282fdb_temperature') | float %} {% set diff = indoor - (states('input_number.ashp_ha_indoor_target') | float) %} {% if diff > 0 %} {{ (diff * -10) | round(1)}} {%- else -%} {{0}} {%- endif -%} - name: "ASHP WL temp" state: > {% set outdoor = states('sensor.ashp_outdoor_temp') | float %} {% set point1 = { "outdoor_temp": 15, "WL_temp": 35 }%} {% set point2 = { "outdoor_temp": -10, "WL_temp": 50 }%} {{ (states('sensor.ashp_wl_p') | float) + (states('input_number.ashp_wl_offset') | float) + point1.WL_temp + ((1-((outdoor - point2.outdoor_temp) / (point1.outdoor_temp - point2.outdoor_temp))) * (point2.WL_temp - point1.WL_temp)) }}
It needs an extra bit of logic to deal with outdoor temps below -10 and above 15.
Posted by: @AnonymousQuestion how to get to the Modbus line, seems not clear if H1H2 are the right connectors (in manual says it's for cascade unit while on page 63: " This appliance supports the MODBUS RTU communication protocol"), then we have XYE: some Midea version of modbus...
Thanks, that's very useful, I definitely recognise parts of that manual as being the same as the Midea manuals but the Edge Evo manual is less cryptic in places.
I think H1 and H2 are Midea speak for the conventional RS-485 A/B connections, and modbus-RTU is the protocal/language in use. XYE - like you, I think it is a proprietry Midea version of modbus. The cascade looks to me like it might be dealing with the master/slave setup required by RS-485/modbus (you have a salve cascade, with the slaves (heat pumps) cascaded via the CN30 H1/H2 connections). I think essentially if you put all the diagrams together it seems H1 and H2 are where you make the RS-485 A/B connections in the wired controller. The CN30 H1/H2 connectors on the heat pump PCBs are primarily for setting up slave cascades.
Midea 14kW (for now...) ASHP heating both building and DHW
This video from Homely is also quite informative. It shows the actual physical wire connection process to the Midea wired controller. Interestingly, no apparent ground/earth, but a 120 Ohm resistor is used.
There is a similar video for Samsung units.
Midea 14kW (for now...) ASHP heating both building and DHW
@william1066 I would be very interested if you could share your Home Assistant config. My MIM-B19N will hopefully be delivered by the weekend and looking forward to trying to get it all set up.
@redzer_irl I am in the process of putting my config and the process into github, but that requires some sanitising the config.
You need to "program" the MIM-B19N in the correct way, otherwise you get garbage data out.
I am not sure what sort of damage you can do if you don't do things correctly. Proceed at your own risk. it took me a while before I realised you had to program all registers in a single command [for each block], so my module and the heat pump survived a certain level of "test and learn".
Please read pages 17 and 18 in the manual “Modbus Interface Module MIM-B19N/MIM-B19NT”.
These two commands worked for me [please double check the Message Set IDs and their order before you execute these commands and change the device, if different]
mbpoll -m rtu -0 -r 6000 -b 9600 -d 8 -t 4:hex /dev/ttyUSB0 0x8238 0x8204 mbpoll -m rtu -0 -r 7000 -b 9600 -d 8 -t 4:hex /dev/ttyUSB0 0x411E 0x42D7 0x42D6 0x4087 0x406C 0x42E9 0x42F1 0x4067
The version of mbpoll I used is is as follows running on Ubuntu.
mbpoll/jammy,now 1.4.11+dfsg-2 amd64 [installed] command line utility to communicate with ModBus slave (RTU or TCP)
I am using the “Waveshare Industrial USB to RS485 Converter with original FT232RL”
Extracts from my ha config below. I have been reading the data for some time, I have only just started using the R/W registers, the R/W registers seems to be working fine now, so I now have much more sophisticated scheduling available via home assistant than I had before.
With the flow rate, I was converting to lpm, but may change that to keep it in m3/hr and then use a template sensor in HA to change that to lpm. There is no lpm in ha.
I am pushing all my ha data into an influxdb instance, with retention forever, this as a data backup, but also because it provides a useful way of building dashboards.
I suggest you implement the sensors first. Do that for a couple days or a week, check how reliable that is for you, then start with the R/W registers. I ran a couple weeks before moving my DHW and heating schedule into HA automations by writing to the heating and hot water registers.
Extracts from config, full file on github in the next couple of days.
modbus: - name: "samsung" type: serial baudrate: 9600 bytesize: 8 method: rtu parity: E port: /dev/ttyUSB0 stopbits: 1
switches: - name: Heating unique_id: samsung_gen6_16kw_heating slave: 1 address: 52 command_on: 1 command_off: 0 verify: input_type: holding delay: 10 address: 52 state_on: 1 state_off: 0
sensors: - name: "Outside Temperature" scan_interval: 60 slave: 1 address: 5 state_class: measurement scale: 0.1 unit_of_measurement: °C precision: 1 data_type: int16
- 22 Forums
- 2,036 Topics
- 44.4 K Posts
- 34 Online
- 3,240 Members
Join Us!
Trusted Installers
Struggling to find a reliable heat pump installer? A poor installation can lead to inefficiencies and high running costs. We now connect homeowners with top-rated installers who deliver quality work and excellent service.
✅ Verified, trusted & experienced installers
✅ Nationwide coverage expanding
✅ Special offers available
Latest Posts
-
RE: Air Source Heat Pump - Side Alley Suitability
My installer wasn't at all keen on this option, and we ...
By JamesPa , 25 minutes ago
-
RE: In the middle of an ASHP installation - a few questions (and issues)
I don't know I checked the data resolution and it...
By JamesPa , 44 minutes ago
-
RE: The Rise and Fall of Europe’s Most Generous Green Subsidy
@editor Attached images of external insulation. Think...
By Dwynwen , 1 hour ago
-
RE: Hitachi Yutaki SCombi Heat Pump - Thermal Off's
@trebor12345 The Auto function is supposed to adapt au...
By Heatgeek , 16 hours ago
-
RE: The Great British Heat Pump Quiz
@allyfish thanks for the feedback and glad it was fun! ...
By Mars , 21 hours ago
-
RE: help sizing rads based on room by room heat loss
If its 1988W at DT 50, which is how most radiators are ...
By JamesPa , 1 day ago
-
RE: Career change – entering the world of heating and heat pumps
@editor Mars, thank you. That's along the routes I was ...
By Lakey , 1 day ago
-
@editor thanks Mars, it's a rare occasion I'm looking f...
By big_si , 2 days ago
-
RE: Efficiency Concerns on newly installed Mitsubishi Ecodan 8.5kW
@ashp-bobba and @jamespa - thank you both for all your ...
By CBrenewable , 2 days ago
-
-
Win one of five "Heat Pumps 101" Courses
Heat pumps are gaining traction in the UK, but between ...
By Mars , 2 days ago
-
RE: Agile: average import cost vs other tariffs?
@toodles thanks for the analysis. I'll be really intere...
By Old_Scientist , 2 days ago
-
RE: ASHP Ecodan L9 error - No Heating but Hot Water
@phoenix15 I'm no plumber so please don't take this as ...
By dnagre , 3 days ago
-
RE: Is this normal? Click of the DHW returning to space heating
@grantmethestrength Oh sorry to hear that, there should...
By ASHP-BOBBA , 3 days ago
-
@ashp-bobba TBH the ladies are rather disorganised, so ...
By Cathyem1 , 3 days ago
-
RE: Solar Power Output – Let’s Compare Generation Figures
And for those of us without an automatic irrigation sys...
By Majordennisbloodnok , 3 days ago
-
Logically, the lower frequency = more gentle, yes, but ...
By SUNandAIR , 3 days ago
-
RE: Ideal Logic ASHP - change from 55°C to 35°C Heating?
Good point. I’ll keep my eye on the manifold temperatur...
By Tomdad , 3 days ago
-
RE: How hard and expensive would it be to change panel and add battery?
@transparent It is a setting that Octopus make via the ...
By Toodles , 3 days ago