this year I got my E3DC system and for sure I wanted to integrate this into openHAB. This post does quite a good job and on top the Grafana diagrams are quite nice.
In June a new Modbus spec was released by E3DC with some Wallbox control possibilities. This was quite hard to implement in rules. So i decied to implement an E3DC Modbus binding. Release candiate + config are available here.
If you own such a system I would be appreciate your feedback!
iâve upgraded to 2.5.9 and tried to migrate from my own E3DC modbus interpretation to your Binding. Iâve copied the things and items files and just configured the correct IP address. Unfortunately the items donât get any values.
2020-09-21 10:52:30.414 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'e3dc.things'
2020-09-21 10:52:30.451 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler Modbus tcp
2020-09-21 10:52:30.462 [TRACE] [very.internal.ModbusDiscoveryService] - Received new handler: org.openhab.binding.modbus.discovery.internal.ModbusEndpointDiscoveryService@652613
==> /var/log/openhab2/events.log <==
2020-09-21 10:52:30.484 [hingStatusInfoChangedEvent] - 'modbus:tcp:device' changed from UNINITIALIZED to INITIALIZING
==> /var/log/openhab2/openhab.log <==
2020-09-21 10:52:30.510 [TRACE] [r.AbstractModbusEndpointThingHandler] - Initializing modbus:tcp:device from status INITIALIZING
2020-09-21 10:52:30.516 [TRACE] [r.AbstractModbusEndpointThingHandler] - initialize() of thing modbus:tcp:device 'E3DC Modbus TCP' finished
==> /var/log/openhab2/events.log <==
2020-09-21 10:52:30.518 [hingStatusInfoChangedEvent] - 'modbus:tcp:device' changed from INITIALIZING to ONLINE
To start analysis from scratch please check if your E3DC IP-Address is really 192.168.178.56!
In the example description I missed to replace the concrete IP with YOUR_E3DC_IP. Modbus TCP Bridge gets online with any valid IP-Address,even if you type 99.99.99.99 it goâs online. So please double check valid IP!
Unfortunately i see only E3DC Modbus TCP in the Paper UI âThingsâ section. E3DC Power Plant and E3DC Wallbox is missing. Furthermore TRACE logging doesnât create any more hints:
2020-09-21 16:01:05.956 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'e3dc.things'
2020-09-21 16:01:05.982 [DEBUG] [modbus.internal.ModbusHandlerFactory] - createHandler Modbus tcp
2020-09-21 16:01:05.990 [TRACE] [very.internal.ModbusDiscoveryService] - Received new handler: org.openhab.binding.modbus.discovery.internal.ModbusEndpointDiscoveryService@d4784d
==> /var/log/openhab2/events.log <==
2020-09-21 16:01:05.998 [hingStatusInfoChangedEvent] - 'modbus:tcp:solar' changed from UNINITIALIZED to INITIALIZING
==> /var/log/openhab2/openhab.log <==
2020-09-21 16:01:06.012 [TRACE] [r.AbstractModbusEndpointThingHandler] - Initializing modbus:tcp:solar from status INITIALIZING
2020-09-21 16:01:06.016 [TRACE] [r.AbstractModbusEndpointThingHandler] - initialize() of thing modbus:tcp:solar 'E3DC Modbus TCP' finished
==> /var/log/openhab2/events.log <==
2020-09-21 16:01:06.023 [hingStatusInfoChangedEvent] - 'modbus:tcp:solar' changed from INITIALIZING to ONLINE
==> /var/log/openhab2/openhab.log <==
2020-09-21 16:01:07.037 [INFO ] [el.core.internal.ModelRepositoryImpl] - Refreshing model 'e3dc.things'
Nope. E3DC is an add-on to the standard Modbus binding. I donât know where you"d find it to install it, may not be in the usual place since it is not a standalone binding.
Karaf confirms you have not installed it so that would be why it does not work.
Does it work with the new easy-connect wallbox ? I already use the modbus-binding with my S10E Blackline but cannot get the Sun-Mode Switch to function correctly. I tried with your implementation but i think it just works with the old (white) wallbox.
if i switch it off or on it just stays null:
2020-09-21 19:27:33.327 [ome.event.ItemCommandEvent] - Item âE3DC_WB_Sunmodeâ received command OFF
2020-09-21 19:27:33.329 [nt.ItemStatePredictedEvent] - E3DC_WB_Sunmode predicted to become NULL
EDIT: It seems like its not possible to add a second bridge in the things-file or add a second modbus-bridge with the same ip-address.
I already got most of the Things i needed and just wanted to add the Wallbox to the Bridge (at the bottom), but it does not appear in the PaperUI and no entry in the openhab.log either.
I may just start from scratch and remove my Polling Bridge to get this working.
Created https://github.com/openhab/openhab-addons/issues/8538. It seems that the new modbus based bindings, such as e3dc, might be missing in some of the openHAB âmanifestsâ⌠This might explain why you have trouble with the installation.
During my development I didnât pay much attention on the installation procedure. But now Iâm also a bit confused.
Does it mean if I install Modbus binding all extensions (Studer, Stiebel Eltron, Helios, E3DC, âŚ) are installed automatically? Isnât this contrary to the normal Binding installation which is quite selective?
Also from User perspective I see some issues. If you want to integrate a device youâve this big list with all available bindings. You can search for Stiebel Eltron but you donât find it - seems itâs not supported. But itâs only hidden behind the Modbus Binding. Shouldnât it be more present in the binding list?
I see, but itâs the same problem. E.g. the DaikinMadoka Thermostat is behind the bluetooth Binding. So looking through the Binding list I can find the Daikin Air Conditioning but not the corresponding Thermostat.
Please donât get me wrong. Iâm not addressing a technical issue. From technical point itâs totally right: Youâve a protocol and based on that several extension. I just doubt this is the view of a lesser technical experienced user.
Imagine the following:
I prepare a brilliant Rest API Binding which takes care of connections, timeouts, error handling, OAuth & Token handling. As a result all web based bindings shall be based on this and are just extensions.
Spinning this even further Binding Installtion refers to a bunch of protocols and the real devices are behind them.
For this particular case I would say you want to install E3DC Binding and the Modbus Binding is simply a dependency. With this each user can install devices without knowing the protocol behind it.
Again: Donât understand me wrong. I donât press for a solution right now. But in general I think itâs worth a discussion if the Protocol Extensions is the right way to proceed.