Charging openHAB with OCPP

Hey guys, I been looking recently on car chargers since I might need to develop a binding for one. Since I am still an user of traditional car I have no way to test binding locally beside one remote deployment based on easee I will soon have access. I already managed to setup simulator and mock controller to implement some basic logic related to OCPP conversations on both ends. It let me understand a little bit better protocol and what it allows to do. Now, I start poking around making a basic binding to collect state and some meter values reported by chargers.

It will take me a bit to come with first version hence I would like to collect some additional feedback from you. From my small research it seems that most popular is OCPP-J v1.6. It is being said that VW chargers are supporting OCPP v2, without much of information of what transport it is (JSON or SOAP based).
If you are interested in such binding, could you please post what charger you could test and what OCPP interface it needs?

Release history

2022.12.15

First release - just allows to connect charging station to openHAB instance using OCPP-J 1.6.

Download links - ocpp binding for openHAB 3.3, openHAB 3.2, openHAB 3.1, openHAB 3.0.

Cheers,
Ɓukasz

1 Like

This would be really great binding. I have ABB Terra AC charger which seems to have OCPP1.6. I would really be interested in testing your binding.

I have to play a little bit more with OCPP library as it seems to have issues with class loading. :wink:
If I come over that, I will have working discovery of connected chargers.

Some screens from progress (15.04.2022):

  1. Configuration

  2. Deployment

  3. Discovery results

Next part - charger and its state.

2 Likes

Basically I would be interested in starting/stopping the charging and changing the charging current. I have also solar panels and I have a separate electricity meter so I know the PV power, electricity consumption of our house and how much electricity is put back to the grid. If I could control the ABB charger I would like to optimise the charging current so that all the excess solar electricity could be used for charging up my car. This feature woul dbe really great.

The on, off per connector is rather straight, it will come. Regulation of charging power is also within the range (I aim to achieve it for same reasons as you), however it might require some device specific adjustments. OCPP defines a “smart charging profile” but it seems that not all chargers are compatible with it. There are some device specific extensions and in case of ie. easee, there are constraints of how many updates you can do to charging profiles:

Quote from easee ocpp documentation (https://developer.easee.cloud/docs/ocpp-commands):

Profiles are stored in non-volatile memory on the chargers, and frequent writes to this memory will cause wear in charger hardware. If on average profiles are updated more than 10 times a day for a longer period of time, the warranty for the charge point is voided.

@jlikonen Can you try to locate ocpp related documentation for your charger?

1 Like

This sounds really great. I’ll contact ABB in Finland and ask if they could provide documentation for the OCPP. I made some testing for ABB last year so I know the person to contact.

I found this document with Google
1642526428841-terra.ac.ocpp.1.6.implementation.overview._v1.5.external.pdf (223.1 KB)

1 Like

Any progress with this project?

Hey Jari, I got stuck in stabilization of PV part of the installation and will probably move to billing reporting of electricity meters and not chargers data this week.
I hope to visit a site where I can test ocpp in July, then I will have chance to focus on development of addon.

1 Like

Hi,
I could test VW ID.Charger Connect.
It has OCPP 2.0J according to sheet
and should get EEEbus in Q2 2022.

For OCPP v2 I can only play with simulator prior implementation. There will be a bunch of work needed to stabilize that part.

Ɓukasz, I wonder whether there has been any progress with this project. Progress on ABB side has also been rather slow; they introduced communication with LAN/WIFI but managed to break this with their latest firmware.

Hello @jlikonen, in the end I haven’t had access to OCPP stations I wished to test stuff with, thus my work on binding got stuck. I was able to test it only with simulator which is
 as good as simulator itself.
I gonna publish version which I pictured in April. It works with OCPP-J v 1.6 and allows charging station to connect, but not more.

You could then test if charger is properly connected. I think I will be able to slowly and safely iterate over it until we get “read only” access to charger data.

@jlikonen Which version of OH you are currently using?

Best,
Ɓukasz

Hello Ɓukasz,

Many thanks for the update. I understand that development of new things takes time. I’m running OH3.3 at the moment. I would be interested in testing your binding. Basically I would like to start/stop the charging and set the charging current. I know OCPP has lot more functionalities but I’m not that interested in them.

I’m also interested in test your binding. I have 2 charger in place and I use OH 3.3

Please check links to KARs posted in first post - this is initial release which allows to connect charger to openHAB. It doesn’t do much more.

Great news. I have been using Modbus binding to connect to Terra. Should I disable the Terra (Modbus) bridge when testing this OCPP binding?

To be honest - I do not know. It might be dependent on charger and its firmware. It might be that its possible to run these in parallel.

OK, thanks. I will test the OCPP binding during the weekend. I have been using Terra with Modbus for almost 2 months but I think the firmware (v1.6.5) still has some bugs.

@splatch, I installed the binding and my OCPP server seems to be online but the charger is initializing and connector has an error. See the screenshot below.

I’m not quite sure how to continue testing. I had disabled the Modbus bridge for the charger.