It wasn’t a problem with the function codes but with the registers in the pollers used to access the registers >=50 and their representation in the yml-files which are reponsible for the connection to the user interface.
There are several channels which in my heatpump do not provide meaningful values:
Heatpump Energy source outlet temperature
Heatpump Volume flow energy source
Requested Password
..
Heatpump requested difference between T-Flow and T-Return
Buffer Actual Modbus Temperature
Buffer Request Type
Buffer Request Flow Line Temperature
Buffer Request Return Line Temperature
Request Heat Sink Temperature
Buffer Request Heating Capacity
Heating circuit Return Line Temperature
..
Heating circuit Operating Mode
@Beluga: var double Boiler_MT_Neu = 44.0 lambdaboiler_maximumboilertemperature.sendCommand(Boiler_MT_Neu) logInfo(“Lambda_Testskript”, “Maximum Temperature neu : " + String.format(”%.1f", ((lambdaboiler_maximumboilertemperature.state) as Number).floatValue) +“°C”)
in my logs shows:
2025-11-03 12:22:33.786 [INFO ] [.core.model.script.Lambda_Testskript] - Maximum Temperature neu : 43.0°C
2025-11-03 12:22:33.786 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item ‘lambdaboiler_maximumboilertemperature’ predicted to become 44.0
2025-11-03 12:22:33.788 [INFO ] [openhab.event.ItemStateUpdatedEvent ] - Item ‘lambdaboiler_maximumboilertemperature’ updated to 44 °C
2025-11-03 12:22:33.789 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item ‘lambdaboiler_maximumboilertemperature’ changed from 43 °C to 44 °C
and the UI of the lambda shows: Solltemp: 44.0 °C
{Seems that the logInfo is faster than the reaction of openhab to the sendCommand.}
Did you stop and restart OpenHab after copying the jar into the addons directory?
Does the value of your Item connected to the Maximum Boiler Temperature channel change when you change Solltemp. in the UI of your Lambda?
Are you on 5.1.0 or on an older version of OpenHab?
Go to the Userinterface of Openhab - Things - Lambda Boiler - Channels. Does it show two different groups Boiler Group and Boiler Reg50 Group, the first group with four channels, the last with one channel: Maximum Boiler Temperature
I just deleted the jar (all associated things went grey, so it was the right one), downloaded again and restarted. Unfortunately, same as before. To answer your questions:
Stop and restart → yes
Change in Lambda UI leads to change in Openhab → No
Version → 5.0.2
Channel groups → just one group with five items
Your last question probably points to the solution. I just added a new boiler thing and this one indeed has a Reg50 channel group.
Busy with other stuff at the moment, but guess I will return with some good news in the evening.
OK…
The developement circle of the binding in OH requires me to supply textual definitions of the things and items. So I use the conf directory to supply these to my installation. So the restart of OH creates new things. If you use the UI only (which I prefer too) you have to delete the old thing and add a new thing (and probably have to connect your existing items to its channels - which is annoying;).
I now deleted the old boiler thing and added the new one. Except for the maximum boiler temp item all existing items were linked automatically. Oh, and it’s working now! Changes via the Lambda UI are now reflected in the item and changing the item-state in Openhab leads to a change in the Lambda UI
I can now set Lambda_Solar_Solar_Maximum_Buffer_Temperature in Openhab and it instantly updates Seicher Sollatemperatur in Lamda and vice versa. Setting Lambda_Solar_Solar_Buffer_Changeover_Temperature doesn’t throw any errors so I assume it works but I can’t find the corresponding field in my Lambda ui to check the value.
So the new version looks good for the Lambda Solar module.
thank you so much for your work on the Modbus plugin for the Lambda Heatpump. I test the plugin since some weeks and it seems to work really stable in my setup.
One issue I have found: I have configured room-devices for my Lambda Heatpump and use your plugin to write the measured room-device-temperature to the heating-circuit from Openhab via modbus-point: Lambda Heating Circuit 1 Heating circuit Room Device Temperature. Also I want to set the desired room-temperature and for this there should be the modbus-point : Lambda Heating Circuit 1 Heating circuit Room Heating Temperature , which is R/W
However: Whatever I set in Openhab does not have any effect on the heatpump. If you have time, you could perhaps have a look.
I just tested with PowerHud Modbus tester.
Reading the register 5004 Room device temperature shows -300 in my lambda
Writing the register with something like 201 in Modbus tester or 20.1 in the binding does not change the value, it keeps staying -300.
The same occurs in my lambda with the registers
5051 Setpoint room heating temperature (reading 150)
5052 Setpoint romm cooling tehperature (reading 150)
Writing register 5050 Offset flow line temperature shows the value I have in the lambda UI and I can change it with the Modbus tester and with the binding.
So it seems that the registers 5004, 5051 and 5052 cannot be written even if the Modbus file supplied by lambda offers RW.
thanks for checking. I had the -300 reading, before I have first send the temperature of my room-device to the Heatpump. I assume, that -300 means “uninitialized”. The value of the room-device appears, after it was sent by Openhab in the controlunit of the Lambda and disappears after about 5-10 minutes, when the value is not sent again.
My problem is only with the setpoint (5x51 and 5x52), which I cannot set via Openhab
As I mentioned in my previous comments. They show the same behaviour.
Im my case both values are at 15.0 °C.
Changing them with the binding or with Modbus tester is possible, but some time later Lambda changes them back to 15.0 °C.
In the lambda UI I could not find the 15.0, even as user service.
Up to now Lambda support did not answer to my mail.
You need to have modbus write access enabled by your installer/Lambda support, have you?
Set debug loglevel for the modbus binding to see if to write works or not.
The binding is now available in the Add-on Store in 5.1.0.M3 - finally -
(Thanks to isiepel who got me through this process.)
I deleted the jar in the addons-directory, installed openhab 5.1.0.M3 in my docker system, started it and added the binding via the Add-On Store. The icon is still a general Modbus-Icon and not the icon I provided by github.
I got some error messages, restarted Openhab and the error messages disappeared. Could be that the error messages were caused because the things and items in my version are defined by scripts in my openhab-conf directory.
M4 is due on December 14th, the stable 5.1.0 version should be on December 20th.
iewi mentions that the values vor vdae and vdaq are wrong in his setting because the lower and upper part of the 32-bit registers are switched.
My values in openhab and the UI match.
My numbers match too. There are separate counters since the date of the last reset and the date of system start. As these dates are identical on my system, there is no difference in the counters so I can’t be sure that modbus interface is indeed taking the values since the last reset.