@redzer_irl if you set FSV 2091 to "not use" you should end up with this (I do)
that allows you to directly manually set the target water outlet temperature using the control panel plus/minus. A fixed temperature mode if you like. that would then (hopefully - I have no proof) imply that the water outlet temp could then be set by modbus as well.
In the WL (i.e. WC) mode you have, the HP chooses the water outlet temperature according to its configured water law , and you can manually adjust it by + - 5 degrees, and I wouldn't expect any manual write to the "outlet temp target" to "take". but I assume you knew that!
to be honest at this point I would just like to be able to make ANY change to the system over modbus. Such as changing the registers for CH and/or DHW on/off state. DHW on/off would appear to be the most simplistic and cannot be rendered impossible to adjust by other settings, but I can't even get a write to that one to "take". I've used minimal modbus on linux and run it with the debugs, I've seen it send the expected commands and receive the expected reply, but the HP just doesn't "action" what I've told it to do (turn the HW on).
Thanks very much Ian, I changed FSV 2091 to "Not Use" but it didn't have any effect. I then also changed FSV 2092 External Thermostat Application #2 (FCU) to the same setting and my controller updated to match yours.
I had manually set the Water Outlet temperature to 29°C on the controller which I could see in Home Assistant
I then ran a script to change the temperature to 35°C
And I can confirm that the value on the controller and the value in HA then updated to 35°C
@redzer_irl if you set FSV 2091 to "not use" you should end up with this (I do)
-- Attachment is not available --
that allows you to directly manually set the target water outlet temperature using the control panel plus/minus. A fixed temperature mode if you like. that would then (hopefully - I have no proof) imply that the water outlet temp could then be set by modbus as well.
In the WL (i.e. WC) mode you have, the HP chooses the water outlet temperature according to its configured water law , and you can manually adjust it by + - 5 degrees, and I wouldn't expect any manual write to the "outlet temp target" to "take". but I assume you knew that!
to be honest at this point I would just like to be able to make ANY change to the system over modbus. Such as changing the registers for CH and/or DHW on/off state. DHW on/off would appear to be the most simplistic and cannot be rendered impossible to adjust by other settings, but I can't even get a write to that one to "take". I've used minimal modbus on linux and run it with the debugs, I've seen it send the expected commands and receive the expected reply, but the HP just doesn't "action" what I've told it to do (turn the HW on).
Unfortunately I don't really have any experience of trying to control the unit with minimal modbus. The only thing I used on Linux was mbpoll to initially set the hidden registers and all the subsequent work was carried out with Home Assistant.
The only issue I had which was similar to yours was at the very start when I did not have the 120 ohm resistor in place on the MIM-B19N board. There was erratic behaviour when I was sending commands but I have had no issues since I installed the resistor.
@redzer_irl if you set FSV 2091 to "not use" you should end up with this (I do)
that allows you to directly manually set the target water outlet temperature using the control panel plus/minus. A fixed temperature mode if you like. that would then (hopefully - I have no proof) imply that the water outlet temp could then be set by modbus as well.
In the WL (i.e. WC) mode you have, the HP chooses the water outlet temperature according to its configured water law , and you can manually adjust it by + - 5 degrees, and I wouldn't expect any manual write to the "outlet temp target" to "take". but I assume you knew that!
to be honest at this point I would just like to be able to make ANY change to the system over modbus. Such as changing the registers for CH and/or DHW on/off state. DHW on/off would appear to be the most simplistic and cannot be rendered impossible to adjust by other settings, but I can't even get a write to that one to "take". I've used minimal modbus on linux and run it with the debugs, I've seen it send the expected commands and receive the expected reply, but the HP just doesn't "action" what I've told it to do (turn the HW on).
This is one of the aspects of digital control systems.
If we, as humans, were given the task of performing the WL function, we would measure the OAT, calculate the required LWT, and set the value on the controller. If the OAT had not changed we probably would not carry out this task.
A digital controller just runs the program numerous times each second, so although it may be possible for you to change the required LWT value, it is very soon overwritten by the program when in WL mode.
To change the required LWT when in WL mode it may be possible to change the offset via modbus.
@redzer_irl I can't remember what is set for me in 2092 but perhaps its needs both. I have not used the configuration that I referred to in "normal running" as it disables the inbuilt WC, but I have used it in testing. really good to see you were able to get that value to change. that implies that , should you be keen enough, you could write your own heating controller, as you have now control of the one value that matters.
I'm now going to check my cabling and resistor setup, its really useful that you are telling me that the physical layer was a problem for you initially.
To change the required LWT when in WL mode it may be possible to change the offset via modbus.
there's no modbus register for the offset.
in any case, redzer_irl has just got working, exactly what I wanted to get working (being able to turn the HP on/off LWT hotter/cooller is necessary condition to be able to roll ones own heating controller). So we know it can be done.
So I just need to follow that thread to its logical conclusion. my next step now based on that pointer is going to be to check / rebuild the physical layer.
To change the required LWT when in WL mode it may be possible to change the offset via modbus.
there's no modbus register for the offset.
in any case, redzer_irl has just got working, exactly what I wanted to get working (being able to turn the HP on/off LWT hotter/cooller is necessary condition to be able to roll ones own heating controller). So we know it can be done.
So I just need to follow that thread to its logical conclusion. my next step now based on that pointer is going to be to check / rebuild the physical layer.
There will be a register for the offset value, though it may not be documented.
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.
The Heat Pump Indoor Target and Heat Pump WL Offset values can then be adjusted in home assistant.
I created an automation to send the Heat Pump Water Out Set Temp whenever the Heat Pump WL Temp Calc value changes (this may be overkill, it may be better to just update the value on a schedule such as every 15 minutes?)
I could hear that the primary pump was turning on and off quite regularly but I couldn't keep track of this in home assistant as the pumps are controlled from a separate Joule board and are not transferred over the modbus connection as far as I can tell.
I wired in an octocoupler to see when the primary, secondary, downstairs radiators, upstairs radiators and underfloor pumps were running. The weather has been mild for the last few days so the zone pumps have been off most of the time but primary pump has been cycling 3 mins on and 7 mins off almost constantly (apart from the peak electricity period of 17:00 - 19:00 where the heat pump is turned off and hot water cycles at 04:00 and 15:45). The heat pump has been cycling approx 5 mins on and 50 mins off also (when the heat pump cycle runs, the primary pump runs for an 8 min cycle instead of 3 mins).
I wanted to see if people think this behaviour is to be expected or if there was a better way to control the operation?
You could try running the heat pump in fixed LWT mode starting with a low LWT setting and gradually increasing the setting until the desired indoor temperature is achieved. This would indicate the approximate LWT required under the present operating conditions.
Then switch on your automatic system and see how it performs. If it produces a higher LWT then it may be necessary to adjust some of your HA controller settings.
What precisely are you trying to achieve, constant indoor temperature, some form of setback, or minimising running costs?
I could hear that the primary pump was turning on and off quite regularly but I couldn't keep track of this in home assistant as the pumps are controlled from a separate Joule board and are not transferred over the modbus connection as far as I can tell.
monitor the flow rate via modbus, this will be the primary side.
The weather has been mild for the last few days so the zone pumps have been off most of the time but primary pump has been cycling 3 mins on and 7 mins off . The heat pump has been cycling approx 5 mins on and 50 mins off also (when the heat pump cycle runs, the primary pump runs for an 8 min cycle instead of 3 mins).
might be a tangential question, but why is the heat pump running when the zone pumps are off - if its mild and the zone pumps are off that implies there is no heat demand?
I wanted to see if people think this behaviour is to be expected or if there was a better way to control the operation?
honestly don't know! obvious thing to do to get started is compare and contrast. Turn off your control system, but keep your monitoring active. how does the system behave when running samsung's controls?
You could try running the heat pump in fixed LWT mode starting with a low LWT setting and gradually increasing the setting until the desired indoor temperature is achieved. This would indicate the approximate LWT required under the present operating conditions.
Then switch on your automatic system and see how it performs. If it produces a higher LWT then it may be necessary to adjust some of your HA controller settings.
What precisely are you trying to achieve, constant indoor temperature, some form of setback, or minimising running costs?
The system was installed as a 3 zone system with programable thermostats in each zone. The zones were set up by the installer to turn on and off with various room temperatures at various times of the day. I have been interested to see if there was a better way to set the system up and this is the first chance I have had to do that.
I could hear that the primary pump was turning on and off quite regularly but I couldn't keep track of this in home assistant as the pumps are controlled from a separate Joule board and are not transferred over the modbus connection as far as I can tell.
monitor the flow rate via modbus, this will be the primary side.
Ok, I added that into the graph and can see that the primary pump on/off and flow rate patterns match up.
The weather has been mild for the last few days so the zone pumps have been off most of the time but primary pump has been cycling 3 mins on and 7 mins off . The heat pump has been cycling approx 5 mins on and 50 mins off also (when the heat pump cycle runs, the primary pump runs for an 8 min cycle instead of 3 mins).
might be a tangential question, but why is the heat pump running when the zone pumps are off - if its mild and the zone pumps are off that implies there is no heat demand?
Not a tangential question at all, that is one of my main queries as to how the system is operating now. There appears to be no heat demand but the heat pump operation and primary pump/flow rate seem to be working to constantly keep the flow temperature at the WL set temperature. I have a 200L Joule hot water tank with a 60L inbuilt buffer tank so I don't know if this has an impact?
I wanted to see if people think this behaviour is to be expected or if there was a better way to control the operation?
honestly don't know! obvious thing to do to get started is compare and contrast. Turn off your control system, but keep your monitoring active. how does the system behave when running samsung's controls?
I think that is my next port of call. Set the system back to the Water Law settings and monitor to see what the data looks like.
The system was installed as a 3 zone system with programable thermostats in each zone. The zones were set up by the installer to turn on and off with various room temperatures at various times of the day. I have been interested to see if there was a better way to set the system up and this is the first chance I have had to do that.
Not a tangential question at all, that is one of my main queries as to how the system is operating now. There appears to be no heat demand but the heat pump operation and primary pump/flow rate seem to be working to constantly keep the flow temperature at the WL set temperature. I have a 200L Joule hot water tank with a 60L inbuilt buffer tank so I don't know if this has an impact?
it may be that your system is setup to always keep that buffer tank at the target LWT regardless of heat demand. Does it still keep the buffer tank warm in the summer? if yes, you could consider changing it so that the buffer tank is only warmed up (and thus the heat pump activated) when at least one zone is calling for heat.
Thinking about installing a heat pump but unsure where to start? Already have one but it’s not performing as expected? Or are you locked in a frustrating dispute with an installer or manufacturer? We’re here to help.