UFO Drones

This summer light up the night sky and fly safe with your drone. In this project, we'll show you how you can upgrade the IRIS quad copper with LED NeoPixel rings and 3d printed prop guards. These parts provide extra protection to your propellers and are extremely light weight.

What do I need to know?

If you've soldered a battery or wired up your own drone, you'll be surprised just how easy this project is! If your just starting out, here's a few guides to help you get started.
You'll need a few tools and parts to get this project lit up.


Tools & Supplies

The tall legs and propeller guards are printed in high impact strength PET material to provide support. You can get a spool of T-Glaze filament from your favorite filament supplier.

TGLAZE 50c (heated bed) /230c extruder (40 extrude /50 travel speeds)
or 60c (heated bed) / 235c extruder (60 extrude /70 travel speeds)

PET+ 270c (50/60 speeds)

4 iris-prop-guard.stl
1 iris-box.stl
1 iris-cover.stl
4 iris-ring-cap.stl
4 iris-ring-clip.stl
4 iris-ring-holder.stl
ABS/PLA @240
TG @270
20% Infill
2 Shells
0.2 Layer height
5-6 hours for all pieces

The prop guard needs a minimum print build volume of 250mm x 150mm x 100mm. No raft or support needed. Fits IRIS classic.

iris+prop-guard-half-left.stl and iris+prop-guard-half-right.stl
Updated files for IRIS+. Guard must be printed in two parts to fit on most build platforms since the propellers are larger.

The box is designed to fit the 1200mAh battery, trinket, powerboost 500 and slide switch. No raft or support needed.

This part is the cover to the enclosure box. No raft or support needed.

This part should be printed in translucent filament material to protect and diffuse the LED light from the NeoPixel rings.

This is the mount that clips onto the arm of the IRIS. It needs support material to print the overhanging parts.

This part is designed to house the 16x NeoPixel Ring. No raft or support needed.

You can download the tall legs and arm mount for IRIS from thingiverse designed by Brendan22

Circuit Diagram

The illustration is intended to be used only as a reference. The image above outlines each component and wired connections. The Trinket, Powerboost 500, 1200mAh lipo battery and switch slide will be housed inside the iris-box.stl part.

Prepping the Components

Before assembling 3D printed parts, you'll need to prepare the circuit. If this is your first project using NeoPixels and Arduino micro-controllers, it's a good idea to prototype your circuit with a breadboard.

Slide Switch Adapter

Shorten a JST extension cable to about 10mm long by cutting the positive and negative cables with wire cutters. Use wire stripers to strip the ends of the positive and negative wires. Apply a bit of rosin to the stripped ends and tin the tips of the wires. Add a piece of shrink tubing to the positive wire and solder them together by holding them in place with a third-helping-hand.

Trinket 5V

You will need to solder a female JST connection cable to the positive and negative power pads on the back of the PCB. This will allow you to plug in the male JST cable from the PowerBoost 500 5V out to the Trinket.

The following lists the pin outs for connecting the 5V Trinket to the 16x NeoPixel ring.

Trinket #0 to NeoRing IN
Trinket GND to NeoRing GND
Trinket BAT+ to NeoRing PWR

PowerBoost 500

Check out the PowerBoost introduction guide for more information on this module. In this circuit, you simply need to solder a male JST connection cable to the GND and 5V pins and connect that to the Trinket. The slide switch adapter will connect to the female EN (+) and GND (-) port on the PowerBoost 500.

NeoPixel Ring Chain

The four NeoPixel rings will be connected in a chain that will allow power, ground and data signal to distribute between them.
Each NeoPixel ring will need to share power and ground connections. The data pins are chained by connecting the first ring's OUT pin to the IN pin of the proceeding ring. You will need to measure the lengths of each wire so that they are long enough to chain together.

Powering 64 NeoPixel LEDs

In order to power all 4 of the 16x NeoPixel rings, we suggest using a Powerboost 500 module to increase the voltage of the 1200mAh lithium polymer battery from 3.7v to 5v. This will give better color over the long wires and high current draw

Setting up Arduino IDE

You'll need the Adafruit Arduino IDE and the special config for using the Trinket. Follow the introduction to Trinket guide for a full tutorial.
Once your Arduino IDE is setup for the 5V Trinket, create a new sketch. Paste in the example code. Goto file menu tools > Board > Adafruit Trinket 8Mhz. Then Tools > Programmer > USBtinyISP. Plug in a USB mini cable connecting your computer to the Trinket. Wait for the red LED to blink and get the upload code button.

Arduino Sketch

Use the code below to make the NeoPixel Ring LED's animate between two patterns. A spinning glow and a random spark effect.
// Low power NeoPixel goggles example.  Makes a nice blinky display
// with just a few LEDs on at any time...uses MUCH less juice than
// rainbow display!

#include <Adafruit_NeoPixel.h>

#define PIN 0

Adafruit_NeoPixel pixels = Adafruit_NeoPixel(64, PIN);

