Introduction: Warping Infinity Mirror

Picture of Warping Infinity Mirror

An infinity mirror is part of an upcoming build of mine. There are lots of great descriptions of how to make these on the site already, and I checked a lot of them out - especially Ben Finio's excellent and encouraging Arduino-powered version. However, I was keen to leverage my novice skills with Fusion360 (the first solid 3D modeling program I've used) and 3D printed the enclosure for a flexible string (rather than a strip) of LEDs. I was very happy with the look of the final product - the diffusers made it easy on the eye, it had an interesting exposed look to the wiring, and I liked how the back of each LED case glowed. The first one I made was 6" in diameter and had 25 LEDs: this one is 9" in diameter and has 50 LEDs (the entirety of one string). If you've never made an infinity mirror because it looks too complex, but would like to and you have access to a 3D printer, try this one. It doesn't use much resin (and needs no support material) and no significant making/computing/programming/wiring skills are required. It also has an interactive twist: a handle on the front allows you to warp the mirror, creating interesting wormhole effects.

You can also tune the position of the rear mirror, but because it is made of glass, you can only tilt it, not warp it.

Step 1: Parts

Picture of Parts

I've tried to make this build as kit-like as possible, but you will still need access to some modern making facilities: a laser cutter and a 3D printer. However, the laser cutting job is just a simple circle and the 3D print has been designed to be printed in 3 low-volume parts with no supports required, so the actual procedures are not difficult. Very doable at any makerspace. You will need:

- One-way acrylic mirror
- 9" diameter round mirror
- addressable RGB LED string
- Arduino Uno or similar
- 5 V power supply
- Wire
- 3D printed parts

The 3D printed parts were designed in three pieces, for two purposes: I wanted the infinity mirror to be easy to assemble AND easy to print. Printing without supports is always desirable because it saves resin and cleanup. Print the three pieces flat side down. They're all under 10" in diameter, so any 3D printer with a build area of at least 10x10" will be able to print them just fine. Print in black if possible. I used a Stratasys Fortus, and the base, middle and top used 3.1, 0.7 and 1.5 cubic inches of model material respectively.

If your build volume is not big enough to print the part in one piece, chop it up (e.g. using Meshmixer), print separately, and glue back together. The final product will be plenty strong enough because the glue joints can be offset.

Note there are two "top" parts, one warping, one not. The warping one is just taller, to allow the mirror to move.

Step 2: Laser Cut the Mirror

Picture of Laser Cut the Mirror

You will have to find a laser cutter (or service) to do this. An EPS file is attached with a line thickness of 0.001". You may also be able to find a service who will source and send you the cut one-way (sometimes called 2-way or see-through) mirror acrylic circle, but it's not one of Ponoko's materials. If you know somewhere that will do this, let me know and I will add a link to this step.

If you want to add the interactive warping effect, cut the attached EPS file out of 1/4" clear acrylic. Yes, it is small, but that is intentional: you don't want it to block much of the mirror, nor allow someone to apply too much force to the mirror. The desired effect can be achieved even with very slight distortions of the mirror. You should be able to find a piece of acrylic big enough for the job in the scrap bin of whatever shop you're in.

Step 3: Assemble

Place the (clean!) 9" mirror into the bottom of the baseplate.

Slide each LED into the appropriate slot in the base plate until it is seated at the bottom. I didn't take any special care with wire arrangement, but you could probably achieve a nice effect if you did.

Add a little E6000 adhesive to the top of each post, and clamp the middle piece in place.

Once dry, carefully remove the covering from the one-way mirrored acrylic. This material has a very thin layer of foil on one side that is easily scratched. Handle gently. We're going to put it FACE DOWN on top of the ring.

Now add some glue to the back of the uprights between each LED, and lower the top plate over the mirror. If you want the warping effect to really pop, the mirror has to be free to distort and tilt.

Step 4: Program

Picture of Program

For some funky effects, we're going to hook this up to a Arduino Uno. One of the ground wires goes to the 5V supply (-) connection, the red wire to the (+) connection. The othe blue (ground) wire connects to the GND on the Arduino, and the remaining wire connects to pin 5 on the Arduino. Just mimic the photo if this is confusing.

