Henriks AVR Boot Loader for AVR ATMEGA88 with xmodem and autoboot. How to use See "avrdude_usb_atmega88.txt" on how to set fuse bits and write the boot loader to the device. Default configuration assumes 16 Mhz oscilatotor/resonator and 19200 baud. When the boot loader starts it will write a short text just to tell that it started: "www.eit.se/habl/1.4" Then it will wait about 3 seconds for user cancel autoboot by pressing Esc exactly 5 times. If any other key is pressed during the 3 seconds or esc is pressed more or less than 5 times then the application is started (autoboot). This is to make sure noice don't prevent the application from starting. If there is no application loaded it will probably go into cyclic reboot until an application is loaded. If Esc is pressed 5 times within those 3 seconds it will start sending ready for xmodem download, sending one 'C' about once per second. A binary file with an application can now be sent using xmodem protocol. If you have a hex file you need to convert it to binary first, hex2bin can be used for that. This bootloader enables the watchdog (by default) so the applications loaded needs to support that. This can be changed in avr_cfg.h. On linux xmodem loading works with cutecom but from most others like picocom it does not. On Windows hyperterminal will do. Cutecom is for buffered input so once the application is loaded (using cutecom) I usually switch to picocom like this: picocom --flow n -l -b19200 /dev/ttyUSB0 Latest verion of habl is usually found here: www.eit.se/habl