Skip to main content
  1. This Guide explains the Firmware loading process for OpenEVSE.
    • This Guide explains the Firmware loading process for OpenEVSE.

    • This guide is specifically intended for the Windows Operating system. Advanced users may use a similar process for MacOS and LINUX.

  2. Download Windows Driver for the OpenEVSE Programmer.  Using this guide. https://rayshobby.net/dead-simple-driver...
  3. Download and install the WinAVR software. WinAVR
    • Download and install the WinAVR software. WinAVR

    • Select BOTH the Install Files and Add Path Options. Developers Notepad is Optional.

  4. Connect Programmer to OpenEVSE then connect to USB port on PC. The red stripe on the ribbon cable or yellow wire on the 6 pin connector aligns with pin 1 of the ISP connector. The red stripe on the ribbon cable or yellow wire on the 6 pin connector aligns with pin 1 of the ISP connector.
    • Connect Programmer to OpenEVSE then connect to USB port on PC.

    • The red stripe on the ribbon cable or yellow wire on the 6 pin connector aligns with pin 1 of the ISP connector.

  5. Download a pre-compiled HEX file from the OpenEVSE Sources for your OpenEVSE product and your desired configuration.
    • Download a pre-compiled HEX file from the OpenEVSE Sources for your OpenEVSE product and your desired configuration.

    • Download the latest firmware and save files into a local folder.

    • If the ATMEGA328P chip has never had firmware loaded fuse bit must be set with the following command: avrdude -c USBasp -p m328p -U lfuse:w:0xFF:m -U hfuse:w:0xDF:m -U efuse:w:0x05:m

    • To upgrade firmware, run the following command at a terminal or command prompt. avrdude -c USBasp -p m328p -U flash:w:file_name_of the_firmware.hex

    • Warning can not set SCK period is normal and can be ignored.

Finish Line

11 other people completed this guide.

Christopher Howell

Member since: 07/05/2014

7,127 Reputation

21 Guides authored

13 Comments

No edit, so . . . for accuracy, the ISP pins were moved left, not the DC-DC converter module moved right, but the issue remains the same.

Al Savage - Reply

(cont’d from previous, due to 1024 char limit per comment)

4) On my revision of the PCB, the DC-DC converter is too close to the ISP pins to allow for the IDC connector’s key; like Ed Hubbell, I had to shave off the IDC connector key to get it to fit to the pins. I see that later PCB revisions have moved the DC-DC converter to the right, and still other revisions have rotated the ISP pins 90°. For this reason, perhaps multiple Guides for firmware updating (or branches to the existing/monolithic Guide) should be considered.

More notes and pictures are here: https://nissandiesel.dyndns.org/viewtopi...

Al Savage - Reply

A few problems arose as I attempted the above recipe.

1) https://github.com/OpenEVSE/open_evse/re...

As of this writing, the Assets for 8.2.0 and 7.1.6 do not contain “flash.bat” nor “eeprom_24.bin”.

2) The filename for firmware releases is now “openevse.hex”, not “open_evse.hex”.

3) The OpenEVSE ISP programmer that I was shipped in Oct2019, Order #6383, was a Polulu USB AVR Programmer v2.1, which shipped with a std. ribbon cable and IDC connector; therefore, the instruction in Step 4: (“The yellow wire on the 6 pin connector aligns with pin 1 of the ISP connector.”) is not applicable. Perhaps I was not sent a harness I was supposed to receive, or a previous programmer that OpenEVSE shipped had a different harness.

(cont. next comment)

Al Savage - Reply

the OpenEVSE Plus device that is listed at the top of the page, that is a part that is inside our OpenEVSE charging stations, right?

(It is listed as a part at the top of this page, and i have a doubt as to whether it is a second device that needs to be purchased.)

Shawn Kovac - Reply

Using avrdude 1:6.3-7 on an up to date Arch Linux x86_64 install, running:

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

Gave back a lot of output, which I have pasted here: https://pastebin.com/7hc2iMK8 . If I am reading the output correctly, the first two operations apply correctly, but the last one does not. I went ahead and executed the following two commands to flash the .hex and the .bin, which both appear to have succeeded.

Is the error shown on the last step of the paste a problem?

Also, the instructions are not specific as to how/when to disconnect the programmer from the OpenEVSE board. Thanks.

D.H. - Reply

Add Comment

View Statistics:

Past 24 Hours: 3

Past 7 Days: 33

Past 30 Days: 98

All Time: 20,070