Start a new topic

firmware upgrade


Just received my openevse 5.5 board

However, upon checking some of the options it seems some are missing

My version is 7.1.3, but the latest is 8.2.0.

I bit dissapointed that I did not received a module with the last release

Looking at the upgrade instructions, and they don't seem to have been updated

On one of the last steps, it mention yo need  3 files; flash.bat, open_evse.hex and eeprom_24.bin

However, on the repository for the last release ( 8.2.0)  there are a couple of hex files ( I assume I should use openevse.hex), there is no  bin o flash.bat files

What am I missing?

should just run the command to flash the hex file as per the Readme file:

`$ avrdude -p atmega328p -B6 -c usbasp -P usb -e -U flash:w:firmware.hex`

Any help appreciated


OpenEVSE has not officially tested 8.2.0 yet. We ship with the latest fully tested release, which is 7.1.3. 

flash.bat just automates the commands:

Required only the first programming

avrdude -c USBasp -p m328p -U lfuse:w:0xFF:m -U hfuse:w:0xDF:m -U efuse:w:0x05:m 

loading firmware

avrdude -c USBasp -p m328p -U flash:w:open_evse.hex 

The EEPROM loads the factory default settings (not required).



Thanks for your response

I thought 8.2.0 was a stable ( tested) version

I am after support for OCPP, and - apparently- is supported on ver 8.2.0

Is there any other version that has OCPP support?


OCPP is part of the WiFi firmware not the OpenEVSE safety controller.

If you want the latest OCPP build, here is a development release. You can update the WiFi firmware over the air. 


I am using a Wemos D1 mini, ( esp-12f) so I assume I will need the NodeMCU file

However, I'm strugging to get the precompiled code:

 I go to :

Then select on the right the last release ( V4.1.2 ) link

However, I can only see the two Huzzah boards and the openevse wifi v1 boards

Can you point em in the right direction?



I'm struggling to get the precompiled file for my Wemos D1 mini ( esp-12f) - I assume is a NodeMCU code

On the link there seems to be no support for this board

Then I realizedI  must be using the old WiFi V2.x ESP8266 version ( in my case V2.9.1)

Can I still upgrade over the air or will I need to compile the source code and program it via usb?


Thanks again




flash.bat just automates the commands:

loading firmware

avrdude -c USBasp -p m328p -U flash:w:open_evse.hex


While flash.bat references open_evse.hex, both 7.1.6 & 8.2.0 don't have that file; it's been renamed openevse.hex .  So, flash.bat (and your example above) won't work.

The guide at is in desperate need of updating.  I included a comment to that guide with this information, but it's buried behind a "Load more comments" wall and is unlikely to be seen.

"The EEPROM loads the factory default settings (not required)."

So, this line in the flash.bat from 7.1.3 isn't needed?

avrdude -V -c USBasp -p m328p -U eeprom:w:eeprom_24.bin

Or, it's only needed on a fresh/blank install?

Again, as eeprom_24.bin is referenced in the guide, and in the only flash.bat easily found, the guide is in desperate need up updating.

@Javier -

Versions 3.x and 4.x of the WiFi require ESP32 based modules. The ESP8266 is no longer supported.


You are correct, the guide should be updated.

For an upgrade this is the ONLY command you need...

avrdude -c USBasp -p m328p -U flash:w:file_name_of the_firmware.hex

The eeprom_24.bin command is not required, to forces the settings saved to eeprom to be overwritten back to factory defaults. Most users should keep their own settings.

Fuse bits only need to be set once on a virgin chip. 


I have managed to program the board following the instructions, so kudos for your help

As per my previous comments I wanted to use OCPP, so it seems I either need your wifi board - which is currently out of stock, or program a huzzah board ( so options are quite limited)

Should I use a tool like modemcu flasher and use the published openevse_huzzah32.bin file?

