- Platform information:
- Hardware: Xen virtual machine
- OS: Fedora 40
- Java Runtime Environment: Openjdk 21
- openHAB version:4.3.4
- Issue of the topic: please be detailed explaining your issue
- Please post configurations (if applicable):
- Thing → Modbus TCP bridge, FQDN of device to talk to, port 502, device ID 1, have tried with and without discovery enabled
- Thing → Single phase inverter, using bridge as per above. Block length 120, start address 40000.
- No rules yet.
- If logs where generated please post these here using code fences:
Started openhab.service - openHAB - empowering the smart home.
I am trying to talk to an ABB inverter that is SunSpec compatible. I have read the SunSpec documentation and written a small Java program to talk Modbus and iterate through the models and print out the data, so I know that the inverter communicates and provides correct data.
All the “channels” I have added read zero in OpenHab (except current which reads 1.0) where my test program will read actual data. OpenHab also shows the model number, etc information as blank even though I can see this data in the packet capture being sent back to OpenHab.
In the packet capture of the comms between the inverter and OpenHab I can see the data, although it only read 61 words (initially) and later 120 words (once I increased it) however that does not cover all the data I want to look at. If I increase the size too much more then it generates an error and fails to start the link at all.
Also, there are a number of “models” available at different addresses, but the configuration only seems to allow me to configure a single model. How do I read from multiple models (as defined in the SunSpec specification)? Ultimately it should just be given a start address and be able to discover all of the models itself.
How do I read non-zero data? I can see the data on the actual link, but don’t seem to have any control of which information refers to what piece of data.
Note that this is my first time ever using Open Hab, so it is likely I have stuffed up something basic and fundamental.
Thank you
GC