While I was browsing thingiverse, and I found a cool model for the moon. It has both a bump map for the surface–giving the texture of the moon with all of its craters–and a bump map for the darkness on the moon, which is on the inside of the model. The inner bump map is used for lights: A light on the inside will show darker on the thicker spots of the moon, making it look more like the moon. You can read more about how it works, and how you can make your own model here.
Printing The Moon
Since my dad’s birthday is coming up, I decided to print one for him. In the first print, I ran out of filament but had some old extra stuff that was not on a roll. It ended up tangling up but able to finish. The two colors were not able to stay together, so I had to reprint it. The second print was done completely with the old filament. However, it got tangled in the night and ultimately failed. I was now out of white filament, so I reprinted with silver. It turned out great except for the fact that it was silver. No light could pass through the moon, and so I had to reprint again. I was able to order some white filament in time and print it in white. It finished but the printer was having temperature problems, and so parts were under-extruded. I will have to print again, but I haven’t yet. Also, did I mention that each moon took 25 hours to print?
After I printed the moons, I had to figure some way to light it up. My first lighting system was to use a light from a Christmas house. It worked, but I did not like it. There were rings of light at the top, and the lighting was uneven.
I have a few NeoPixels laying around, as well as a light up button and a Pro Trinket. So I will create my own lighting system. I started out making an Interpolation library. This way the lights can turn on smoothly. After completing the library, I found that someone had already created one: Ramp. I will use it in future projects, but for this one, I’ll continue using my home-made library.
The program has two modes: Power, and Brightness. Power turns on and off the light when the button is pressed/released. Brightness dims and err, undims the light until the button is pressed switching to power mode and saving the current brightness in EEPROM. I uploaded my code to a Gist, but I recommend you write your own version while using mine as a guide.
Probably the most tricky part was designing a model for the electronics. The cone I designed is small, so I have to fit the Pro Trinket with a USB plug in there without it making holes on the outside. Since it is very specific to my parts, you might want to design your own, but I uploaded both STL and STEP files if you are interested.