For Tinkercad Christmas!
Light pipes. The little bits of clear plastic that funnel LED light in many devices to make them appear perfectly on the visible surface of our products. A friend showed me the wonder of transparent PETG recently, which is even more crystalline looking that it’s PLA equivalent, and it made me wonder how it would perform as a light pipe.
Then a cross thought….how to modernise the ubiquitous Advent Calendar? Enter the Numberless Advent Calendar. Our family always has one of these Christmas favorites up at this time of year and the “What day is it?” question is often asked when it comes time to open the daily prize. Wonder no more! This Advent Calendar will illuminate the correct box all the way from 1 to 24! And as a bonus it can make beautiful LED patterns in it’s 25 individually programmable RGB, light piped mega “pixels”.
Not a great video but show the animation: https://imgur.com/a/c4NNO
To the Printer!
I printed the trees sections in alternating green for a more varied look. You could group them in Tinker and make a single/twin mega model - love that Tinker feature! Support is required in places due to the geometry but it is very simple square profile support that is easily removed. I always try to avoid it…. but not at the cost of the design. It is there to be used in that case!
A note on the two connector holes on the rear of the trunk section - the size of these is dictated by the panel mount connector and button you buy! Measure the diameter of yours and simply adjust the TinkerCAD cylinder hole to suit or import and edit the STL.
The boxes are vase printed PETG. This allows for strong thin walls that give maximum light transmission and diffusion. Depending on your slicer if you orient multiple boxes back to back you will find the transitions between the parts are always in the rear leaving a super smooth finish on the front for that LED goodness to shine through.
The cover of the star is also vase printed but PLA as I only wanted it to be yellow and it looked better. It could also be printed in PETG if your printer is up to the challenge - that point at the top could be hard with PETG.
The electronics could not be simpler! They center around a Raspberry Pi Zero W in my design but an Arduino or other microcontroller could easily be used. Couple of digital IO’s and ability to source a real time clock (easy with a Raspberry Pi on network) is all that is needs. These links are just all ADAFruit for simplicity but in fact can be sourced many places - mine came from eBay. I stress if you are a tinkerer (pun intended) you probably have a some of this stuff around... but here is a complete list:
The basic connections are in one of the images. The Pi setup is detailed in the top of the advent py file (https://mega.nz/file/YXYG0bwY#Ge42DEcCAKWMOXENJg4l8h0JCFYHLIVCDx0855vhtvw). This file is the main script that runs the calendar and its various modes.
Putting it Together - the best part!
Required: Countersunk 6-10mm M3 machine screws, optional glue, soldering iron.
This is pretty straightforward. The tree sections have snap lock alignment pins - you can also add some glue if you want but the snap lock is fairly strong. The star on top is also a drop in keyed fit with a cable duct inside.
One of the key aspects of the design that took some experimentation is the way the flexible LED strips snap into the channels in the rear, no messy glue. This recesses each LED into their box and ensures no light bleed between boxes. Remove any weather sheath on your LED strip and apply a small amount of pressure to them and they will snap into place. Each section of strip needs to be connected to the next using 3 wires. The pads on the strip are very easy to solder to - even a novice solderer should have no problems.
The kapton tape in the pictures is just so the Pi does not short to any of the strips exposed pads. Any tape will do.
The back panel is two part to allow printing on 200mm beds and uses countersunk M3 machine screws. The two parts overlap to ensure a clean fit with no light leaks.
Time to Play
If you follow the directions in the .py file the Pi will startup in the default calendar mode. Edit: No ZIPs on MMM? Have to put the code file here: https://mega.nz/file/YXYG0bwY#Ge42DEcCAKWMOXENJg4l8h0JCFYHLIVCDx0855vhtvw
As provided the tree has 5 modes selected using the button on the rear. The aforementioned calendar mode shows the current date in red and a periodic snow fall animation. Pressing the button will also reveal a colour chase mode, theatre mode and two RGB fader modes. Some of these are modified Neopixel examples.
But a little bit of coding and you can add all sorts of things! It is essentially 25 pixel display limited only by your imagination. Comments in the Python script indicate where you can add you own modes.
As written it will work in any month but when the date is beyond 24 it will just display a red cross - the excitement in our house waiting for it to tick over to Dec 1st was very high! It also dims during the night hours and has a parent feature that will light the next days box at 9pm for easy stocking if required.
Commented out in the code there is also the option to have the date flash in a digit sequence on the star periodically…. but I leave that for the builder to explore.