It was a long wish of mine to replace the nice modbus solution (to connect my E3DC) with a proper binding.
This binding is not based on modbus as this has several restrictions (few values, readonly, …) but the AES encrypted RSCP. I could just come to this point as @bvotteler has already solved nearly all the struggl around RSCP and AES in his library and example.
There is an early stage prove of concept which I would love to share (by now it’s read-only). Please expect to find bugs and please expect that the code is far away from being ready to start the merge process (expect some log-noise).
To get it working you need:
- Two files
– the addon and
– the bouncycastle encryption lib that both should be placed in the Addon directory of a version 3+ openHAB installation. - You need to have the E3DC portal registered (username, password) and in the E3DC an RSCP password set. Furthermore you need the IP adresse of the E3DC device
With that you should be able to setup the thing.
How would I like the work to continue:
- There is a ton of data that one could get from the RSCP protokoll. I pulled with a test programm everything I could get but for a lot of data I don’t have any clue what it is about and what we could use it for, so I’d be happy for any suggestion what data is useful/any usecase. Data that could be pulled are (very likely) strings from the tags that include the string ‘REQ’
- In the same file there are some ‘SET’ activities that correspond to writing. I didn’t look into that deeper.
- From another example (function ControlLoadData line 116) I’d conclude that TAG_EMS_REQ_SET_POWER_MODE is quite interesting to steer when and with what power the battery is (un)loaded (so switch from auto to manual mode)
- Get the code merge-ready …
If you want to have a look at the current state of the code you can find it here.