ICSP programmer

  • So working with Arduino for the time that I have, all the programming of my MCUs that I have ever done has either been through a USB cable with my Uno, and with FTDI adapters with my pro minis. I have never actually done anything through an ICSP header. I have some questions on ICSP programming.

    First, is there a special ICSP programming adapter that is used, or can this be done using an FTDI adapter?

    Second, which I would guess is somewhat related to the first question, can I use the arduino IDE for ICSP programming? If this can be done with an FTDI adapter, do I select the board in the same way I do for uploading sketches?

    Third, I am assuming that this is the only way to set fuses and things. Do I just use the Arduino IDE for this, and if so, where do I find, or how do I define these settings to change them.

    Fourth, can I upload sketches through the ICSP header?

    And the last question, what are the big advantages if any to programming using the ICSP header?

  • Hardware Contributor


    1. yes you need a special adapter for ICSP. like usbasp. you can also use another arduino as programmer
    2. I think you can, but never tried. you need to change the programmer maybe. Else, in arduino ide, you can upload the bootloader using ICSP.
    3. yes fuses by ICSP. If you need to change fuses, you can do it in boards.txt in arduino core packages folder.
      you can also do it with avrdudess (fuses, or uploading compiled .hex), atmel studio etc.
      and for fuses settings : http://www.engbedded.com/fusecalc/
    4. see 2 and 3
    5. ICSP is faster. ICSP is used:
    • for uploading a bootloader
    • for uploading sketches/fw if no bootloader required (so it saves the flash used by a bootloader)

    If you google, i think you'll find lot of infos 😉

  • @scalz Thanks for the feedback. I knew I could google most all of this, but I figured that I probably wouldn't find the answers all in one place.

  • Hardware Contributor

    You can have a look at scalz' page about FOTA for usage of avrdudess.

    Do not worry with a specific programmer, just use a nano with the Arduino as ISP sketch.

  • @nca78 Will that sketch work on a pro mini also? I don't have any nanos in my parts box.

  • Hardware Contributor

    @dbemowsk yes it will, not sure with a 8MHz version though, I have never tried.

  • @nca78 I have 3.3 and 5 volt versions, so I should be good

Log in to reply

Suggested Topics

  • 244
  • 3
  • 2
  • 16
  • 43
  • 11
  • 240
  • 7