Stay warm this winter season with 3D Printed NeoPixel coat buttons, powered by Gemma, Adafruit tiny wearables electronic platform.

Parts & Supplies


Style and Size

Your button doesn't have to a circle, it can be what ever shape and size you want! Customize your buttons in Autodesk's Fusion 360.

The Parts

These were originally created in Autodesk 123D, which is no longer available or supported…but the same files can be imported into Fusion 360Open our file and take a look at the parts that build up the design. To change the size, there is 4 parts that will need to be resized.

  1. Base Shell (23mm)
  2. Base Bottom (24mm)
  3. Cover Shell (24mm)
  4. Cover Bottom (25mm)

Button Diameter

Our coat buttons have a diameter of 25mm. The cover piece will be seen on the front of the coat while the base piece is 2mm shorter so the cover piece snaps onto the base. To change the size of a part, select the object and click on the 'Scale' option in the bottom menu. Change the scale option to non-uniform and enter your desired size in the X and Y input boxes.

Snappy Nubs

We uses these shapes to tightly secure the cover and base pieces together. To assemble the nubs, you will need to perform combine (subtract) to the (1)base shell and combine (join) the (3)cover shell. WIth the (1)base shell nubs subtracted, select the base shell object to highlight it. Select the top and bottom faces of the object and click the gear icon. In the hovering menu, select the shell function. Type 1mm into the input box and press enter. To combine (join) the two nubs onto the (3)cover shell, click combine, keep the option set to 'join' and select the shell and two nubs.

NeoPixel Snaps

The (2)base bottom will need to be combined (join) to the (1)base shell. Move the shell down on the Z-axis until it touched the top surface of the base. The inner shell that is in center of the base will also need to be combined. The 4 ellipse shapes will need to be subtracted from the combined base so that the base and the NeoPixel can be sewed onto the coat.
  • 12.8mm NeoPixel snap


After the combining and subtracting the parts, you should be left with two pieces. Arrange the two pieces so they are perpendiculer with each other. Save as a copy to your computer and Export STL.

Transparent PLA

For most FDM 3D printers, PLA material works with out a heated bed. Transparent PLA comes in a few different colors and there are different distributors.The extruder should be set to 230c. The model was design to print with a raft or any supports. It's a pretty small print so we recommend supervising the whole print since it only takes 5 minutes. Below is a small list of places to get PLA. Make sure your filaments diameter size matches your 3d printer. Most common size is 1.75mm and 3mm.


Slice STL

You will need to slice your STL file using the settings above. We recommend using MakerWare or ReplicatorG.
NeoButton Set
About 5 minutes
Transparent PLA @230
No Raft
No Support
2 shells
2.0 Layer Height

Button Removal

Carefully remove the buttons you wish to replace from your coat using scissors. We need to sew the 3d printed button base to the coat. Start with the very top button, and work your way to the bottom. Place the base part over the area where the coat button was and sew the base onto the coat. You can use normal cotton thread. Once you them sewed onto the coat, test out the coat to see if the buttons are lose enough to button the coat.

Add NeoPixels

The NeoPixels will snap onto the base. Make sure to align up the pin with the holes in the base. Notice how the holes in the base are longer than the pins of the NeoPixel. This is to allow conductive thread to be sewn to the NeoPixels. Make sure the data arrows of the NeoPixels are pointing upwards, towards the top.

Sew NeoPixels

Connect up the power, ground, and data pads on your NeoPixels with conductive thread, securing them inside the bottom half of the button. Take a look at our Conductive Thread guide as well as the Sparkle Skirt and Chameleon Scarf project guides for tips & techniques for sewing pixels with conductive thread.

The stitches should be a little loose, so that the button can lift a few millimeters away from the surface of the coat. But not so loose that the button can twist and short the threads!

Gemma + Power

The gemma can be sewn near the bottom of the coat, preferably close to the coat pocket. Position the gemma with the 3 pins facing towards the chain of NeoPixels. The Gemma is upside down, with the on-board circuity facing the inside of the coat, this provides a bit of projection. To power the gemma, you can choose between an alkaline rechargeable battery pack or a lithium polymer battery. If your using a lipo battery, you can optionally solder a slide switch for conveniently powering it on and off. The JST connection of the battery pack can be sewn to the coat. The battery can be tucked into the coat pocket.

This guide was first published on Jan 15, 2014. It was last updated on Mar 08, 2024.