Significant OpenEVSE WiFi 2.0 Firmware Update. Call for beta testers

Tags: #<Tag:0x00007f6e0e2b4908> #<Tag:0x00007f6e0e2b47c8> #<Tag:0x00007f6e0e2b45c0> #<Tag:0x00007f6e0e2b42a0>

I have been working with @jeremypoulter with input from @chris1howell on a significant update to OpenEVSE WiFi firmware.

The OpenEVSE (with WiFi option) use an ESP8266 to post data to Emoncms and control the OpenEVSE via the RAPI protocol.

Here are the main changes:

  • New web page UI to control OpenEVSE functions, settings and status etc.
  • Lots of general UI improvements
  • Solar PV diversion (select Eco mode to modulate charge rate based on solar PV output)
  • RAPI over MQTT - control all functions of the OpenEVSE via MQTT

Following on from the thread:

Here is latest example using ‘Eco mode’ to modulate charge rate based on solar PV output. All diversion calculations are done directly on the ESP (nodeRED not required). Solar data is coming from emonPi via MQTT (simulated in this example since I don’t have solar PV onsite and it’s raining!)

Voice control using Google Home and MQTT:

Web UI Demo:


It would be really great to get some more real-world testing of these features. If you have an OpenEVSE, solar PV and are interested in helping out in return for shop credits please get in touch.

All the new changes are currently in the master branch of OpenEVSE Wifi 2.0 rep:

You will need to compile using PlatformIO (instructions in readme) and upload to the ESP8266 via USB to UART adapter. If you upload ‘openevse_dev’ enviroment any subsequent updates can be made over WiFi using OTA.


Interesting stuff, looks like a good job so far, well done.

I don’t have the OpenEVSE unit, but let me know if I can help in any other way!

1 Like

When sending $SC command, does it support $SC second argument (dev branch of firmware) ?

SC amps [N]- set current capacity
if amps < minimum current capacity, will set to minimum and return $NK amps
if amps > maximum current capacity, will set to maximum and return $NK amps
otherwise return $OK amps
default action is to save new current capacity to EEPROM.
if N is specified, then new current capacity is volatile, and will be
reset to previous value at next reboot

Not yet, but thanks for pointing this out. I have raised issue in GitHub:

4 posts were split to a new topic: Help setting up Solar PV divert (EcoMode) on OpenEVSE WiFi

This has been fixed and released in V2.4.2. Latest stable wifi-gateway release version is V2.7.0. Highly recomend updating to latest version for many significant bug fixes. See release page for change log:

I’ve had the OpenEVSE for a few years now, and I had added the ESP8266 to it and gotten it configured at one time, but never really used that functionality. Now, I am working with some home automation stuff with and I see they have an OpenEVSE connection so I want to update my OpenEVSE.

What level of firmware do I need in the OpenEVSE board, and what version in the ESP? Is the process written in a step-by-step format anywhere?



Great! HASS is awesome. It would be great to have an OpenEVSE module plugin for HASS.

The openevse-wifi FW can be updated easily by using the http updater in the system tab of the web interface, see demo:

The upload the latest FW firmware.bin from the wifi-gateway release page:

The openevse controller is harder to update, you need an ISP programmer. However the wifi-gateway should be backwards compatible with all controller FW versions. There has just been some minor LCD issues fixed. Would not bother to update unless necessary. You will also lose your EEPROM fash memory e.g kwh totals

I have an FTDI programmer for the esp8266, and the programming cable for the OpenEVSE as well. I bricked (later fixed) my OpenEVSE unit once in the past, so I’m trying to make sure I have the order of operations correct. I also have a second OpenEVSE that I built as 110/220 VAC for a portable charge if I need it, so I’ll sacrifice it to make sure I get this working correctly.

Thanks, and I’ll keep you updated on my progress.

1 Like

I managed to get it working on my portable unit, but the one mounted in my garage won’t take the update. Disappointing. I’ve played with it a little bit and everything looks good so far. I’ll see if I can get it to talk to HASS tomorrow.

Nice work, what do you mean by “won’t take the update”. What’s the issue? What errors do you see? What steps are you using to do the update?

Is it possible to use a network connection instead of a WIFI?

I used a USBASP v2.0 to program the portable one, noting pin 1 to the yellow wire, etc, but when I went outside to the garage to program the installed one, running flash.bat with the same cable connected to the other unit fails, saying something about unit not found. I didn’t think to take screenshots of it, but the display isn’t working now and it’s not happy. I even tried to program it using a FTDI friend to the pins where you would connect the ESP8266 to and no luck.

I’m flying out for work this evening, so I don’t have time today to fool with it. I’ll resume on Thursday of next week when I get back. I was able to get the portable unit working, so at least I can charge my car before I go to the airport. I also got the wifi working on it, so worst-case scenario, I would just swap the two units, as I really haven’t ever used the portable one out in the wild.

My installed unit is an older 50A unit and the portable one is a 30A unit.

Are both units V4 controller? Do they both look the same?

Often ISP programmers don’t supply power to the unit, you may need to have the power the openevse switched on while programming. Be sure to plug in the programmer before switching the power on and proceed with caution.

I’m afraid this won’t work since the openevsed controller does not have a serial bootloder, it’s ISP program only.

3 posts were split to a new topic: OpenEVSE Home Assistant Integration

I can not go through the web in the wifi module settings

Hi @DimaBY,

Have you got a different browser you could try? Issues have been reported with older versions of internet explorer. Recommend using Edge/Chrome/Firefox/Safari or smartphone browsers work well.

I tried on Google and iphone se

Could you post a screen shot showing which version you are running? Version number should be at the bottom of the page