[modbus.lambda] Initial contribution#18330
Conversation
710158b to
d6872b1
Compare
|
I resolved the git problems with the help of a friend and cleaned the copyright comments. |
|
This pull request has been mentioned on openHAB Community. There might be relevant details there: https://community.openhab.org/t/lambda-heat-pump-in-openhab/156799/37 |
|
I am not sure why nobody looks at this pull request. |
Sorry to keep you waiting. I'm a bit busy at the moment and currently finishing some other large PR's. Once they are done im happy to review this. To other reviewerss, don't wait for me. |
There was a problem hiding this comment.
Thanks for this contribution. Left many similar comments. Please check the thing and channel labels. Please apply the suggestions for the handler also to the other handlers as i have not looked into the last 5 files (handlers). I need 1 more pass to complete the review and probably one more after all suggestions have been resolved.
Don;t forget to also run the i18n plugin after updating the labels.
The binding should also be added to the bom/openhab-addons/pom.xml and
features\openhab-addons\src\main\feature\feature.xml and
features\openhab-addons\src\main\resources\footer.xml
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaBindingConstants.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaBindingConstants.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaBindingConstants.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaBindingConstants.java
Outdated
Show resolved
Hide resolved
...us.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaHandlerFactory.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
I did the changes which I market resolved locally and will push them after completing all changes.
I did a
This subdirectory ...\feature\ does not show up in my local copy.
This shows up, I added lambda. |
d6872b1 to
518c534
Compare
lsiepel
left a comment
There was a problem hiding this comment.
Had these pending comments. Will not another pass to be sure i have everything, as it has been a while, sorry i lost track of this PR.
Let's try to get this in oh5
...s/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/boiler-channel-types.xml
Outdated
Show resolved
Hide resolved
...s/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/boiler-channel-types.xml
Outdated
Show resolved
Hide resolved
.../org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/general-channel-types.xml
Outdated
Show resolved
Hide resolved
.../org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/general-channel-types.xml
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BoilerHandler.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Some specific comment that can be applied to all things / groups / channels etc. We first need to get this sorted before i can look into the handlers.
Edit: Only thing i'm not sure about is wether all type id's should be prefixed with 'lambda' as these subbindings somehow share parts of the definitions. @jlaur or @lolodomo can you give me some guidance on this?
...us.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/LambdaHandlerFactory.java
Outdated
Show resolved
Hide resolved
...s/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/config/config-descriptions.xml
Outdated
Show resolved
Hide resolved
...openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/boiler-channel-group-types.xml
Outdated
Show resolved
Hide resolved
...openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/boiler-channel-group-types.xml
Outdated
Show resolved
Hide resolved
| xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0" | ||
| xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd"> | ||
|
|
||
| <channel-type id="boiler-error-number-type"> |
There was a problem hiding this comment.
both prefix boiler- and suffix -type can be removed, applies to all channel types.
...penhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/general-channel-group-types.xml
Outdated
Show resolved
Hide resolved
...penhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/general-channel-group-types.xml
Outdated
Show resolved
Hide resolved
| <supported-bridge-type-refs> | ||
| <bridge-type-ref id="tcp"/> | ||
| </supported-bridge-type-refs> | ||
| <label>Lambda General Group</label> |
There was a problem hiding this comment.
Marked as resolved, but i don't see it changed. Did you push your changes?
...binding.modbus.lambda/src/main/resources/OH-INF/thing/heatingcircuit-channel-group-types.xml
Outdated
Show resolved
Hide resolved
...enhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/heatingcircuit-channel-types.xml
Outdated
Show resolved
Hide resolved
518c534 to
dbebfd9
Compare
|
In extend to the previous review round: |
dbebfd9 to
ef6a3cf
Compare
I have to look into this. Do you have an example of a binding with several things and the suggested simplified code? After getting a compiling working version it might be possible:
|
ef6a3cf to
1659d92
Compare
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
1659d92 to
b08963f
Compare
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
b08963f to
b4a9771
Compare
f677f9d to
6b30f45
Compare
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
Signed-off-by: lsiepel <leosiepel@gmail.com>
|
I solved the conflict in footer.xml. It might need a spotless. |
|
I read some stuff about the first step:
|
|
Then I tried to follow: So I did a |
|
There are multiple workflows. I prefer to do this on the web version of GitHub and later on your local clones. If you directly update your local you will |
|
Your comment 2 hrs ago ended abruptly. |
|
Cool. I see all your branches are up-to-date now. the build fails probably due to some other pom issue |
…penhab-addons into modbus-lambda-heatpump Changes in pom to 5.1.0 Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
04bcfc6 to
bdee2a2
Compare
|
Let's see - I forgot to stage the change in pom.xml to 5.1.0 |
There was a problem hiding this comment.
Pull Request Overview
This PR introduces a new Lambda Heat Pump binding for the OpenHAB modbus ecosystem, providing comprehensive integration for Lambda heat pump systems. The binding enables monitoring and control of various heat pump components including the main heat pump unit, heating circuits, buffers, boilers, solar components, and general system information through Modbus TCP/IP communication.
- Adds complete Lambda heat pump binding with support for multiple system components (heat pump, heating circuits, buffers, boilers, solar, general ambient/e-manager)
- Implements modbus parsers and handlers for reading/writing heat pump data with proper scaling and unit conversion
- Provides comprehensive channel definitions and internationalization support for all components
Reviewed Changes
Copilot reviewed 54 out of 55 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| features/openhab-addons/src/main/resources/footer.xml | Adds lambda binding to feature bundle list |
| bundles/pom.xml | Includes lambda modbus binding module in build |
| bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/*.xml | Defines thing types, channels, and configurations for all heat pump components |
| bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/i18n/*.properties | Provides internationalization strings for UI labels and descriptions |
| bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/addon/addon.xml | Defines addon metadata and description |
| bundles/org.openhab.binding.modbus.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/parser/*.java | Implements modbus data parsers for converting register data to structured blocks |
| bundles/org.openhab.binding.modbus.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/*.java | Implements thing handlers for managing communication and channel updates |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
...penhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/heating-circuit-thing-types.xml
Outdated
Show resolved
Hide resolved
...les/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/thing/boiler-thing-types.xml
Outdated
Show resolved
Hide resolved
bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/i18n/modbus.properties
Outdated
Show resolved
Hide resolved
bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/i18n/lambda.properties
Show resolved
Hide resolved
...lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/parser/SolarBlockParser.java
Show resolved
Hide resolved
.../src/main/java/org/openhab/binding/modbus/lambda/internal/handler/HeatingCircuitHandler.java
Outdated
Show resolved
Hide resolved
...lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/HeatpumpHandler.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/GeneralHandler.java
Outdated
Show resolved
Hide resolved
lsiepel
left a comment
There was a problem hiding this comment.
Thank you for previously fixing the comments. I have now covered the remaining files and some additional ones to the copilot comments.
I think this iwll be the last review round before we can merge this binding
bundles/org.openhab.binding.modbus.lambda/src/main/resources/OH-INF/i18n/modbus.properties
Outdated
Show resolved
Hide resolved
...s.lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/BufferHandler.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/GeneralHandler.java
Outdated
Show resolved
Hide resolved
....lambda/src/main/java/org/openhab/binding/modbus/lambda/internal/handler/GeneralHandler.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/openhab/binding/modbus/lambda/internal/handler/HeatingCircuitHandler.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/openhab/binding/modbus/lambda/internal/handler/HeatingCircuitHandler.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/openhab/binding/modbus/lambda/internal/handler/HeatingCircuitHandler.java
Outdated
Show resolved
Hide resolved
|
Thanks for the suggestions. It will take three weeks to fix the code because I 'm absent. |
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
Signed-off-by: Christian Koch <christian@koch-bensheim.de> Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
…penhab-addons into modbus-lambda-heatpump Added changes requested by isiepel and Copilot Signed-off-by: Christian Koch <christian@koch-bensheim.de>
|
I added the corrections suggested by Copilot and Isiepel. Hopefully I didn't mess up with github, the tree looks interesting from a topoligical standpoint ;) |
tatus
Outdated
There was a problem hiding this comment.
It is still there. It is in the root of the project at the same level as the CODEOWNERS file.
There was a problem hiding this comment.
OK, didn't look that high up in the directory structure.
There was a problem hiding this comment.
The file is still there....
Signed-off-by: Christian Koch <78686276+chilobo@users.noreply.github.com>
|
I've integrated all changes into a new branch and new PR #19378 as this branch was too much out of date and signoffs weren't easily possible, please review that PR. |
Based on the Stiebel Eltron bundle by Paul Frank I contribute a bundle to manage Lambda Heat Pumps as a OSG addon to the Modbus Binding.
I did some testing by adding my jar to the local addon directory.
@agio tested it with two instances of heating circuits - thank you!
See the README.md for restrictions on usage.
The binding is based on the Modbus description of the manufacturer:
(https://lambda-wp.at/wp-content/uploads/2024/11/Modbus-Protokoll-und-Beschreibung.pdf)
A few parts of the description are not implemented. If you feel you need them, just open a request.
Compressed directory:
org.openhab.binding.modbus.lambda.zip
Edit: Supersedes: #18248