GenBoard/Firmware/Upload (2006-03-02 04:53:31)

This page is for developers only

Users check out GenBoard/UnderDevelopment/FirmwareChanges and BootLoader (that reflashes firmware via serial connection).

MegaTune distribution has .bat "batchfiles" that help with the firmware upgrade. Check any associated README.txt files or the .bat-s themselves.

Reflashing firmware might (depending on config structure changes) destroy the config so make sure you have a config at hand to upload after the firmware upgrade.

After the new code is in place, restore the config:


Uploading bootloader via ISP cable

This is normally not necessary. Only if a damaged board ain't want to talk in serial. In the future, there might be a procedure to upgrade to the networked bootloader, which is possible (or not) via serial depending on an internal lock-bit. (lock=3f allows upgrade, lock=2f does not => in this case it can only be done through ISP cable)

Uploading the firmware is really easy.

You can construct a device for 1 Euro in about 5 minutes from a DB25 male connector if you have a PC with parallel port.


This is great news. For motorola you need a $65 ($49 programmer + $16 adapter for processor) equipment or send your board to some of the kind people who can program it for you (and you need to mess with a socket).

http://www.futurlec.com/MotorolaProg.shtml


asking for help regarding BootLoader boot/main.c upload

I usually upload bootloader via avrdude (see bin/mintest.sh). However I'm not satisfied:

other notes:

in the future: (bin/patch_identity.pl script)


If you choose to diverge from what most of us use, or over-curious here are some links:


Atmega168 ISP program upload

With a smaller HW (not GenBoard, but a related LED display), we want to upload program to virgin atmega168 uCs (no BootLoader yet, that's exactly what we want to upload: ISP upload is needed, which is not supported by avrprog). Preferrably programming process should work on linux and win32 too.

avrdude avrdude works for MembersPage/MarcellGal on win32 too. (a bit annoying that avrdude uploads 128kbyte whenever we write BootLoader to the upper 2 kbyte location. No big deal, we used avrdude traditionally for virgin genboards).

Avrdude supports Atmega88 since ages. I modified avrdude.conf for atmega168, according to the datasheet

It seems to work, will be commited to SubVersionSVN. We should contribute ?

Avrdude annoying bugs:

uisp only works well for MembersPage/MarcellGal on Linux only

This sounds bad: http://savannah.nongnu.org/projects/uisp/ the new 20050207 version also adds support for AtMega88 and AtMega48 (note: NOT atmega168), and it's compatible with g++-3.4 => We might need to hack atmega168 support in.