Discover your inner Snow Queen with this temperature sensing pendant. Invoke the elements of snow, air, and fire using your breath or body heat (or your Ice Queen Superpowers). The pendant will display a snowflake, a spinning leaf, or a lovely purple flame animation depending on the warmth of the air. 

Inspired by the elemental spirits in Disney's Frozen II movie, this pendant will be sure to inspire and excite any Queen Elsa fans, and add an element of magic to your cosplay or halloween costume.

This project uses Adafruit's TFT Gizmo, a Circuit Playground Bluefruit, and a 3d printed case. There's no soldering or coding involved -- just a few screws to tighten, and a couple files to upload -- so it's a wonderful beginner project if you're just starting out in the world of electronic cosplay, or if you have a young helper who's getting interested in making stuff.

Parts

Circuit Playground Bluefruit is our third board in the Circuit Playground series, another step towards a perfect introduction to electronics and programming. We've...
$24.95
In Stock
Extend and expand your Circuit Playground projects with a bolt on TFT Gizmo that lets you add a lovely color display in a sturdy and reliable fashion. This PCB looks just like a round...
$19.95
In Stock
Lithium-ion polymer (also known as 'lipo' or 'lipoly') batteries are thin, light, and powerful. The output ranges from 4.2V when completely charged to 3.7V. This...
$5.95
In Stock
Oh so adorable, this is the tiniest little lipo charger, so handy you can keep it any project box! Its also easy to use. Simply plug in the gold plated contacts into any USB port and a...
$5.95
In Stock

Tools & Materials

  • 3D Printer (or a 3D printing service) and your favorite color of filament
  • Screwdriver
  • Necklace cord
  • USB cable for uploading code

If you want to add your own custom .gif images, that's easy to do as well.

We're using the wonderful snap-fit case designed by the Ruiz Brothers for the Circuit Playground Gizmo Ornaments guide. We'll modify the case just a little bit after printing to make it fit our project perfectly.

TFT Gizmo Ornament Parts

These parts are designed to house the TFT Gizmo and Circuit Playground Bluefruit. The parts snap fit together and secure the PCBs in place without the need of glue or screws.

  • gizor-tft-cover.stl
  • gizor-tft-bottom.stl
  • gizor-tft-top.stl

I found that the top and bottom pieces printed fine with no supports, but the cover needed support turned on, in order to print correctly.

After printing, the one modification we'll make is to use flush-mount cutters to remove the supports at 11:00 and 5:00 on gizor-tft-bottom. These two supports don't fit if we put screws in all 12 screw-holes (the ornament project only required 10 screws and these two spaces were left empty). Other than that, this case fits perfectly!

I used temperature-sensitive filament as well, so my necklace changes from a light blue when it's cool to white when it's warm.

Remove the tape covering the screw holes on the back of the Gizmo TFT.

Place the battery on top of the Gizmo with the connector facing towards 6:00.

Place the Circuit Playground on top of the Gizmo, sandwiching the battery inside, with the USB port lined up with 12:00. Thread the included screws loosely in all 12 holes before tightening them all down at once.

Plug the battery cable into the battery port and make sure the Circuit Playground powers up. If it all looks good, it's time to upload the code.

The Circuit Playground  Bluefruit comes installed with CircuitPython already loaded. We'll update the CURRENT.UF2 file and add our animated .gif images. Download both below, and unzip the .gif files. You should see three .gifs: cold.gif, neutral.gif, and hot.gif.

Plug the Circuit Playground into your computer via the USB port with a known good USB data cable. Double click the "reset" button and the lights on the face of the Circuit Playground will turn green, and you'll see a drive appear on your computer called CPLAYBTBOOT. Drag the CURRENT.UF2 file onto this drive.

The lights will go out and the drive name will change to CIRCUITPY. Drag the three .gif images (cold.gif, neutral.gif, and hot.gif) to the root of this drive. 

Here are the .gif images we've included. It's easy to substitute your own animated .gif images. Make them 240x240 pixels and call them hot.gif, cold.gif, and neutral.gif.

If you do make your own images, remember that they need to take up less than 2MB total space, and that a shorter .gif will make for a more responsive pendant. The Circuit Playground only checks the temperature when the .gif loops, so if you have a 7-second .gif then it may take a while to respond to your changes.

Troubleshooting

If it's not working, here are a few things to check:

  1. Are all 12 screws in place and tight? A loose connection could keep it from working.
  2. Did you orient the Gizmo correctly, with 12:00 lined up with the Circuit Playground Bluetooth's USB port?
  3. Are you using a Circuit Playground Bluetooth? The Express board isn't fast enough to show the .gif images (at the time of writing) so you'll need the Bluetooth version, for now.
  4. Is your battery plugged in and charged? You can run it from the battery or the USB port, so if you're not sure if it's the battery, try plugging in with USB.
  5. Did you double-click the reset button before adding CURRENT.UF2? 
  6. If you added your own .gif images, try uploading and testing with ours to see if one of the images is the problem.

If you're still having trouble, head over to the Gizmo Guide for more detailed troubleshooting ideas.

If you want to use the Adafruit CLUE for this project instead of the Gizmo, no problem! You can download software that is designed to work with the CLUE, making this project even easier to do.

The CLUE board is a tidy package that includes a development board and a screen, along with a whole host of sensors. You won't have to do much to get your .gifs displaying.

Check out the CLUE guide here for detailed descriptions of all this board can do.

The CLUE comes installed with CircuitPython already loaded. We'll update the CURRENT.UF2 file and add our animated .gif images. Download both below, and unzip the .gif files. You should see three .gifs: cold.gif, neutral.gif, and hot.gif.

Plug the CLUE into your computer via the USB port with a known good USB data cable. Double click the "reset" button and the lights on the face of the CLUE will turn green, and you'll see a drive appear on your computer called CLUEBOOT. Drag the CURRENT.UF2 file onto this drive.

The LED will flash. Then, the CLUEBOOT drive will disappear and a new disk drive called CIRCUITPY will appear. Drag the three .gif images to the root of this drive.

That's it!

Troubleshooting

If you're having trouble, check to be sure you're using a good USB cable that passes data. Some USB cables are charge-only, and won't allow you to load code.

If that's not it, head over to the CLUE guide for some more troubleshooting ideas. 

The temperature sensor is located here on the Circuit Playground Bluefruit:

If it senses below 20° C, the "cool.gif" image will play on the TFT. Between 20°-24° C, the "neutral.gif" image will play, and above 24° C, you'll see the "hot.gif" image. 

It changes with body heat or with your breath (with a little patience). Or hold it near the fire or in the freezer to make it change dramatically! 

To charge the necklace, gently pull the battery cable out of the socket and plug it into your USB charger. 

This guide was first published on Mar 02, 2020. It was last updated on Mar 02, 2020.