# NeoPixel Ring Bangle Bracelet

## Overview

http://youtu.be/QboUfjwQLaU

Wear a bangle of light! Build a charming bracelet from four NeoPixel rings and GEMMA, Adafruit's tiny wearable electronics platform. You will need:

- 4x [NeoPixel Rings](http://www.adafruit.com/products/1463) (16-size)
- [GEMMA](http://www.adafruit.com/products/1222)&nbsp;or [GEMMA M0](https://www.adafruit.com/product/3501)&nbsp;wearable microcontroller
- [tiny lipoly battery](http://www.adafruit.com/products/1317)
- [tiny switch](http://www.adafruit.com/products/805)
- [jewelry findings](http://www.riogrande.com/Product/TAG-SS-OVAL-896-X-47MM-W-1-HL--20-GA/684144)
- jump rings
- [magnetic clasp](http://www.riogrande.com/Product/SS-MAGNETIC-CLASP-6MM/693415)
- two pairs of pliers
- small gauge stranded wire
- [soldering iron](http://www.adafruit.com/products/180) and [solder](http://www.adafruit.com/products/145)
- [wire strippers](http://www.adafruit.com/products/527)
- [flush snips](http://www.adafruit.com/products/152)
- E6000 craft adhesive

Info: 

![](https://cdn-learn.adafruit.com/assets/assets/000/012/994/medium800thumb/gemma_flora_09-bracelet.jpg?1448311404)

![](https://cdn-learn.adafruit.com/assets/assets/000/012/993/medium800/flora_neopixel-bangle-bracelet-08.jpg?1387375774)

![](https://cdn-learn.adafruit.com/assets/assets/000/012/999/medium800thumb/gemma_flora_sine.jpg?1448311410)

![](https://cdn-learn.adafruit.com/assets/assets/000/013/000/medium800thumb/gemma_flora_figure-8.jpg?1448311421)

![](https://cdn-learn.adafruit.com/assets/assets/000/013/001/medium800thumb/gemma_flora_random.jpg?1448311421)

# NeoPixel Ring Bangle Bracelet

## Circuit Diagram

Info: 

![](https://cdn-learn.adafruit.com/assets/assets/000/012/967/medium800/flora_neopixel-bangle-bracelet-circuit-diagram.jpg?1387307048)

Click to enlarge. GEMMA's D1 pin is wired to the first pixel ring's input pin. Signal output of first ring chains to subsequent ring's input pin, and so on.  
  
GEMMA's Vout pin is wired to all four pixel ring's VCC pins. Likewise GEMMA's ground pin is wired to all the rings' GND pins.

https://youtu.be/oUuGXWMr3sE

# NeoPixel Ring Bangle Bracelet

## Build it!

![](https://cdn-learn.adafruit.com/assets/assets/000/012/961/medium800/flora_neopixel-bangle-bracelet-00.jpg?1387303266)

Lay out four NeoPixel rings on a gridded surface like a cutting mat. Glue on your metal jewelry findings as shown with E6000 craft adhesive and let dry overnight.  
  
The orientation of the rings in the photo above matches up with our coding diagram on the next page. This orientation affects how any multi-ring animations will look!

Open your jump rings by twisting the wire ends away from each other with two pairs of pliers. Torque the wire ends, don't splay them.  
  
Use your jump rings to attach the jewelry findings to one another, and also to attach a magnetic clasp.  
  
Close jump rings the same way you opened them: twist the wire ends towards each other with two pairs of pliers until they match up.

![flora_neopixel-bangle-bracelet-01.jpg](https://cdn-learn.adafruit.com/assets/assets/000/012/963/medium640/flora_neopixel-bangle-bracelet-01.jpg?1387303434)

![flora_neopixel-bangle-bracelet-02.jpg](https://cdn-learn.adafruit.com/assets/assets/000/012/964/medium640/flora_neopixel-bangle-bracelet-02.jpg?1387304807)

![](https://cdn-learn.adafruit.com/assets/assets/000/012/965/medium800/flora_neopixel-bangle-bracelet-03.jpg?1387305730)

Follow the circuit diagram to connect GEMMA and the four NeoPixel Rings. Use small-gauge stranded wire, and route the wires through the jump rings so they are hidden from the front side of the pixel rings.   
  
Make sure that the wires are not under strain-- they should be long enough to allow the segments of the bracelet to move semi-freely without tugging. The metal findings/jump ring should be responsible for strain relief.

![](https://cdn-learn.adafruit.com/assets/assets/000/012/966/medium800/flora_neopixel-bangle-bracelet-04.jpg?1387305860)

When soldering power and ground connections, where more than one wire will affix to each joint, put both wires in at once before soldering. It's easier to solder two wires at once than it is to solder one wire in, then have to reheat the solder to add another.

![](https://cdn-learn.adafruit.com/assets/assets/000/012/971/medium800/flora_neopixel-bangle-bracelet-07.jpg?1387308602)

You are making a piece of delicate jewelry, but you'll wear it out on your wrist, so there's a chance your wires could get snagged! To provide extra strain relief, add a dot of E6000 over each solder connection on the NeoPixel rings.

To add a power switch, cut and strip one of the wires leading to your battery.  
  
Add two small pieces of heat shrink tubing to the stripped wires and solder to two legs of the small switch (center leg and one outer leg). Slide the heat shrink to cover the exposed metal and shrink with a heat gun.  
  
Use a piece of foam tape to stick the battery behind the GEMMA, with the switch sticking out the side. Plug in the battery and glue the switch in place.

![flora_neopixel-bangle-bracelet-05.jpg](https://cdn-learn.adafruit.com/assets/assets/000/012/968/medium640/flora_neopixel-bangle-bracelet-05.jpg?1387307042)

![flora_neopixel-bangle-bracelet-06.jpg](https://cdn-learn.adafruit.com/assets/assets/000/012/969/medium640/flora_neopixel-bangle-bracelet-06.jpg?1387307512)

# NeoPixel Ring Bangle Bracelet

## Arduino Code

Info: 

To program GEMMA, make sure you have set up the[&nbsp;Arduino IDE as explained in the&nbsp;"Introducing GEMMA" guide](../../../../introducing-gemma/setting-up-with-arduino-ide). Also, you’ll need the NeoPixel library installed as explained in the [NeoPixel Überguide](../../../../adafruit-neopixel-uberguide/arduino-library-installation).

![](https://cdn-learn.adafruit.com/assets/assets/000/012/956/medium800/flora_neopixel_rings.jpg?1387300059)

Above is a diagram numbering the NeoPixels in their programatic order. It's handy for writing animations that seem to flow between rings, like the basic sine wave animation here:

![](https://cdn-learn.adafruit.com/assets/assets/000/013/008/medium800thumb/gemma_flora_bangle-bracelet-sine.jpg?1448311440)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Sine_Wave/Sine_Wave.ino

Here's another fun animation, it's similar to the sine wave but loops back around on itself when it gets to the fourth ring in a "figure eight."

![](https://cdn-learn.adafruit.com/assets/assets/000/013/009/medium800thumb/gemma_flora_bangle-bracelet-figure-eight.jpg?1448311443)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Figure_Eight/Figure_Eight.ino

This code randomly flashes pixels in three colors of your choice.

![](https://cdn-learn.adafruit.com/assets/assets/000/013/010/medium800thumb/gemma_flora_bangle-bracelet-random.jpg?1448311449)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Random_Flash/Random_Flash.ino

# NeoPixel Ring Bangle Bracelet

## CircuitPython Code

![](https://cdn-learn.adafruit.com/assets/assets/000/046/289/medium800/gemma_CircuitPython-Gemma-w-Blinka.jpg?1505234050)

 **GEMMA&nbsp;M0** boards can&nbsp;run **CircuitPython** &nbsp;— a different approach to programming compared to Arduino sketches. In fact, **CircuitPython comes&nbsp;factory pre-loaded on GEMMA&nbsp;M0**. If you’ve overwritten it with an Arduino sketch, or just want to learn the basics of setting up and using CircuitPython, this is explained in the [**Adafruit GEMMA&nbsp;M0 guide**](../../../../adafruit-gemma-m0/circuitpython-setup-1).

Info: 

Below is CircuitPython code that works&nbsp;similarly (though not exactly the same) as the Arduino sketch shown on a prior page. To use this, plug the GEMMA M0 into USB…it should show up on your computer as a small **flash drive** …then edit the file “ **main.py** ” with your text editor of choice. Select and copy the code below and paste it into that file, **entirely replacing its contents** (don’t mix it in with lingering bits of old code). When you save the file, the code should **start running almost immediately** &nbsp;(if not, see notes at the bottom of this page).

**If GEMMA M0 doesn’t show up as a&nbsp;drive, follow the GEMMA M0 guide link above to prepare the board for CircuitPython.**

# Planning
![](https://cdn-learn.adafruit.com/assets/assets/000/046/300/medium800/gemma_flora_neopixel_rings.jpg?1505255452)

Above is a diagram numbering the NeoPixels in their programatic order. It's handy for writing animations that seem to flow between rings, like the basic sine wave animation here:

![](https://cdn-learn.adafruit.com/assets/assets/000/046/301/medium800thumb/gemma_flora_bangle-bracelet-sine.jpg?1505255473)

And here’s the CircuitPython code, using a table of pixel numbers to sequence&nbsp;the animation:

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Sine_Wave/code.py

Here's another fun animation, it's similar to the sine wave but loops back around on itself when it gets to the fourth ring in a "figure eight."

![](https://cdn-learn.adafruit.com/assets/assets/000/046/302/medium800thumb/gemma_flora_bangle-bracelet-figure-eight.jpg?1505255510)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Figure_Eight/code.py

This code randomly flashes pixels in three colors of your choice.

![](https://cdn-learn.adafruit.com/assets/assets/000/046/303/medium800thumb/gemma_flora_bangle-bracelet-random.jpg?1505255530)

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/NeoPixel_Ring_Bangle_Bracelet/Random_Flash/code.py

# NeoPixel Ring Bangle Bracelet

## Wear it!

![](https://cdn-learn.adafruit.com/assets/assets/000/012/973/medium800thumb/gemma_flora_09-bracelet.jpg?1448311384)

![](https://cdn-learn.adafruit.com/assets/assets/000/012/992/medium800/flora_neopixel-bangle-bracelet-08.jpg?1387374325)

Enjoy your new bangle bracelet! Perfect a New Year's party, sporting event (with team colors, of course), wedding, bat mitzvah, quinceañera, and more.


## Related Guides

- [Sewable NeoPixels](https://learn.adafruit.com/flora-rgb-smart-pixels.md)
- [LED Matrix Necklace Pendant](https://learn.adafruit.com/led-matrix-necklace-pendant.md)
- [Clockwork Goggles](https://learn.adafruit.com/gemma-m0-clockwork-goggles.md)
- [LED Rocket Lamp](https://learn.adafruit.com/led-rocket-lamp.md)
- [Glitter Positioning System](https://learn.adafruit.com/glitter-positioning-system.md)
- [LED Matrix Hourglass](https://learn.adafruit.com/led-matrix-hourglass.md)
- [Motion Sensor Bat](https://learn.adafruit.com/motion-sensor-bat.md)
- [Gemma M0 Vibration Sensor Motion Alarm](https://learn.adafruit.com/motion-alarm.md)
- [BLE Synth with the Feather nRF52840 and Circuit Playground Bluefruit](https://learn.adafruit.com/ble-synth-with-the-feather-nrf52840-and-circuit-playground-bluefruit.md)
- [Dune Worm Thumper](https://learn.adafruit.com/dune-worm-thumper.md)
- [LO-LA59 Droid](https://learn.adafruit.com/lola-droid.md)
- [Case for Circuit Playground](https://learn.adafruit.com/case-for-circuit-playground.md)
- [Walkmp3rson: Personal MP3 'Tape' Player](https://learn.adafruit.com/walkmp3rson-personal-mp3-tape-player.md)
- [NeoPixel Rotary Fidget](https://learn.adafruit.com/neopixel-rotary-fidget.md)
- [Rezz-Inspired NeoPixel Glasses](https://learn.adafruit.com/rezz-inspired-neopixel-glasses.md)
- [USB Host to BLE Keyboard Adapter](https://learn.adafruit.com/esp32-s3-usb-to-ble-keyboard-adapter.md)
