[WIP] myenergi zappi: Tutorial for OCPP integration #21270
Replies: 5 comments 10 replies
|
Hi, Ich hatte es alles am laufen... Dann verlor die Zappi plötzlich den commercialMode. Habe den CommercialMode nochmals über monta.app auf True gesetzt, ich bekomme auch "accepted" zurück und das Display schaltet auch auf CommerialMode. Sobald ich dann aber die zappi wieder an mein evcc hänge verliert diese die Einstallung CommercialMode. Als wenn evcc hier die Daten überschreibt ? Den Fehler schon gehabt oder bekannt ? Vielen Dank |
|
Hi! Mir hat die Anleitung sehr geholfen, auch meine Zappi an EVCC anzubinden. Ich habe als alternative den Dienst von Cloudflare ausprobiert und kann auch hier sagen, das funktioniert. So ein paar kleinere Errormeldungen tauchen in den Logs noch auf. Zum Beispiel: Sep 09 17:49:59 evcc evcc[3394]: [lp-1 ] ERROR 2025/09/09 17:49:59 charge voltages: timeout Wobei charge voltages: timeout scheinbar verschwindet, sobald das Auto an der Wallbox angeschlossen ist. Dann sieht es so aus: Sep 09 20:07:44 evcc evcc[6145]: [lp-1 ] DEBUG 2025/09/09 20:07:44 charge voltages: [235 233 235]V Eine Meldung die auch immer wieder auftaucht ist die folgende: Sep 09 17:52:55 evcc evcc[3394]: [ocpp ] ERROR 2025/09/09 17:52:55 ocpp message (1617561895): PropertyConstraintViolation - Field CallResult.Payload.ChargingSchedule.ChargingSchedulePeriod must be minimum 1, but was 0 for feature GetCompositeSchedule ([3,"1617561895",{"status":"Accepted","connectorId":1,"scheduleStart":"2025-09-09T15:52:54.947Z","chargingSchedule":{"duration":60,"startSchedule":"2025-09-09T15:52:54.947Z","chargingRateUnit":"W","chargingSchedulePeriod":[]}}]) Ist aber auch verschwunden, sobald ein Auto an der Wallbox angeschlossen ist. Interessant ist auch das Verhalten, dass die Wallbox erstmal anfängt zu laden, auch wenn die Parameter für Überschuss und Batterie unterschritten sind. Der Ladevorgang wird dann aber nach ca. 1 Minute wieder abgebrochen. Wäre natürlich schöner, wenn der Ladevorgang erst gar nicht beginnen würde. Ich bin mal gespannt, ob in die Zappi vielleicht nochmal ein bisschen investiert wird. |
|
https://github.com/riemers/evcc, i wanted to see how far i could bring it. I can only turn it on and off, and i can say in a config that off = eco+ and fast is for example "eco" while still keeping off/fast an option. 1 or 3 phases switch is possible but api keys don't allow managing amps. So with this it would just turn it into a dummy on/off. Was just some vibe coding so i don't dare to PR it but might be usefull for inspiration/other ideas. I saw an oauth option is there too with amps but then it needs to be fully managed too and i already have an occp profile in use and i believe you can only set one in myenergy. I think https://api-docs.s18.myenergi.net/authentication might be the best in this case, but that requires more work as you don't get a id/secret out of the box. |
|
ome time has passed since then, has anyone gathered new experience here? In the meantime, there have also been updates to the Zappi and the myenergi backend. |



Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
IMPORTANT
This currently does not work as myenergi seems to reset the commercial mode when the OCPP config changes (if you read the tutorial, this might make sense to you). Workaround can be found here: #21270 (reply in thread).
How to integrate myenergi's zappi using OCPP
Preface
The myenergi zappi is a multiphase ev charger.
It can be integrated to evcc using the OCPP 1.6 protocol. But while other chargers are capable of communicating through OCPP in your local network, the zappi has implemented OCPP as a cloud solution.
evcc has a builtin OCPP server. To control the zappi with evcc you will have to make this server accessible from the public internet so that the myenergi server can reach your evcc installation.
Preparation
To make the integration work, you will first have to prepare zappi and your evcc installation by:
Enabling commercial mode on the zappi
Commercial mode is a special mode for the zappi which basically allows a third-party platform to gain control over the wallbox. This has to be enabled, otherwise Smart Charging profiles will not work.
Go to https://monta.com/en/charge-point-ocpp-integrations/ and clickStart testingCopy the URL that is shown to you (currentlywss://ocpp-toolkit-api.monta.app)Think of a random name for your zappi and enter it into theIdentityfieldYou should aim for a unique name here, be creative :)Click onConnect. You should see a warning, that the wallbox is not connected yetGo to https://myaccount.myenergi.com/location#products and click onOCPP settingsfor your zappiMake sure the toggle button is enabledAs EV Management Platform selectOther / Manually EnterAs Backend URI enter the URL you just copied from monta.com (currentlywss://ocpp-toolkit-api.monta.app/).Important: Make sure the URL ends with a trailing
/~~As Chargebox ID enter the Identity you have chosen on monta.comAs Username enter the Identity you have chosen on monta.comLeave Authorization Key emptyClick onSaveGo back to the monta.com site. It should now show information about your wallbox and some log messages.Go to theConfigurationtabFind the entryCommercialModein the listClick on the edit button (the pencil)Change the Value toTrueand click onSave* Important: The popup will seem to be hanging for a minute or so and the configuration will also show a value ofFalsefor some time. You may have to wait for up to five(?) minutes until the commercial mode is actually activated. You can go to theLogtab and wait for a message likeReceiving <= [ 3, "<some-id>", {"status":"Accepted"}]Congratulations. Your zappi is now in Commercial Mode. If you check the screen on your wallbox it should display something like:
Make evcc's builtin OCPP server reachable from the internet
When you install evcc and configure the OCPP integration (we will do this later in this tutorial), it will start an OCPP server on port
8887which is usually reachable from within your local network.As mentioned before, we will have to make this server reachable from the public internet. There are multiple ways to solve this (e.g. port forwarding on your router while having a public IP / DynDNS).
For the sake of simplicity we will use https://ngrok.com for this, as this software is designed for this exact use case, and they offer a free tier. There are also some alternatives out there you might want to check out, e.g. https://tnnl.de (tested), localtunnel.me (untested), pinggy.io (untested), cloudflare (untested).
Generate an auth token and a domain for using ngrok
AuthtokensAdd Tunnel AuthtokenDescriptionwith something meaningfulSave. You will be presented a new token. Save it somewhere. You will need it in a minute.DomainsNew domain(Note: Only the first domain is free!)adjusted-amazed-cat.ngrok-free.app. Save it somewhere. You will need it in a minute.Install ngrok
Follow the official installation guide from the ngrok documentation.
As of today, on a Debian Linux, you can enter this command in a terminal on the machine where evcc is installed:
Setup ngrok
On the machine where evcc is installed, create a new file
~/.config/ngrok/ngrok.ymlwith the following content:Then execute the following commands to enable the ngrok service:
sudo ngrok service install --config ~/.config/ngrok/ngrok.yml sudo ngrok service startThat's it. You should now be able to access your evcc OCPP server from the internet.
Configuration
Now that we have everything prepared, we can start the actual configuration. Don't worry, we are almost done at this
point.
Configure OCPP in the myenergy account
We now want to tell myenergi to talk to your evcc OCPP server. We already have done somethin similar before to enable commercial mode, but with a different URL.
OCPP settingsfor your zappiOther / Manually Enterwss://(e.g.wss://adjusted-amazed-cat.ngrok-free.app/). Important: Make sure the URL ends with a trailing/SaveConfigure evcc to control the wallbox
Personally I could not get the OCPP configuration running using the UI configuration. So I had to configure the integration using
evcc.yaml.Add the following content to
/etc/evcc.yaml:Restart
evcc.Reduce control behavior
To reduce wear on the memory chip, myenergi limits the amount of charge profile writes to 26 per hour. So we need to artificially slow down evcc to not run into this limit.
User InterfaceExperimentalConfigurationGeneraledit theControl behaviorUpdate intervalto180sDone
You are done. Connect your vehicle to the wallbox. Open evcc. Enjoy!
Known issues
Phase switching does not work
Although the zappi is capable of switching between 1- and 3-phases, I could not get it running over OCPP yet.
evcctakes a long time to bootThis is a bug in the OCPP implementation of myenergi. When evcc starts, it will try to configure the wallbox over OCPP. At one point it will set the
meterinterval. Although this command always succeeds, myenergi never sends a confirmation. So evcc will wait up to 30(?) seconds for this confirmation before it continues booting. Just be patient.All reactions