Infinity Mirror Coaster

MnMakerMan 'profile picture'
19K14426

Intro: Infinity Mirror Coaster

In this project I will show you how to build an infinity mirror coaster with a custom 3D printed enclosure!

STEP 1: Intro


I recently found an infinity mirror from the 1980s at a local salvation army. It was broken but after adding a few leds to it, I got it working again and it looks awesome. I started looking around my apartment for an excuse to make my own from scratch and found we needed some new drink coasters so I decided to see if I could make some with infinity mirrors in them. Fast forward 3 weeks, and I bring you guys these 3D printable infinity mirror coasters.

It was a super fun project and could be used as a great introduction into 3D design/printing, electronics, PCB design, and programming.

Please consider subscribing to my YouTube channel to support me and to see more fun projects.

STEP 2: Components Needed

The components needed for this project are below:

Components

1. Clear Acrylic Plexiglass 1/8" Thick, 4 Inch Diameter (Amazon)

2. 3.7V 1500mAh Lithium Polymer battery with JCT Connector (Amazon)

3. 4" Round Mirror (Amazon)

4. One Way Window Mirror Tint Film (Amazon)

5. Access to 3D Printer (I have a Prusa i3 MK3 but have used these before and they work great Amazon)

6. 3D Printer Filament (I always used this brand Amazon)

7. WS2812B LED Strip (Amazon)

8. Attiny85's (Amazon)

PCB Components

1. 1x 609-4050-1-ND - USB2.0 MicroUSB SMD

2. 1x 455-1719-ND - CONN HEADER R/A 2POS 2MM

3. 1x P10880S-ND - SWITCH TACTILE SPST-NO 0.02A 15V

4. 1x EG2585-ND - SWITCH SLIDE SPDT 500MA 15V

5. 1x MCP73831T-2ATI/OTCT-ND - IC CONTROLLR LI-ION 4.2V SOT23-5

6. 2x 1276-1907-1-ND - CAP CER 4.7UF 6.3V X5R 0603

7. 3x 493-2098-1-ND - CAP ALUM 220UF 20% 10V SMD

8. 1x 160-1446-1-ND -LED GREEN CLEAR SMD

9. 1x A129806CT-ND -CRGCQ 1206 470R 1%

10. 1x RNCP0805FTD10K0CT-ND -RES 10K OHM 1% 1/4W 0805

11. 1x P2.0KDACT-ND -RES 2K OHM 0.1% 1/8W 0805

Disclosure: The amazon links above are affiliate links, meaning, at no additional cost to you, I will earn a commission if you click through and make a purchase.

STEP 3: How the Infinity Mirror Works

Infinity mirrors work by placing two mirror surfaces so that they bounce the light that is caught in between them seemingly to infinity.

For this project, I used a standard 4 inch circular mirror and a 4 inch plexiglass circle that I put partially reflective mirror film onto. This lets us see into the plexiglass one way but on the inside of the coaster, the lights will be reflected against the mirrors.

Check out this beautiful drawing I made to help explain (I missed my calling to be an artist!).

STEP 4: Electronics

Now that you have gathered all of the required components, it is time to start assembling everything together. I would recommend wiring up and testing the led section on a breadboard with an arduino first. The lithium ion circuitry I would just wait and put it on the PCB.

The schematic is fairly simple, on the left there is a micro-usb port that will be used with our MCP73831 lithium ion charge management controller. It is connected in a typical configuration with the 2K resistor between PROG and VSS to set it at a 500mA charge rate.

On the right we have our Attiny85 controlling our led strip. There is an on/off switch for main power and also a push button with a 10k pulldown resistor. The push button will be used to change the light show modes for the lights.

There are alot of great tutorials online for surface mount soldering so I won't explain that (Partly because I suck at it lol).

All of the gerber files can be found below.

STEP 5: Programming the ATTiny85

I will assume that you know how to setup the Arduino enviroment to program the Attiny85 but if not there are many great tutorials online.

You will need to install the Adafruit Neopixel library in order for the code to compile.

https://github.com/adafruit/Adafruit_NeoPixel

Other than that the program is fairly simple but you are required to fill in the amount of leds you have in your circle, I ended up having 20 but it depends on what led strip your have. Once you enter in that value then compile and upload to the Attiny85. I used sparkfuns tinyAVR programmer because it makes programming these chips very easy.

STEP 6: 3D Design/Print

I designed the scale in Fusion 360. The PCB and lithium ion battery can be placed inside the base. I wanted to limit the height of the coaster so the PCB has several surface mount components on it.

The top section has a lid which holds the led circle, regular mirror, and the one way mirror. There is a small slot to let the leds wires through to the bottom of the case.

I chose this design after trying a few others which I ended up not liking for various reasons. I really like this one, as it is fairly slim and comes together to look pretty professional in my opinion.

The files can be found below:

Thingiverse Link

STEP 7: Assemble It Together

Once you have your PCB made and all your 3D printed components ready to go, its time to assemble it all together.

First take the one way mirror insert it into the top lid, then put the led strip on the circle, insert the circle, line up the led wires up to the opening slot, and then finally place the normal mirror behind all of it.

Then insert the PCB and battery into the appropriate slots and connect everything up.

The top section should press fit into the bottom section but I did design in some space for some small screws if needed.

STEP 8: Test It Out!


Now that you have the infinity mirror coaster all assembled and programmed, it is time to test it out!

Push the power button, hit the mode change button, and enjoy your new infinity mirror coaster. Please consider subscribing to my youtube channel to support me and see more projects/videos. Thank you for reading!

18 Comments

In the parts list it is mentioned that the plexiglas is 1/8" thick.
But what about the mirror's thickness?
I'm not getting my coaster fully closed with the mirror that I've got for this.
Are there any good directions for how to identify the positive and negative side of the resistors? When I soldered the board up and plugged the battery in, the board began smoking a bit and the ATTiny got way too hot. I'm assuming it's due to an incorrect positioning of the resistors. This is the real first PCB I've ever tried to solder so excuse my lack of knowledge.
Is this scalable? Say I wanted to increase the diameter to 8"; would the current circuitry be enough for the extra LEDs required?
Yeah it should be able to handle that, if I'm remembering correctly default kicad traces can handle up to an amp of current, and at full blast a ws2812 is ~60 milliamp. This code runs them at 20% power level, so you could theoretically run 83 of them before the traces on the board burned up.
I finally got this one done. I'll have to figure out how to post some pics. And slog through the thingi redesign to upload to there too.
This is a great design! Thank you for sharing it.
You're welcome. I wanted to make something like this, but with a momentary switch under the glass to activate when you set your drink down.
Yup, that would be pretty easy to add, could even use the same design since I left a little wiggle room on the bottom mirror. Let me know how it goes!
I haven't messed with any buttons yet, was just going to do a test assembly while I wait on the PCBs to arrive, but the mirrors I bought from that amazon link are closer to 4.56 inches and are just too big to fit into the coaster as printed. I was gonna try at maybe 103% and see if that will be large enough, hopefully it doesn't mess up the placement of anything else.
Very cool design. thanks for sharing
Can you share the b.o.m. and the schematic diagram?
Thanks!
Sure, it is already in the instructable under the components and electronics sections. Let me know if you have any questions!
I love this so cool. These have always looked great but didn't like it enough to have on my wall... but a coaster! That's a stroke of genius!
Haha I dont know about genius... but thanks!