-
-
Notifications
You must be signed in to change notification settings - Fork 87
Program with modified USBASP
Since I had a need to program the Chameleon Mini Rebooted (RevE), and I did not have the AVRISP MKII, or the money, I decided to give it a shot using one of my cheap USBASP clones (less than a dollar on Aliexpress)
To do that, a few modifications were necessary, one is the programmer itself, two is a modified cable, with two resistors added to create the DATA line for PDI programmer, and third, avrdude needs to be patched, so that it knows how to handle the PDI interface of the modified USBASP programmer.
None of the modifications are difficult, but you do need a soldering iron, and compiler/patching knowledge.
Using this cheap device, I have successfully unlocked the bootloader of the Chameleon, and flashed new firmware.
A note though, is that I needed to use Windows. As with dfu-programmer, Linux have some issues (which seems to be related to libusb, and, perhaps the fact that all Linux distros now are 64 bit). Using Windows gave however no issues.
The needed commandline to flash, and erase (neccessary, or verification will fail) is (avrdude will figure out the filetypes):
avrdude -c usbasp -p x32a4u -e
avrdude -c usbasp -p x32a4u eeprom:w:ChameleonMini.eep
avrdude -c usbasp -p x32a4u application:w:ChameleonMini.hex
This, as many of you know by now, is extremely helpful, if you happen to brick your device, and I hope having a (cheaper) option, than the AVRISP MKII is going to help many.
More details on how to Build and flash usbasp modified firmware (main.hex is in releases): https://github.com/nieldk/USBASP-PDI
Build avrdude (and a binary release for Windows): https://github.com/nieldk/avrdude
Home
Getting started
Basic usage
Supported cards/config
Windows
Linux
OSX
Development Environment
Terminal commands
Slots configuration
Hardware summary
Program with AVRISP mkII
Program with modified USBASP
Reference fuses and lockbits
Reference SPI Flash
RevE Bootloader