Introduction

Although people may have mixed feelings about snow, I think we can all agree that snow globes are pretty sweet. You can make one that’s even sweeter than the average globe using a Circuit Playground Express board and MakeCode to have a musical NeoPixel orb of holiday fun!

The Circuit Playground Express is a great board for this project since it has so many modules that you can control without any extra wiring. It’s also the perfect form factor to hide away snuggly in the base of your snow globe along with a battery to keep the fun powered on.

You can write code to easily control these modules with MakeCode, a visual coding app from Microsoft. MakeCode uses drag and drop blocks, like Scratch, to code rather than typing in a coding language. Of course, you can also use JavaScript with MakeCode as well if you really want to give your keyboard a workout.

The following product is a complete kit with the Circuit Playground Express, battery, charger, and globe:

Circuit Playground Snow Globe Kit

PRODUCT ID: 4011
Light up the winter nights this year with an electronic Snow Globe! This kit provides everything you need to make your very own, no soldering required! You can use...
OUT OF STOCK

If you just need some of these parts, they are listed separately below. You do not need to buy the kit above and the items below.

1 x Circuit Playground Express
Electronics for the project
1 x DIY Snow Globe - 108mm Diameter
Durable, clear and round, with a large flat screw-on top and a press-fit rubber stopper.
1 x Lithium Ion Polymer Battery - 3.7v 500mAh
Battery to power the Circuit Playground Express
1 x Adafruit Micro Lipo - USB LiIon/LiPoly charger
Charges Adafruit LiPo batteries via USB

Programming with MakeCode

For this project, I’m using the accelerometer, speaker and ring of NeoPixels on the Circuit Playground Express. I have the code running so that when you shake the Circuit Playground, the NeoPixels animate in the rainbow effect and it plays some music.

It’s fairly easy to program music into a project with MakeCode. You use the note blocks to select your note and how many beats you want the note to play for. There’s even a small piano keyboard that opens up with it if you want to write your own music on the fly. To have the NeoPixels change with the music, I have the animation advancing by one frame after each note is played. The music and NeoPixel code blocks are nested in a function box called “playMusic” so that I can put a function block inside of the “On Shake” block. This tells the Circuit Playground to play the music and light up the lights every time its shaken.

Snow Globe Assembly Prep

After you have your code written, it’s time to tackle the making of the snow globe.

You’ll need:

  • An empty snow globe
  • A figurine or small plastic item
  • Distilled water
  • Glue (E6000 is good choice)
  • Envirotex
  • Glycerin
  • Glitter
A quick word of warning, but not deterrent: it takes time for the glue and Envirotex to set properly so some patience is also required. But all that waiting is worth it and helps to ensure a water tight seal which is especially important when putting electronics next to water.

Your first step is to glue your special item that will be on display in your snow globe onto the inner base of snow globe using the E6000 glue. I recommend letting it set for 24 hours at least. You want to make sure that your item is secure and that the glue won’t be affected by the water or other ingredients.

After your glue has permanently stuck your item, it’s time to seal it and the base to ensure that it will survive the water, glycerin and glitter (if you’re feeling brave). I used Envirotex, which is a resin-based water proof seal that was recommended in the directions that came with my empty snow globe.

If you do decide to use the sealer, please follow the directions closely on the packaging to stay safe and to also have a successful project. I recommend mixing any of these concoctions in disposable containers with something like a popsicle stick to keep clean-up simple.

Depending on your chosen resin, dry times may vary. Mine was recommended to set for eight hours but I ended up letting it sit for 24 hours to ensure that everything was at optimal seal.

makecode_edited_P1020608.jpg
How it looks after 24 hours of setup

Putting It All Together

Once that step is all set though, it’s time to assemble the globe!

With your glued item and base at the ready, balance the globe portion with the opening up so that you can begin adding the distilled water. To account for the displacement from your item, I recommend filling the globe about halfway and then putting the base in to see how it affects the water level so that you don’t accidentally overfill. I would also test again before going for the final fit.

When you have a good water level, add the glycerin and glitter. The glycerin adds some thickness to the water that allows the glitter to float a bit better and give the snow globe that dreamy effect. I added about a ½ tsp of glycerin and a few shakes of glitter. Proportions aren’t especially important here though since you can mix to taste but what I did should give you a good baseline. I recommend mixing the water, glycerin and glitter together before the next steps.

After your water concoction is mixed, it’s time for the moment of truth: inserting the base! Squeeze a thin layer of E6000 glue around the sides of the base so that a seal is created for the globe. Then, push the base in slowly, making sure that you’re getting a tight fit. With the globe still upside down, place another line of E6000 glue, this time around the top of the seal to block any possible leaks. This should be left to dry for a few hours, but that time will be worth it if it means no wet electronics.

Add Electronics & Shake!

After that dries, you have a custom DIY snow globe! But, it seems to be missing something…oh that’s right we need to add the electronics!

Grab your programmed Circuit Playground Express and place it into the base of the snow globe so that the NeoPixels are pointing up towards the inside of the globe. Plug a lipo battery into the Circuit Playground’s JST connector for power. Close-up the bottom portion of the snow globe with the screw on base to keep the Circuit Playground nice and snug and then shake away for music, lights and shimmering glitter!

This guide was first published on Dec 13, 2017. It was last updated on Dec 13, 2017.