EEVblog Electronics Community Forum

Electronics => Projects, Designs, and Technical Stuff => Topic started by: SL4P on March 11, 2018, 03:49:57 am

Title: AVRDUDE (equivalent) running on an ATMEGA ?
Post by: SL4P on March 11, 2018, 03:49:57 am
I’m trying to find a serial uploader that runs on an Arduino style processor.

There are some low-end solutions, but they only work with the simplest (small memory) target processors.

My path is as below, the issue i’m facing is the larger FLASH size, which isn’t supported by the basic uploaders/crossloaders  that are available.  Of course AVRDUDE works fine on Windows/ Linux, But hasn’t been ported to ATMEGA, for obvious reasons.

HEX file from PC -> SD card
SD card -> Uploader (AVRDUDEequiv.) running on Arduino or other ATMEGA ->
(later...) -> Serial Bootloader (Optiboot) -> ATMEGA 1284P (or other large memory ATMEGA processor).
Title: Re: AVRDUDE (equivalent) running on an ATMEGA ?
Post by: Kleinstein on March 11, 2018, 09:11:26 am
I don't know of such a solution. However the step from having a solution to do the transfer of small data files towards the transfer of larger files and with a slightly different boot-loader should not be that large. The required functionality is much less than the full AVRDUDE.

Chances are you could find a solution to run on something like an Raspberry.
Title: Re: AVRDUDE (equivalent) running on an ATMEGA ?
Post by: SL4P on March 11, 2018, 09:31:22 am
Thanks... yes, I’d thought about Pi (Linux uploadets already exist - including avrdude), but I’m hoping to
Make an ultra low cost kit that I can mail out for firmware updates by non technical users.  No real loss if they get damaged or lost.

I had a look at the existing Arduino uploaded, but a)they’re ppprly written / hard to understand, and b) the functionality they’re missing is to receive himself the extended addressing sentences on the incoming hex files.  They’re good for the low 32KBytes, but nothing after that.
Title: Re: AVRDUDE (equivalent) running on an ATMEGA ?
Post by: bingo600 on March 11, 2018, 09:32:19 am
Maybe you could hack this one to fit >64K

https://spaces.microchip.com/gf/project/sdbootloader/ (https://spaces.microchip.com/gf/project/sdbootloader/)

Or is it a standalone programmer you need ?
https://www.eevblog.com/forum/buysellwanted/wts-avr-isppdi-v3-standalone-programmer/msg760432/#msg760432 (https://www.eevblog.com/forum/buysellwanted/wts-avr-isppdi-v3-standalone-programmer/msg760432/#msg760432)

Or as suggested a RasPI

Edit: It might even work for <= 128K  (1284)
https://www.avrfreaks.net/forum/clawsons-sd-bootloader-implementation-bigger-avr?skey=sd%20bootloader (https://www.avrfreaks.net/forum/clawsons-sd-bootloader-implementation-bigger-avr?skey=sd%20bootloader)


/Bingo
Title: Re: AVRDUDE (equivalent) running on an ATMEGA ?
Post by: paulca on March 12, 2018, 02:25:49 pm
Would the first hurdle not be the single serial port on the ATMega?  Do some have two?

Surely if you just got the source for the Arduino bootloader you could figure out how to run it in reverse to flash another ATmega over serial.

You would of course need another flash memory chip unless you can fit the ATMega uploader program + the uploadee into the 32K of the ATMega.

If you can find a cheap source of tiny micro flash cards you could always build one into the uploader, send  the customers one uploader and then send them SSD cards from then on.  You could of course just build an SSD card into the original product.