This article looks quite promising. Just the actual ISP programmer is something I’m wondering. If it’s not the one I linked earlier, will pretty much any programmer from eBay work, as long as it contains 6 pin connector for the OpenEVSE module?
The firmware looks like it’s for the EU. Is that firmware also available for the US?
A little old but is still the process I use.
Paul
No, that’s a USB > UART programmer. This is an ISP programmer:
https://www.amazon.co.uk/USBasp-Programmer-Cable-Arduino-Programming/dp/B01CPZ52MI
This is the correct guide to follow:
Avrdude on Linux is my preferred way, as documented in the readme:
avrdude -p atmega328p -c usbasp -P usb -e -U flash:w:firmware.hex
Pre compiled EU firmware for OpenEVSE and EmonEVSE can be downloaded from here: GitHub - openenergymonitor/open_evse: Firmware for OpenEnergyMonitor OpenEVSE
So only the openevse.hex file is required on Windows as well as Linux?
The flash.bat file referred to does some other stuff as well.
Anyway, I also have a laptop with Linux so will probably use that instead of Win 10.
All,
Have successfully updated the firmware today now running 7.0.2EU
I use the https://smile.amazon.co.uk/gp/product/B07DLZPV7Q/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1 as it performs both functions should I need the TTL side at some point.
The commands I used are all done on a Win10 PC from the command prompt
avrdude -c stk500v2 -P COM14 -p atmega328p -U eeprom:r:oldevse.hex:i
This makes a copy of the eeprom to file oldevse.hex
Then
avrdude -c stk500v2 -P COM14 -p atmega328p -U flash:r:oldevse1.hex:i
This makes a copy of the flash to file oldevse1.hex
Then I flashed the new one in with
avrdude -c stk500v2 -P COM14 -p atmega328p -U flash:w:openevse.hex
After a power cycle and all is good
Not 100% sure what all the changes were between V5 and V7 but I have them now.
John
OK, went to do this just now and find that the ISP1 connector on the board has six pins and the device I bought (the USBasp) has 10 pins on the cable.
I’ve no idea as to the orientation and/or which six are supposed to connect. Help!
Hi,
this is the conversion
And this is the orientation on the board as mounted in the unit
John
So the cable that came with the USBasp unit (I bought the one linked above) can’t be used?
Sorry, no you would have to use individual cables. If you want an easy solution then buy the one I linked above as it comes with a 6 way cable and just plugs straight on. Or buy some individual wires and connect them as per the diagram I posted. I can confirm that with the above board and included cable it was very easy
John
Does the board need to be powered up somehow or are the six pins connected enough?
I’ve connected to the unit with the front removed but no power obviously and I’m getting an invalid signature message back (0x000) when using avrdude.
Hi,
I did mine with the power on as the programmer can provide power but you have to play about with the config to tell it to do that and I did not feel I wanted to bother doing that. Just do not touch the mains connectors
John
Bought a 10 pin to 6 pin adapter and finally completed the task today.
I did it carefully with the unit still powered on and all went fine.
Thanks for all that helped.
Delayed reply but hopefully useful for others.
US firmware: Releases · OpenEVSE/open_evse · GitHub
EU firmware: Releases · openenergymonitor/open_evse · GitHub
Differences in the EU versions (extracted from open_evse.h in the source code archive) are:-
// - Disable AUTOSVCLEVEL (autodetection is designed for split-phase)
// - Charging level default to L2
// - Set MAX_CURRENT_CAPACITY_L2 32 (European Limit)
// - Add ‘.EU’ to version number
// - Enable LCD Re-draw every couple of min (required for EMC/CE)
I’ve been trying to update my openevse firmware today without any joy.
Initially I bought the programmer recommended by Glynn, but as noted here, the connector doesn;t match that on the openevse. It seemed it was going to cost almost as much to get a set of individual leads to make the connection as to buy the one that JJC recommended, so I got that. However, that isn’t recognised when I plug it into my windows 10 PC (USB C - USB adapter). And I wasn;t able to figure out how to install a driver for it as the ‘Zagig’ programme doesn’t see it. I’m also not clear on how much of the instructions posted by Glynn (How to Load OpenEVSE Firmware (WinAVR) - OpenEVSE) I’m supposed to follow as they don’t seem to match what other people are doing.
As there was a flashing light on the programmer I did try running the AVRdude line, but just get the following error:
Command:
C:\Users\Rachel\Dropbox\Home\House\EnergyStuff\OpenEvSEFirmware>avrdude -c stk500v2 -P COM14 -p atmega328p -U eeprom:r:oldevse.hex:i
Response:
avrdude: ser_open(): can’t open device “\.\COM14”: The system cannot find the file specified.
I’m guessing that’s because there isn’t a driver installed, but I’m not much of a nerd in this area!
So having failed with that programmer, I then remembered my son had some leads from an old electronics kit and managed to patch up the programmer Glyn recommended using JCCs diagram. I also downloaded the driver from the instructions in the guide Glynn listed and seemed to be able to install that OK. HOwever, when I try to run Glyn’s command line I get this:
Command:
C:\Users\Rachel\Dropbox\Home\House\EnergyStuff\OpenEvSEFirmware>avrdude -p atmega328p -c usbasp -P usb -e -U flash:w:openevse.hex
Response:
avrdude: error: programm enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
So I’m not clear whether that’s just a connection issue or something more as I’m pretty sure my wiring is right and making contact.
Can anyone help?
Regards
Rachel
Hi Rachel,
have you get the EVSE powered on? This is the easiest way but you need to be careful
If not then you need to alter the software config so the programmer board provides the power but found it was easier to just power the EVSE up.
Also the line I used was
avrdude -c stk500v2 -P COM14 -p atmega328p -U eeprom:r:oldevse.hex:i
but the COM14 may change depending what port your PC allocates to the programming board
Then
avrdude -c stk500v2 -P COM14 -p atmega328p -U flash:r:oldevse1.hex:i
This makes a copy of the flash to file oldevse1.hex
Then I flashed the new one in with
avrdude -c stk500v2 -P COM14 -p atmega328p -U flash:w:openevse.hex
John
Thanks John,
My PC doesn’t seem to recognise the programmer board being plugged in - I have no idea what if any COM port it is being assigned to. Is there a way to find this out (assuming it’s being recognised at all?)
I have tried it both ways - powered and unpowered!
Rachel