+ Reply to Thread
Results 1 to 5 of 5

Thread: Boot Loaders and Self Programming.

  1. #1
    crashmeplease Newbie
    Join Date
    Jun 2009
    Location
    Sheffield, UK
    Posts
    31

    Boot Loaders and Self Programming.

    While I am not entirely new to AVRs, something that is new to me is the Boot Loader and Self Programming features...

    In a nutshell I was thinking about designing a board that has several AVRs on, and to aid this I was given a tray of surface mount AVRs.. Obviously I don't really want to put several ISP headers c/w additional circuitry on the board, plus with surface mount I can't just swap out the chips when I want to update the s/w, which is when I came across the Self Programming idea..

    So basically do the Self Programming features allow you to reprogram the AVRs say by the UART or SPI bus? How does this work, would I upload the new s/w via PC to a Master AVR and then send a command to initiate an update to Slave AVRs via SPI?

    Looking at the App Notes it seems much more complicated than this, and I don't want to spend forever trying to understand them to find out it doesn't suit my requirements! I am given the impression that I would have to write a custom Boot Loader etc, and surprised that nothing generic exists?

    TIA


  2. #2
    3v0
    3v0 is offline
    3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent
    Join Date
    Jul 2006
    Location
    USA
    Posts
    6,399
    Blog Entries
    11

    A boot loader is software programmed into the AVR flash memory that will allow the chip to accept and program additional program code from some source. The boot loader depends on the AVRs ability to program its own flash.

    If you do not provide an ISP header for each processor you need to program each AVR with the bootloader prior to soldering it to the PCB. But if you mess up and overwrite a boot loader on one of the chips you will be in trouble because you have no way to reprogram the corrupted boot loader. You could buy a very expensive test clip that lets you program the chip on the PCB. I expect they are too expensive to be a possibility.

    Having said that I strongly suggest you include some version of an ISP header to reflash you boot loaders.

    So basically do the Self Programming features allow you to reprogram the AVRs say by the UART or SPI bus? How does this work, would I upload the new s/w via PC to a Master AVR and then send a command to initiate an update to Slave AVRs via SPI?
    Keep in mind that each AVR must reprogram itself using the previously programmed boot loader. The boot loader communicates with some other device which provides the data to be programmed.

    If you understand the above you can flash an AVR from an AVR or PC over most any IO channel provided you adjust the boot loader to use that channel.

    3v0
    Please post questions to the forums. PM's are for personal communication.

    BCHS/3v0's Tutorials
    Junebug USB PIC programmer kit., USB Bit Whacker,
    The 15 Minute Printed Circuit Board! (+drill time)

  3. #3
    crashmeplease Newbie
    Join Date
    Jun 2009
    Location
    Sheffield, UK
    Posts
    31

    Ahh ofc I would still need to initially program the Boot Loader, doh! Something I didn't really think about.

    I will have a rethink then about using the ISP option for all the AVRs.


    Ta

  4. #4
    3v0
    3v0 is offline
    3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent 3v0 Excellent
    Join Date
    Jul 2006
    Location
    USA
    Posts
    6,399
    Blog Entries
    11

    This is probe that will attach to 3 adjacent pins on a QFP chip.

    Agilent | E2613A 0.5 mm Wedge Probe Adapter for TQFP and PQFP



    It is $150 maybe someone has a cheaper knock off. Or maybe your pockets are deep enough.

    3v0
    Please post questions to the forums. PM's are for personal communication.

    BCHS/3v0's Tutorials
    Junebug USB PIC programmer kit., USB Bit Whacker,
    The 15 Minute Printed Circuit Board! (+drill time)

  5. #5
    crashmeplease Newbie
    Join Date
    Jun 2009
    Location
    Sheffield, UK
    Posts
    31

    Nah I don't have that kind of cash lying around, and the project would just be a one off, thanks though I didn't know such things existed!

+ Reply to Thread

Similar Threads

  1. Need help with my first boot
    By sal in forum Robotics Chat
    Replies: 5
    Latest: 10th March 2007, 03:32 AM
  2. Boot Loader
    By Electrix in forum Micro Controllers
    Replies: 2
    Latest: 2nd September 2005, 12:59 PM
  3. Boot Block
    By Oznog in forum Micro Controllers
    Replies: 2
    Latest: 10th March 2005, 10:53 PM
  4. what is BOOT ROM
    By imgemini in forum General Electronics Chat
    Replies: 1
    Latest: 5th July 2004, 10:39 PM
  5. boot loader.....
    By huanyong in forum Micro Controllers
    Replies: 5
    Latest: 6th April 2004, 06:54 AM

Tags for this Thread