Background
After the North Pole Command Center and Santa’s Toy Shop, I wanted to make one more of these “window” style displays. They take a lot of storage room, and use up a decent amount of sidewalk real-estate, so I think this will be the last one like this. Since the first two we made were scenes you would find at the North Pole, I wanted this one to fit into that theme as well. The TooZ family thought long and hard, and we decided on Mrs. Claus’s Bakery (we wanted to make sure Mrs. Claus was getting a fair shake).
Many False Starts
The easy part is always coming up with the idea. The hard part is figuring out what to do within the design and being able to implement the ideas, and this project had MANY different false starts. In general we like to have a couple of physical motions, and maybe something extra to be visually interesting. There are three main items in this piece: Anderson the mouse, Cooper the dog, and a snowy window scene.
Anderson
Anderson, the figure on the left, was a conundrum. We originally wanted him to pop out of the cupboard from behind a closed door, but it seemed a little odd, and the angles within the display made it tough to get the mechanisms to work AND be hidden. Next we thought about him icing a cake that was spinning on a Lazy Susan. I think it was a neat idea, but we started to coalesce around the kitchen being a mess and our cute little “helpers” are running amuck rather than being employees working in it like the other two scenes. So we started planning on there being a plate of cookies or cupcakes on the counter top, and he would pop out from within it.
As you will see in the final product, we mostly kept with that idea, but we went with a plate with carrots, milk, and cookies on it (like someone would leave out for Santa). Anderson’s peeking motion was the one I spent by far the most time on. It is a very simple motion, but I tried to get too clever, and wasted a lot of time working through it. The reason I spent so long on it was that I was trying to avoid using a microcontroller, yet still wanted the capability of Anderson to sneak a peek two different times, and then come more fully up on the third motion. My plan was to use a cam approach like I did in the North Pole Command Center. The cam was going to have 3 different levels: 1) Anderson is hidden, 2) he is peeking out, and 3) he is up all the way. By having something rolling on the cam, I could use a windshield wiper motor (my favorite high-torque, low cost, DC motor) constantly turning and not need any smarts for the motions.
There was a couple of problems with this approach. The first is that in order to keep from having Anderson popping up and down super quickly like a jack-in-the-box, I needed to run the motor very slowly. The motor had no problem doing that, but it loses a lot of torque at the lower speeds, and it is easy to stall it out. This becomes a problem when you think about the cam I was trying to design. If I wanted the series of motions to last roughly 80 seconds, and I had to have everything hidden under the cupboard in the display, the cam had to have a small diameter. With a small cam, and the need to have the mouse raise roughly 8 inches in about 2 seconds, the change in radius on the cam was very severe, and the motor couldn’t handle it. I tried many different cam designs that I drew up and 3D printed, but none did what I wanted.
What I ultimately ended up with (which you will see in the videos), was essentially an Arduino Nano, a DC motor with a worm gear style shaft that was previously used to adjust a driver’s seat forward/back in a car, and an endstop switch like 3D printers use. Using a mini slide for a drawer, I created a rail for Anderson to go up and down on. A lever that is raised and lowered by a nut riding on the DC motor’s worm shaft to do the raising/lowering. I have the endstop switch sitting at the bottom of the display and it triggers when Anderson is fully in the down position. The FSM on the Arduino really only has a few states, which makes the code super small. On start it moves Anderson to the “hidden” position (if it isn’t already) by raising the nut on the worm gear, thereby lowering the lever. After a delay, the motor pulls down on the lever far enough to allow Anderson to “peak” up (this is just done via timer). After another delay holding in this “peak” position, the motor pushes the nut up the worm shaft and brings Anderson down until he hits the endstop. This is all repeated a second time after another delay. Finally, he does the same motion, but instead of peaking, comes out “fully” this time, pausing longer, and then Anderson is lowered until he is “hidden” again. The switch is only used to tell when Anderson is in the “hidden” position. For knowing when he is “peaking” or “fully” up, the Arduino is just relying on a timer to know when to stop (it is close enough for what I need). If I wanted to be extra accurate, I would have put end switches at other locations so I would know when I hit the two other stopping points, but accuracy wasn’t really important. To add an extra level of safety, much like I did with the raising/lower star for the nativity scene, I have an additional timer in the code that will trip if Anderson is not detected being “hidden” in a reasonable amount of time. At that point, I assume that something has gone awry, and I stop doing his motions. You can see the code here.
This seems to work fine, but I am not 100% happy with it. If I hadn’t spent so many weeks messing around with the cam approach, I would have liked to have iterated on this design to make it better; but needing to move on, I’ve left it as is. One of my issues with it is that this particular motor is a little noisy. I really wish it wasn’t so loud, but that seems to just be a “feature” of the motor I went with. I think that if I would have put something to dampen the motor between it and the base of the display, that would have helped; but once I had it working, I decided it wasn’t worth coming back to. The other concern I have is the lateral stress that is being put on the shaft of the motor. I’ve added some springs to assist with the pulling down of the lever from the motor side of things, but I wouldn’t be surprised if I end up replacing this motor in a season or two. But for now, she works fairly well.
Cooper
Cooper is on the right side of the display and was initially going to be making snow angels on the floor of the bakery with fake sprinkles taking the place of snow. I think that this would have been a great effect, but after mocking up the movements using straws, pins, and cardboard, I decided that I didn’t want that much going on below the base of the display (all the mechanics would need to be down there). Next I tried to make him roll out dough with a little rolling pin I 3D printed on my Creality Ender 3 Pro. Unfortunately, due to the size of the torso and arms on Cooper, I just couldn’t get enough motion to make the scene look right. Third, I decided to have him stir a mixture in a mixing bowl. But yet again, the little arms on him wouldn’t let me do it properly. We kicked around a lot of other ideas, but eventually settled on him continuing the “running amock” theme, and have him twirling around in a circle on one leg with a cookie on his nose.
This is the type of movement that I really like: it doesn’t need any smarts, is inexpensive, and just runs over and over. I accomplished this by using my handy windshield wiper motor mounted below the counter top, and facing upwards. I took a piece of threaded rod and mounted it to the motor via a coupler. The rode extends up through the counter top and halfway up into Cooper. I used a nut and a fender washer inside Cooper’s foot, and another nut on the outside to keep him attached to the rod. I then made sure that Cooper was low enough to the counter top that you cannot see the outside nut, and it just looks like he is spinning in a circle. After adding a 3D printed cookie on his nose, it became a nice looking effect. I was pretty pleased with how this turned out. He isn’t doing anything as fancy as making snow angels, but I am still happy with how he looks.
The Snowy Window
Yet again, I spent much too much time being overly “cute” with my design. I really wanted a third thing going on in the display, and Mrs. TooZ thought that a snowy window would be cool. I hemmed and hawed over what to do and then finally decided to create a snowy window scene using a shadow box frame, some fake Styrofoam snow, and a small brushless DC fan. My plan was to do something like this, but I was worried about it just spitting snow straight up and not looking like a snowFALL. So then I went down a lengthy path of coming up with a reservoir to hold the snow, and some sort of tube system to suck it up to the top of the window and let it “fall” back down to the ground (think a closed-loop design). I would have some sort of snowy picture in the back of the frame, and this would make it look like some snow was falling in front of the scene and add a little depth to the prop. This was a major mistake. I spent so long trying to find fans that were powerful enough to suck the “snow” up to the top, but didn’t sound like a jet engine, that it was again a huge time sink. I won’t bore you with the details, but the friction in the tube, and the amount that airflow that can pass through a nylon tube that is small enough to be discretely hidden in the design just couldn’t be overcome.
The next plan was to again have a shadow box with a snowy picture in the back, but to now have a clear piece of plastic sheeting with snow flakes painted on it. I would then have a roller on the top and bottom of the design and the sheet would be rotated in a loop like a conveyor belt. I couldn’t find a way to glue the two ends of the sheeting together in a clean way that wouldn’t be too distracting to make it worth my time. So now I have a 4ft sheet of clear plastic sitting around for my next hair-brain scheme.
What Mrs. TooZ originally thought of, and I dismissed immediately, until I failed 18 other ways, was to have an LCD screen with a snowy scene on it. I was digging through my boxes of random saved junk stuff, when I came across the lapdock for my first smart phone, the Motorola Droid Bionic. This dock was made by Atrix and allowed you to slide your phone into it, taking advantage of the micro-USB and micro-HDMI ports on the phone. Once you did that, you had a full LCD screen and keyboard that acts much like a laptop. I have no need for it anymore, but saved it for just an occasion. After doing some googling, I decided to use one of my old Raspbery Pi Zero (the original ones that didn’t have WiFi built into it). It has a mini-HDMI port on it, so it seemed like the perfect option (plus I usually need WiFi, so it was nice to be able to use this on a WiFi-less project). After tearing down the lapdock, I was left with the screen and the small PCB that had the micro-USB and micro-HDMI connections on it. I bought a Micro HDMI Female to HDMI Male Cable adapter from Amazon. I loaded up the Raspberry PI OS, and grabbed an hour long snowy window scene from online (the scene even has window panes in it) to load on it.
When the Pi is powered on, it boots up Linux, and then will automatically start playing the video on a loop (a good write up on that is here). One thing I will mention is that operating systems are not too happy about having the power cut off when they are in the middle of things. If they are in the process of writing some file while doing one of the millions of things that OSes do in the background, it might cause issues on the next boot. For things that involve an Arduino Nano, that isn’t a problem; but for something running a full OS, like the PI is, this could potentially cause an issue at some point. Since I don’t need to actually be doing anything on the PI that should require writing to the file system, I don’t need it to be in a “writeable” mode (it can be “read only”). So I setup the PI to be read only unless I take it out of that setup. I found a great tutorial here that explains how to do it, and now I can pull the rug out from under the PI and it shouldn’t have any lasting issues on the next boot.
Accouterments and 3D Prints
As I’ve gotten more comfortable with my 3D printer (mentioned above) I have tried to incorporate it into my projects more and more. Previously, the only 3D printed item I had was a saw blade in Santa’s Toy Shop. But for the bakery, I ended up with printed carrots, cookies (with matching cookie cutters), a rolling pin, cutting boards, a milk carton, eggs, and an egg carton. You can easily find lots of items on Thingiverse, and other sites like that host free designs. Some were already miniature sized, and others I sized down to fit the scene better.
For the cookies, I went searching for cookie cutters that I liked on Thingiverse (like this stocking), and printed them up. Next I took those cookie cutters and imported them into 3D Builder, a free tool that Microsoft supplies in Windows. Once in 3D builder, I created a thin 3D block that acts as my “dough.” Next, I overlaid the cookie cutter on top of it, and told it to “subtract” the cookie cutter from the block. This left a “cookie,” as well as the material left over from the block on the outside of the cutter. You delete the leftover material and you have a cookie shape that exactly matches your cookie cutter. We printed a bunch of cookies and a handful of cookie cutters to toss around the kitchen. Some paint on the cookies make them look like they are iced, and then some puffy paint on top looks like colored piped royal icing (it is really a great effect).
The milk carton was a fun addition. For our milk and cookies on the tray above Anderson, we used a Walley World themed Marty Moose mug as seen in the movie Christmas Vacation (we used the shot glass version to make it smaller). We added some Mod Podge to the inside of the moose to make it look like milk was inside. I had previously printed up a milk carton thinking that I would have it sideways with milk coming out of it, but decided that there wasn’t room for it. So we put it next to our milk to help people understand what was in the glass. To make the milk pop a little more, we put a “missing” picture on the side for Jingle and Jangle, the elves from a TooZ family favorite movie , The Year Without a Santa Claus. Then all that was left was to come up with a milk company name, find out the amount of fat in reindeer milk, and we had a neat milk carton.
marshmellows and sprinkles
Videos
An early video while not completely done.
A completed video.
(TODO ADD)
Photos