Plug the Arduino Uno into your computer. You will need the free, open-source Arduino software. To run the LEDs, you will also need the FastLED code available at Download it as a zip file and extract it to .../Documents/Arduino/. Replace the file FastLED.h with the attached version. You should now be able to run any of the programs installed in that package, or write your own. Just launch Arduino, hit File... Open... and browse to one of the .ino files. Change the pin number to the one you're using (DATA_PIN = 5, if you followed the previous step) and the number of LEDs to 50 (NUM_LEDS = 50). Compile the code (check mark) and send it to the Uno (right arrow). If everything is connected correctly crazy patterns will emerge. You can of course also write your own or source other programs from elsewhere.

You can do this more elegantly with a Teensy and a single power supply. I will be doing this shortly and will post the build in another project also using an infinity mirror once it's all done (stay tuned!). Be prepared for lots of soldering though...

Thanks to Scott, Anouk and Blue for help with the electronics and photography.

If you make a warping infinity mirror (or one 3D printed from the files provided), post a picture here and I'll send you a premium membership to


Jasmeeet Singh (author)2017-03-26

Can we also include text in the infinity mirror by engraving it on the acrylic glass in front of the mirror(without any warping effect)?

septemous made it! (author)2017-03-20

Thank you !!

makendo (author)septemous2017-03-20

great job - premium membership sent

septemous (author)septemous2017-03-20

Thank you !!

This was a great project - and if you follow the instructions you will be successful.

NOTE: You do need the arduino in order to get the lights to work. I thought they would turn on with out it, but they only blink once to show they received power.

septemous (author)septemous2017-03-20

Also note that your 2-way mirror can get scratched very easily!

My CNC cutter scratched mine up before I even got it :(

makendo (author)septemous2017-03-20

Yes - the mirror is a very thin film of mylar. Just make sure you have it facing down rather than up!

makendo (author)septemous2017-03-20

Yes, no arduino = no lights. But it would be pretty boring if you couldn't program them anyway

Cramery (author)2016-12-08

Hy, So I bought the LEDs you linked, but now Im standing infront of a bigger problem. I never worked with such LED strings so how can I connect them to the PSU and the Arduino, I cant find any instruction to do that?

septemous (author)Cramery2017-03-19

See my comment above -- and just attatch like the photo in the instructions ..

"the white
wire within the female plug is your DIN. The blue wire within the same
connector is unused. The lose red wire, stripped is 5V, the lose blue
wire, stripped is ground"

makendo (author)Cramery2016-12-18

Read step 4, and mimic the set up in the 4th photo

Cramery (author)makendo2016-12-18

thx :)

septemous (author)2017-03-19

Just got it all rocking'n'rolling :)

Key info (form Amazon comments) ...

"the white
wire within the female plug is your DIN. The blue wire within the same
connector is unused. The lose red wire, stripped is 5V, the lose blue
wire, stripped is ground"

Also - for newbies like me .. note that the lights only blink once quickly when power is connected to them. You NEED the Arduino board hooked up to actually get the lights to turn on :)



septemous (author)2016-12-18

Hi :)

The link to the addressable LED's is broken.

Would you be so kind as to fix it?

This is going to be my first instructable i ACTUALLY make :)

Thank you!

makendo (author)septemous2016-12-18

Thanks for letting me know. Try this link (also fixed in instructable). Unfortunately, I haven't been able to find a stable link for these.

septemous (author)makendo2016-12-18

Ahh - thank you. I see these are "Spiral" LED vs. Square or Round?

Is that a design decision?

Just wondering as these are not "Prime" and I would have to be .... Patient !?!? :)

Than you!

makendo (author)septemous2016-12-18

these are prime but they only have one in stock. As far as I can tell from the photos (and my own experience of buying multiple batches), they're all the same.

millerjr (author)2016-11-02

My apologies for taking so much of your time. The 3D Hubs vendor uses SolidWorks. He asked if you would share the source file, especially if you use SolidWorks. He's using the IMBase2.stl file, and responded (and I hope it makes sense to you!):
'Looks like the original design used a pattern to create the standoff details. Each of those are overlapping each other a little bit and that is what is causing the issues. Also, the top details aren't completely attached to the base.'


makendo (author)millerjr2016-11-02

OK. I used Fusion360, so that's not going to help. But I think I've found the problem: I didn't combine all the solid bodies I generated into one. That's been done now, and I will shortly upload IMBase3.stl. It clearly didn't matter for the Fortus, but is equally clearly a problem for other systems. Thanks for flagging this, much appreciated.

