matth-x / MicroOcpp

OCPP 1.6 client for microcontrollers
MIT License
340 stars 149 forks source link

Can we run this in Linux OS - Ubunutu? #228

Closed GanesanGuru closed 11 months ago

GanesanGuru commented 11 months ago

Hi @matth-x , Is it possible to run this codebase directly from Linux OS - Ubunutu in VCode? I'm geeing unknown error in terms of Arduino.h or ESP8266WiFi.h files? How to rectify those @matth-x ?

PS : SteVe OCPP Server has been setuped successfully..

matth-x commented 11 months ago

Hi @GanesanGuru,

Yes, this library runs on Ubuntu too. A full application reference is the MicroOcppSimulator which includes all necessary settings and dependencies (ArduinoJson and Mongoose).

To compile for Ubuntu,

GanesanGuru commented 11 months ago

Hi @matth-x , I've installed MicroOcppSimulator and I can run it. But not sure how to workaround with it. Does it has a inbuilt ocpp server? can we connect to external ocpp-server like Steve? Is there any step-by-step blog/manual to understand it? like

  1. This acting as client only; which connects to external Steve like ocpp server?
  2. How to execute all the transactions from client to server & vice-versa too? in terms of step-by-step?
GanesanGuru commented 11 months ago

Also @matth-x , I've downloaded the ArduinoJson but not sure how to include that into microOCPP. I've edited the CMakeLists.txt where, ArduinoJson/src --> /home/guru/Music/ArduinoJson/src @lines 86 & 106. Still i'm getting "ArduinoJson.h: No such file or directory", and if I add full path, then for someother "ArduinoJson/src/ArduinoJson/Array", the error occurs - Hence how to cumulatively include the ArduinoJson ?

Also, how to pass the build flag as MO_PLATFORM=MO_PLATFORM_UNIX ? I'm using VScode and kit is GCC9.4.0 x86_64-linux-gnu and for building I'm using Run button/Cntl+F5/Run-without-debugging.

GanesanGuru commented 11 months ago

Any suggestions @matth-x @priya2212

priya2212 commented 11 months ago

@GanesanGuru for the first question, I believe It doesn't have any OCPP server, it is just a OCPP-client which by default connects to ws://echo.websocket.events/ server with charge box id- charger-01. We can change the OCPP server URL when our client is up, then using web interface - in the OCPP 1.6 Websocket tab, we can update the URL and charge box ID with our server and ID.

We can start and stop the transactions through our server or steve server accordingly and can see the status changes in the logs at both and server end.

GanesanGuru commented 11 months ago

Hi @matth-x @priya2212 , I've done as mentioned by @matth-x ; created Platform IO and incorporated the project and tried to build the example main.c within ESP. Yet, there is an error as attached below. Dubt In the attachment, check the platform is nodemcu only & I've used build icon to build it and its corresponding console is shown. Where did I it went wrong?

Do I need to pass the compilation command with flags manually via terminal? If so, do let me know asap. Sorry for bothering too...

The compilation log has been uploaded [Uploading compile.log…]() as follows for further reference @matth-x @priya2212

matth-x commented 11 months ago

See https://github.com/matth-x/MicroOcpp/issues/9

This problem doesn't really point into the MicroOcpp project, but is more related to how to generally set up a PlatformIO project. There are dozens of fantastic tutorials out there which explain that software platform better than I ever could. Since this issue tracker is intended be a reference for MicroOcpp and not PIO, I'm closing this issue as getting out of scope.