I tried to see if I could compile the source code ( I have a little experience with Arduino IDE), but it seems I can only use PlatformIO, so it seems too complicated  - at least for me!


just found out how to install teh firmware:

You just need a "standard Wroom-32 board " and flash the last openevse_wifi_v1.bin binary


In my case I use PlaformIO  to flash the source files

just leave the platformio.ini file with:

default_envs = openevse_wifi_v1

Compile the code and flash using CSCode to the board, and works like a charm!

Thanks evrybody

In order to use a Wi-Fi board that is not supplied by OpenEVSE, you'll need at least two pieces of hardware (the Wi-Fi board and a programming tool), the flashing software esptool, and three files (firmware, plus one-time prep code/information).

1) Wi-Fi board: I bought the Huzzah 32 board , $14 (around $22 for me, shipped).  It comes with header pin strips: cut off a five-pin section, solder it the the end of the board labeled "TX" through "GND", and you're done: that's all the hardware prep needed.  You do not need to install any other header pins, the OpenEVSE doesn't use them.

Top view of Adafruit HUZZAH32 – ESP32 Breakout Board surrounded by 3 18-pin headers

2) Programming tool: I bought three different ones, but only one from eBay , $8, worked without issue.  You'll need to fiddle with your OS to get the programmer's driver (often FTDI-based) to work correctly; I've found it was more difficult with Windows than with Ubuntu, but YMMV.  These units often come with minimal instructions, but thousands of people have used them before and common problems and fixes are available via an internet search.  If I figured it out, you can, too.

Pay attention to how you connect the leads to the board's pins!  Do not trust wire colors!  And, RX on the programmer connects to TX on the Wi-Fi board; TX on the programmer connects to RX on the Wi-Fi board.




If this looks too scary already, it's best that you stop here and wait for the PnP (sometimes) OpenEVSE Wi-Fi board to become available again.  My experience with OpenEVSE parts and upgrades is that they'll sometimes fit OK, but there are so many different versions and revisions of OpenEVSE units that it's hit-n-miss whether the connectors or lead lengths of the part you order are appropriate for the vintage of OpenEVSE you're trying to fix or mod.


Install the esptool version that works with your OS.

Obtain these files (from here):

  • partitions.bin
  • bootloader.bin
  • openevse_huzzah32.bin

esptool --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 40m --flash_size detect 0x1000 bootloader.bin 0x8000 partitions.bin 0x10000 openevse_huzzah32.bin


If you ever needed to hardware program this same board again, you wouldn't need to flash all three files (two of which are only needed to initialize), but it also won't hurt anything to use the same commandline over and over.

After, this is what the OpenEVSE's UI showed me:


Be aware that you'll want to have the OpenEVSE's controller firmware at at least 7.1.2 to work correctly with any of the Wi-Fi's firmware >3.3.2 (ie any in the 4.x series).  You can see from above that I'd updated my controller's firmware prior to updating my Wi-Fi's firmware.

Updating the controller requires a completely different hardware programming tool (USB AVRISP or similar), different programming software (avrdude), and either an external power supply or programming with the mains power applied and appropriate care.  In other words, it's a similar process but with completely different tools.  And, while the Wi-Fi board's firmware can subsequently be updated OTA via the Web UI (or other means), to date the controller's firmware can only be updated via the hardware programming route. 

This was not at all clear to me when I was looking for an answer to the question, "How do I update the firmware in my OpenEVSEs?"


(more notes of mine, in a less-coherent and more rambling format, are here.)


Thanks for your comphensive reply

I think my method was way far easier than yours:

just buy the wroom 32 board and you won't need a FTDI adapter as it comes with a micro usb connector

Compile the source code with platformio- making sure you use the defaults : platformio.ini file with: ndefault_envs = openevse_wifi_v1

Once compiled, just flash the code with a regular micro usb cable and you are done!


It seems the open-wifi v1 board is just a regular wroom-32 board with the openevse connector

Login or Signup to post a comment