millerjr (author)2016-11-02

Hold the phone... keyboard or other preferred communication device! The 3D Hubs vendor thinks that he has this sorted out. He's doing a print overnight to verify the solution. When he lets me know the solution, I'll definitely pass it along.

millerjr (author)2016-11-02

This is the message I received and the images it references:

'IMbase.stl has some geometry issues, though. I have attached some
screenshots. The first is what I assume it is supposed to look like, the
second shows intersecting triangle problems, and the third shows how it
would print. It may still work as-is, but wouldn't be as clean as it
should be. You can see in the third image the full and partial gaps
created by the geometry problems.'

I requested PLA as the material.

makendo (author)millerjr2016-11-02

Very strange. I've uploaded a new base file, in case it got corrupted somehow (IMBase2.stl). Try that. Printing it on the Fortus was entirely routine and I can't see any issues with the STL in any program I've tried. Do you know what platform the 3Dlabs person is using?

millerjr (author)2016-11-02

The 3D Hubs vendor is having some trouble with the IMBase.stl. Should i post those questions here, or is there another method for that type of thing?

makendo (author)millerjr2016-11-02

I'm curious to know what the issues are, so sure, share them.

maria_AI (author)2016-11-01


k1t4r0 (author)2016-10-31

The most amazing infinity mirror i´ve seen!

muralidharanm1 (author)2016-10-31


T0BY (author)2016-10-30


Knibbsy425 (author)2016-10-30

sounds like an interesting rewarding build, I may give it a go...

John T MacF Mood (author)2016-10-30

Stunning! Simply excellent! I wish I had the machines. If anyone decides to make a few sets of parts (hint, hint), let me know, I'd buy one...

makendo (author)John T MacF Mood2016-10-30

Thanks. I have no plans to sell these myself, but there are a lot of services out there that will do it (try the 3D hubs link next to each part, for example).

Me too!

spa31rky (author)2016-10-30

My first Infiniti Mirror was approximately 20 feet in diameter and the center point of a dance floor. Each light was wired separately to a circuit board. THis was hundreds of patterns could be displayed. It was supported with acrylic 2" post through out because people would be dancing on it. I done this back in 1984. IT was just too funny to be at the control of the pattern with alcohol drinking dancing going on.!!

makendo (author)spa31rky2016-10-30


millerjr (author)2016-10-30

Could you clarify a coupe of things? It seems smarter to ask now, rather than find out that I made the wrong choice.

Is there a preferred material for the 3d printed items?

Also what was the thickness of the acrylic mirror? (The Amazon listing has a 1 mm and a 3 mm)

Thanks for the time, and the instructable!

makendo (author)millerjr2016-10-30

Sure. I think any 3D-printable material will be fine; I used ASA. The mirror I bought was 3 mm. Good luck!

makendo (author)makendo2016-10-30

Just to add to that - I don't see why 1 mm wouldn't work, and in fact it may be considerably more warp-able... but also more fragile. If you go with 1 mm pls let me know how it turns out

DmitryI (author)2016-10-30

nice project, apply to any of the contest and i would totally vote for you

makendo (author)DmitryI2016-10-30

thanks - not eligible as I am currently @Pier 9 (home of instructables), but being here is prize enough!

WannaDuino (author)2016-10-30

May i say, i am jalous of your knowlegdge and skills

i like it so mutch.

greetings from a' WannaDuino

watchmeflyy (author)2016-10-29

This design is brilliant! I like the enclosure you created to make an LED ring instead of a standard strip for a Neopixel-esk look.

makendo (author)watchmeflyy2016-10-29


Donald Bell (author)2016-10-28

Another great project I can't wait to try, Scott! I've been curious to try these addressable string lights, and now I have a great excuse.

makendo (author)Donald Bell2016-10-28

Thanks Donald. Yeah, this build is a great entry into addressable LEDs - easy & rewarding

DjNiX9011. (author)2016-10-28

oh my WOWsers!!!

LastPayLoad0 (author)2016-10-28

I like it

About This Instructable




Bio: Analog maker dabbling in digital manufacture
More by makendo:Laser-powered Light SaberScott McIndoe Pier 9 ResidencySolar analemma chandelier
Add instructable to: