# FLORA and GEMMA ICSP

## Overview

https://www.youtube.com/watch?v=EPGj0mf158E

![](https://cdn-learn.adafruit.com/assets/assets/000/017/710/medium800/gemma-flora-isp-00.jpg?1404230585)

On each Arduino-compatible chip runs a tiny program called the bootloader. The bootloader is a helper that reads your Arduino sketch over USB and burns it into the little microcontroller brain.  
  
FLORA and GEMMA both come with bootloaders when your get them in the mail, but there are a few reasons you might want to know how to burn your own bootloader, besides the nerd cred. Maybe you’re an AVR hacker and you want to change the bootloader’s functions, or maybe you’re building your own circuit and need to flash a new blank chip. And sometimes it’s possible to corrupt your bootloader-- flashing it again can bring the board back to life.  
  
Bootloading a standard Arduino Uno is easy-- it has an ISCP connector on board. But to connect to FLORA and GEMMA, we have to get a little more creative. Read on to learn how to bootload Adafruit's sewable microcontrollers.  
You will need:  

- [USBtinyISP AVR Programmer Kit](http://www.adafruit.com/product/46 "Link: http://www.adafruit.com/product/46")  
- [FLORA](http://www.adafruit.com/product/659) or [GEMMA](http://www.adafruit.com/product/1222)
- 2x3 header (for FLORA)
- 6-pin box header, six alligator clips, soldering tools, heat shrink and zip tie (for GEMMA)

# FLORA and GEMMA ICSP

## Reprogram FLORA over ICSP

![](https://cdn-learn.adafruit.com/assets/assets/000/017/687/medium800/gemma-flora-isp-02.jpg?1404230429)

Insert the long legs of a six-pin ICSP male header into the smaller connector on the USBtinyISP.

![gemma-flora-isp-03.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/688/medium640/gemma-flora-isp-03.jpg?1404230430)

![gemma-flora-isp-04.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/689/medium640/gemma-flora-isp-04.jpg?1404230450)

Be sure the USBtinyISP's jumper is in place. Plug in your FLORA over USB and also connect your USBtinyISP to your computer over USB.  
  
Connect the pins to FLORA as shown, using diagonal pressure to make good contact between the legs of the header and the ISCP pads on FLORA.

![gemma-flora-isp-05.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/690/medium640/gemma-flora-isp-05.jpg?1404230450)

![gemma-flora-isp-21.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/883/medium640/gemma-flora-isp-21.jpg?1404848078)

![gemma-flora-isp-07.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/884/medium640/gemma-flora-isp-07.jpg?1404848280)

![](https://cdn-learn.adafruit.com/assets/assets/000/017/704/medium800/flora_Screen_Shot_2014-06-30_at_3.49.34_PM.png?1404230560)

Select **Adafruit Flora** from the Boards menu.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/705/medium800/flora_Screen_Shot_2014-06-30_at_3.49.41_PM.png?1404230574)

Select **USBtinyISP** from the Programmer menu.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/706/medium800/flora_Screen_Shot_2014-06-30_at_3.49.46_PM.png?1404230576)

Hold the ICSP connector in place and click **Burn Bootloader** from the Tools menu. It will take a while, even longer than a minute. Sit tight and don't let go until the status reads **Done burning bootloader**. Congrats, you're done!

# FLORA and GEMMA ICSP

## Reprogram GEMMA over ICSP

![](https://cdn-learn.adafruit.com/assets/assets/000/017/693/medium800/gemma-flora-isp-01.jpg?1404230470)

Slide a small piece of heat shrink tubing onto the red wire, then strip the end and solder to the corner pin on the socket as shown.  
  
Slide the heat shrink over the joint and shrink with a heat gun.  
  
Repeat with the black alligator clip at the other corner pin.

![gemma-flora-isp-08.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/694/medium640/gemma-flora-isp-08.jpg?1404230485)

![gemma-flora-isp-09.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/695/medium640/gemma-flora-isp-09.jpg?1404230488)

![](https://cdn-learn.adafruit.com/assets/assets/000/017/696/medium800/gemma-flora-isp-10.jpg?1404230503)

![](https://cdn-learn.adafruit.com/assets/assets/000/017/888/medium800/flora_Screen_Shot_2014-07-08_at_6.33.48_PM.png?1404858885)

It doesn't really matter what color goes where, but for clarity and consistency you may want to do like we do.  
  
Tin all the rest of the pins and prep the alligator clips by stripping and tinning the ends of the wires and sliding on small pieces of heat shrink tubing.  
  
Solder on the wires and shrink the heat shrink. Double check the wires are all insulated and connected securely, then cinch them together with a zip tie.

![gemma-flora-isp-11.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/697/medium640/gemma-flora-isp-11.jpg?1404230507)

![gemma-flora-isp-12.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/698/medium640/gemma-flora-isp-12.jpg?1404230522)

![gemma-flora-isp-13.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/699/medium640/gemma-flora-isp-13.jpg?1404230524)

![gemma-flora-isp-14.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/700/medium640/gemma-flora-isp-14.jpg?1404230539)

These photos better illustrate which color wire is attached to each pin.

![gemma-flora-isp-17.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/701/medium640/gemma-flora-isp-17.jpg?1404230541)

![gemma-flora-isp-18.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/702/medium640/gemma-flora-isp-18.jpg?1404230557)

![gemma-flora-isp-16.jpg](https://cdn-learn.adafruit.com/assets/assets/000/017/703/medium640/gemma-flora-isp-16.jpg?1404230559)

![](https://cdn-learn.adafruit.com/assets/assets/000/017/707/medium800/gemma-flora-isp-19.jpg?1404230577)

Power GEMMA over USB or with a battery and be sure the USBtinyISP's jumper is **NOT** in place.  
  
Attach the alligator clips to GEMMA as shown:  
Black wire -\> GND  
Red wire -\> 3Vo  
Blue wire -\> A1/D2 (SCL/SCK)  
White wire -\> D0 (SDA/MOSI)  
Green wire -\> D1 (MISO)  
  
Then connect the cable squid to the USBtinyISP. The plug will only fit in one direction.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/711/medium800/gemma-flora-isp-20.jpg?1404230594)

Flip GEMMA over and hold the yellow clip to the reset pad on the back. Get comfortable-- you will have to hold it firmly during the flashing process, which is shorter than FLORA's since the bootloader is a smaller size.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/885/medium800/flora_Screen_Shot_2014-07-08_at_3.49.52_PM.png?1404849047)

Select **Adafruit Gemma 8MHz** from the Boards menu.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/886/medium800/flora_Screen_Shot_2014-07-08_at_3.50.03_PM.png?1404849848)

Select **USBtinyISP** from the Programmer menu.

![](https://cdn-learn.adafruit.com/assets/assets/000/017/887/medium800/flora_Screen_Shot_2014-07-08_at_3.50.08_PM.png?1404849949)

Hold the yellow clip to the reset pin and click **Burn Bootloader** from the Tools menu. Don't let go until the status reads **Done burning bootloader**. You're done, congrats!


## Featured Products

### USBtinyISP AVR Programmer  Kit (USB SpokePOV Dongle)

[USBtinyISP AVR Programmer  Kit (USB SpokePOV Dongle)](https://www.adafruit.com/product/46)
USBtinyISP is a simple open-source USB AVR programmer and SPI interface. It is low cost, easy to make, works great with avrdude, has **both** [6 and 10 pin standard ISP cables](http://www.evilmadscientist.com/article.php/avrtargetboards), is AVRStudio-compatible and...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/46)
[Related Guides to the Product](https://learn.adafruit.com/products/46/guides)
### FLORA - Wearable electronic platform: Arduino-compatible

[FLORA - Wearable electronic platform: Arduino-compatible](https://www.adafruit.com/product/659)
FLORA is Adafruit's fully-featured wearable electronics platform. It's a round, sewable, Arduino-compatible microcontroller designed to empower amazing wearables projects.FLORA comes with Adafruit's support, [tutorials and...](http://learn.adafruit.com/category/flora)

In Stock
[Buy Now](https://www.adafruit.com/product/659)
[Related Guides to the Product](https://learn.adafruit.com/products/659/guides)
### Adafruit GEMMA v2 - Miniature wearable electronic platform

[Adafruit GEMMA v2 - Miniature wearable electronic platform](https://www.adafruit.com/product/1222)
 **Deprecation Warning: The Gemma bit-bang USB technique it uses doesn't work as well as it did in 2014, many modern computers won't work well. So while we still carry the Gemma so that people can maintain some older projects, we no longer recommend it.** <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/1222)
[Related Guides to the Product](https://learn.adafruit.com/products/1222/guides)
### Small Alligator Clip Test Lead (set of 12)

[Small Alligator Clip Test Lead (set of 12)](https://www.adafruit.com/product/1008)
Connect this to that without soldering using these handy mini alligator clip test leads. 15" cables with alligator clip on each end, color coded. You get 12 pieces in 6 colors. Strong and grippy, these always come in handy! We often use these in conjunction with a multimeter so we...

Out of Stock
[Buy Now](https://www.adafruit.com/product/1008)
[Related Guides to the Product](https://learn.adafruit.com/products/1008/guides)
### Heat Shrink Pack

[Heat Shrink Pack](https://www.adafruit.com/product/344)
Heat shrink is the duct tape of electronics, it keeps your stuff all safe and kept together. Especially when wiring and soldering, use heat shrink to add mechanical strength to cables. We use this stuff all the time and having a zip-lock bag of all the possible sizes is super...

In Stock
[Buy Now](https://www.adafruit.com/product/344)
[Related Guides to the Product](https://learn.adafruit.com/products/344/guides)
### Getting Started with Adafruit FLORA

[Getting Started with Adafruit FLORA](https://www.adafruit.com/product/1839)
 **Making Wearables with an Arduino-Compatible Electronics Platform**  
  
This book introduces readers to building wearable electronics projects using Adafruit's tiny FLORA board: at 4.4 grams, and only 1.75 inches in diameter, and featuring Arduino compatibility, it's the...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/1839)
[Related Guides to the Product](https://learn.adafruit.com/products/1839/guides)
### Getting Started with Adafruit FLORA Book Pack

[Getting Started with Adafruit FLORA Book Pack](https://www.adafruit.com/product/2404)
Pickup a copy of&nbsp;[Getting Started with Adafruit FLORA](https://www.adafruit.com/products/1839)&nbsp;and then hit the ground running with everything that you need to become an [Adafruit FLORA](https://www.adafruit.com/products/659) supreme being!

This pack is...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/2404)
[Related Guides to the Product](https://learn.adafruit.com/products/2404/guides)
### FLORA Sensor Pack

[FLORA Sensor Pack](https://www.adafruit.com/product/1458)
Sense the world around you! The FLORA Sensor Pack includes many types of sensors for your wearable enjoyment. Sense motion, direction, color, light levels, touch, and connections with FLORA sensor breakouts and conductive materials, and a few NeoPixels for experimenting with displaying your...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/1458)
[Related Guides to the Product](https://learn.adafruit.com/products/1458/guides)

## Related Guides

- [LED Masquerade Masks](https://learn.adafruit.com/led-masquerade-masks.md)
- [Getting Started with FLORA](https://learn.adafruit.com/getting-started-with-flora.md)
- [FLORA + FONA](https://learn.adafruit.com/flora-plus-fona.md)
- [3D Printed LED-Animation BMO](https://learn.adafruit.com/3d-printed-led-animation-bmo.md)
- [Pac Man Pixel Suspenders](https://learn.adafruit.com/pac-man-pixel-suspenders.md)
- [Washing Wearable Electronics](https://learn.adafruit.com/washing-wearable-electronics.md)
- [Cyberpunk Spikes](https://learn.adafruit.com/cyberpunk-spikes.md)
- [Superhero Power Plant](https://learn.adafruit.com/superhero-power-plant.md)
- [Celebration Spectacles](https://learn.adafruit.com/celebration-spectacles.md)
- [Adafruit Arduino IDE Setup](https://learn.adafruit.com/adafruit-arduino-ide-setup.md)
- [3D Printed Unicorn Horn](https://learn.adafruit.com/3d-printed-unicorn-horn.md)
- [Ursula's Seashell Necklace](https://learn.adafruit.com/ursulas-seashell-necklace.md)
- [Gemma 3D Printed Tree Topper](https://learn.adafruit.com/gemma-3d-printed-tree-topper.md)
- [Buzzing Mindfulness Bracelet](https://learn.adafruit.com/buzzing-mindfulness-bracelet.md)
- [Textile Potentiometer Hoodie](https://learn.adafruit.com/textile-potentiometer-hoodie.md)
