Hey all,
I just wanted to report that I successfully flashed the XMinilab firmware from my Macbook Pro using a usb cable so wanted to document the procedure. On windows the recommended way to do this is with the
Atmel FLIP
program, but there is an alternative for Linux and OS X:
dfu-programmer
.
The biggest hurdle is to compile dfu-programmer from source. These are the steps I took:
?
- Download the latest version of the
firmware
. Check the
manual
to see which hardware version of the board you have and use the appropriate firmware.
- You'll need libusb so install it via
Homebrew
\r\n/$ brew install libusb
- You'll also need autoconf and automake:/\r\n/$ brew install autoconf automake
- To get dfu-programmer to compile I ended up using
this fork
, b/c the official version couldn't find my libusb. (I've notified them about this
here
) So download the fork and follow the compilation instructions in the
README
.
- Check that dfu-programmer is installed correctly by running:/\r\n/$ dfu-programmer --help
- Connect the XMinilab to your Mac with a USB cable, while holding down K1. A red led should light up.
- Now to do the actual flashing run these commands from inside the directory containing the firmware files: /\r\n/$ dfu-programmer atxmega32a4u erase/\r\n/$ dfu-programmer atxmega32a4u flash xminilab.hex/\r\n/$ dfu-programmer atxmega32a4u flash ?--force --eeprom xminilab.eep/\r\n/$ dfu-programmer atxmega32a4u reset
- The XMinilab should now reset and show the new firmware version on startup.
?
Notes
This procedure worked for me with an XMinilab v2.3 and a Macbook Pro running OS X 10.11.1 (El Capitan).
It is probably also possible to erase the eeprom before writing the new one, in which case you won't need the --force flag but I haven't tried that. Likewise, I think it's possible to omit erasing the firmware before writing it if you do use the --force flag. The steps that I wrote down is how I did them.
Hope this helps someone,
Remco