uint8_t  mode   = 1, // Current animation effect
         offset = 0; // Position of spinny eyes
  uint32_t color  = 0x00ffe6; // Start red
uint32_t prevTime;

void setup() {
  pixels.setBrightness(255); // 1/3 brightness
  prevTime = millis();

void loop() {
  uint8_t  i;
  uint32_t t;

  switch(mode) {

   case 0: // Random sparks - just one LED on at a time!
    i = random(64);
    pixels.setPixelColor(i, color);
    pixels.setPixelColor(i, 64);
   case 1: // Spinny wheels (8 LEDs on at a time)
    for(i=0; i<64; i++) {
      uint32_t c = 0;
      if(((offset + i) & 7) < 4) c = color; // 4 pixels on...
      pixels.setPixelColor(   i, c); // First eye
      pixels.setPixelColor(32-i, c); // Second eye (flipped)

  t = millis();
  if((t - prevTime) > 8000) {      // Every 8 seconds...
    mode++;                        // Next mode
    if(mode > 1) {                 // End of modes?
      mode = 0;                    // Start modes over
      color >>= 0  ;                 // Next color R->G->B
      if(!color) color = 0x00ffe6; // Reset to red
    for(i=0; i<16; i++) pixels.setPixelColor(i, 0);
    prevTime = t;

Prep 3D Printed Parts

Start by using flat pliers to remove the support material from the iris-box.stl enclosure. Grip onto a chuck of material, twist and pull off all the supports underneath the slide switch clips, usb holes, and all four screw mounts.
Carefully insert the slide switch adapter side-ways into the opening from inside the enclosure.

Solder Wires to Trinket

Position the Trinket inside the enclosure and align the enclosure over the bottom of the IRIS. Measure and cut three wires that will be needed to connect the first NeoPixel ring to the Trinket. Use a panavise jr. to assist holding the Trinket in place while your solder.

Fit Wires Inside Enclosure

Carefully insert the three wires through the slit and hole, on the side of the enclosure.

Mount Trinket to enclosure

Remove the support material around the slide switch and USB opening. Align the USB port on the Trinket to the USB port hole on the enclosure and use two 2.9mm (#4 x 3/8') plat phillips screws to secure it to the enclosure.
Make sure to tightly fasten the screw so that its flush with the outside of the enclosure box.

Mount Enclosure to IRIS

Position the enclosure on to the bottom of IRIS and line up the mounting holes near the battery door. Use two 3.4mm(#6-32 x 1/2') flat phillips screws with nut to attach the box to the body.

Install Power Circuit

Insert the 1200mAh lithium polymer battery into the enclosure with the corners fitting under the tabs and plug it into the slide switch adapter.
Place the PowerBoost 500 on top of the battery and connect it to the Slide Switch and Trinket.

Sealing Enclosure

Adjust the wires and components inside the enclosure, close and snap shut the enclosure. Use 4 (#4 x 3/8') phillips screws to securely close the iris-cover.stl to the iris-box.stl part.

Install Mount Adapters

Attach iris-ring-clip.stl by fitting it through the bottom of each leg.
Clip the hooks on to the top of the prop arms by angling the clips up higher.
Once both hooks are snapped into the prop arm, push the front part of the ring clip on to the logo cutout. It should click into place.
Install the iris-ring-holder.stl part on to the bottom of the iris-ring-clip.stl part. Use the #6-32x1/2' flat phillips screws with nuts to join the two mounts together and add a nut to secure the mount.

Wiring First NeoPixel Ring

Choose an arm you'd wish to house the first NeoPixel ring and measure the lengths of wire that will be needed to reach the enclosure box. Solder three wires to the IN, GND and PWR pin on the NeoPixel ring. These three wires need to be soldered to the on the D0, GND and 5V pins on the 5V Trinket. Use a panovise jr. to hold the NeoPixel ring in place while you solder.

Hide the Wires

Pop off the clips holding the wires on the bottom of each arm and tuck the wires from the NeoPixel ring in the cavity and secure them with the clips. A flat head screw driver can assist with removing the clips.

Fit NeoPixel Wiring into Mount

Slide the wires through the slit of the opening in the iris-ring-holder.stl and position the 3 wires in so it doesn't kink when you press the NeoPixel ring into the part.

Install NeoPixel Ring into Mount

Place the NeoPixel Ring inside the iris-ring-holder.stl. Make sure all of the wires are tucked inside the holder carefully, try not to bend or kink!

Install Tall Legs

Make space for the legs near the ends of the arms by moving the wire clips after the Leg mounts.

Install Prop Guards

Place the prop guards between iris-ring-clip.stl and iris-ring-holder.stl

Secure Mounts

Use the 3.4mm screws to secure all three pieces together.
Tighten the nut to lock all three parts into place.

Install LED Diffuser

Slip the diffuser cover over the top of the rings and snap it on to iris-ring-holder.stl

Conceal Wiring and Tidy Up

Use a couple pieces of electrical tape to secure and hide all to the wires.

This guide was first published on Jun 18, 2014. It was last updated on Mar 08, 2024.