I have been using BLIPs for years for a reliable bootloader. Lately I've been doing a lot of ARM32 stuff which has in built bootloader. I've just gone back to an old project on a ATMega640V which at the time didn't need a bootloader. I decided since I had to do some firmware updates that I might as well add in the bootloader so I can do any future updates by serial rather than having to open up the box and use the ISP port.
I tried porting my old code over to the M640 and it seems to work ok. I can reflash the firmware using BLIPs 4.0, but I seem to quite regularly fail on the verify with it saying "data input timeout error in receiveFlashBlock().... Verify flash in Block mode, wrong or no response to 'g' command".
Does anyone know what this means? It seems to fail about 75% of the time, but if I click verify again and again it will usually get through at some point. It never fails at the same point either, sometimes it will get though 8%, sometimes 80&, but always random spots.
Alternatively is there something more modern used these days? I've often wondered why Atmel don't provide their own, including full source for the PC side application like STM and some others do.
Cheers - Matt