Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OCPP support? #24

Open
fluppie opened this issue Jul 23, 2022 · 10 comments
Open

OCPP support? #24

fluppie opened this issue Jul 23, 2022 · 10 comments

Comments

@fluppie
Copy link

fluppie commented Jul 23, 2022

Seems like libraries are being developed to add OCPP support to for example OpenEVSE
https://github.com/matth-x/ArduinoOcpp
https://github.com/OpenEVSE/ESP32_WiFi_V4.x/blob/master/src/ocpp.cpp

Could SmartEVSE v3 also be OCPP compatible in the future?

@dries007
Copy link

dries007 commented Aug 9, 2022

I would also appreciate this capability.
I now own a SmartEVSE v2 and would upgrade to a v3 if this becomes an option.
Would merge requests be welcome for this?

@mstegen
Copy link
Member

mstegen commented Aug 9, 2022

Yes merge requests are welcome, once it's clear it's possible to include this into the SmartEVSE v3 software.

@dries007
Copy link

dries007 commented Aug 9, 2022

Is it possible to develop on a generic ESP32 WROOM board? I'd prefer that over having to buy a second SmartEVSE before I know it'll be something I can use :)

@mstegen
Copy link
Member

mstegen commented Aug 9, 2022

Yes that will work (just tried), although i had to change the upload speed to 921600 bps.
v3 does not have a CLI option like v2 had, so it's not possible to configure it without display + buttons.

But of course you can force the Wifi-portal by setting WIFImode to 2. That should start the portal.
The portal password should be listed on the serial debug output.

You can also send me an e-mail and i'll lend you a light used SmartEVSE v3 to dev on. ;-)

@dries007
Copy link

dries007 commented Aug 9, 2022

I think the only thing I can't DIY from the schematic is the LCD, but a borrowed unit would help a lot. I'll email the address on the website.

@fluppie
Copy link
Author

fluppie commented Aug 9, 2022

Nice :-), OCPP could open the way to have automatic invoicing of home charging by parties like Last Mile Solutions.

@wbitholedotbe
Copy link

I don't think it's possible without an internal clock

@dries007
Copy link

dries007 commented Aug 29, 2022

I've used the network time sync as a clock source so far.

A small status update from me:

I'm having some problems with the way OCPP 1.x makes assumptions about the relationship between components (controller, server). It basically assumes the evse is dumb and all settings and configuration must be done via OCPP, meaning I'd have to strip out significant parts of the current firmware or make them work together somehow.
OCPP 2.x seems much better in this regard, since it acknowledges the existence of local load balancing for example. The problem is that I can't find a working (embedded suiteable) library for 2.x, and even most server projects are still on 1.x.

For now I'm focused on getting to know the standards and the existing firmware a bit more before I push stuff to git.

@wbitholedotbe
Copy link

You should focus on ocpp1.6 as v2 is far to complicated and not widely used yet. Not to mention not every backend supports v2

@mstegen
Copy link
Member

mstegen commented Sep 13, 2022

Not sure if it's of any use, but EVerest has implemented the OCPP-J 1.6 protocol in a module.

It's available here:
https://github.com/EVerest/everest-core/tree/main/modules/OCPP

dingo35 added a commit that referenced this issue May 23, 2024
* Add Inverted Eastron kWh meter (#20)

Co-authored-by: Hans Dingemans <[email protected]>

* Read and display EV meter currents and use them to limit power to MaxCircuit (#21)

Co-authored-by: Hans Dingemans <[email protected]>

* Wifi debugging (#23)

* Add RemoteDebug for debugging over wifi

* Minimal code adaptions for debugging over wifi

* Add instructions for debugging over wifi

* Correct the default = production release

* Add useful debugging comment

Co-authored-by: Hans Dingemans <[email protected]>

* Code improvement3 (#24)

* evse.cpp: fixing reconnect after wifi disconnect (#32)

* evse.cpp: fixing reconnect after wifi disconnect

* evse.cpp: only reconnect when in normal wifi mode

* evse.cpp: improve wifi for weak signals

Co-authored-by: dingo35 <[email protected]>

* README.md: update docs with added functionality in 1.4.0 (#30)

* README.md: update docs with added functionality in 1.4.0

* README.md: wifi disconnect no longer known bug

Co-authored-by: dingo35 <[email protected]>

* evse.h: put compiletime in debug version string (#36)

Co-authored-by: dingo35 <[email protected]>

* index.html: make it pass validation of html checker + small layout change (#38)

Co-authored-by: dingo35 <[email protected]>

* modbus.cpp: add debug messages for sent packets (#41)

Co-authored-by: dingo35 <[email protected]>

* evse.cpp: fix modbus overload when loadbalance disabled (#40)

* evse.cpp: fix modbus overload when loadbalance disabled

* evse.cpp: More elegant solution for incrementing ModbusRequest

Co-authored-by: dingo35 <[email protected]>

* evse.cpp, evse.h: comment out unused ChargeTimer (#37)

* evse.cpp, evse.h: comment out unused ChargeTimer

* evse.h, evse.cpp: remove unused ChargeTimer

Co-authored-by: dingo35 <[email protected]>

* evse.cpp: Fix compiler warning (#44)

Co-authored-by: dingo35 <[email protected]>

* evse.h, OneWire.cpp: introduce FAKE_RFID for debugging without an RFI… (#45)

* evse.h, OneWire.cpp: introduce FAKE_RFID for debugging without an RFID reader

* evse.h: extend comments on how to use FAKE_RFID

Co-authored-by: dingo35 <[email protected]>

* evse.cpp, evse.h: read imported and exported energy from mainsmeter+e… (#39)

* evse.cpp, evse.h: read imported and exported energy from mainsmeter+evmeter and feed them to the API

* evse.cpp: Fix modbus bug

* evse.h: Undo debug settings

Co-authored-by: dingo35 <[email protected]>

* evse.cpp: improve PP pin debug message (#59)

Co-authored-by: dingo35 <[email protected]>

* evse.cpp: fix meter config bug when switching modes (#60)

Co-authored-by: dingo35 <[email protected]>

* Release/v1.4.0 merge (#52)

* Pipeline build for release branches

* Increased 'safety' temperature thressholds to 70 (#48)

* Features/increased temp safety menu (#49)

* Added max temp menu item

* Added max temp menu item

* Added EV Meter information

* Added EV meter details on status page

* Added EV meter details on status page

* Refactored API textual booleans into real booleans

* Hide EV/BATT widget by default

Co-authored-by: Koen Serneels <[email protected]>

Co-authored-by: dingo35 <[email protected]>
Co-authored-by: Hans Dingemans <[email protected]>
Co-authored-by: Koen Serneels <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants