# Drama Piñata

## Overview

Piñatas are tragic, beautiful creatures, used once in a carnival of destruction, then tossed out and forgotten. This guide demonstrates how to modify a piñata so that it can be filled and refilled with candy over and over again.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/074/246/medium800thumb/makecode_IMG_3084.2019-03-29_11_51_16.jpg?1554749371)

This piñata also has an attitude, and can be programmed to respond, when hit, with sound effects or pre-recorded taunts.&nbsp;

A servo motor is hidden inside the body of the piñata, allowing a trap door in the bottom to be mechanically opened. A Circuit Playground Express sits on its back, allowing the use of either MakeCode or CircuitPython to program and customize the behavior.&nbsp;

## The Parts
### Circuit Playground Express

[Circuit Playground Express](https://www.adafruit.com/product/3333)
 **Circuit Playground Express** is the next step towards a perfect introduction to electronics and programming. We've taken the original Circuit Playground Classic and made it even better! Not only did we pack even more sensors in, we also made it even easier to...

In Stock
[Buy Now](https://www.adafruit.com/product/3333)
[Related Guides to the Product](https://learn.adafruit.com/products/3333/guides)
![A Black woman's manicured hand holds a round microcontroller with lit up LEDs.](https://cdn-shop.adafruit.com/640x480/3333-05.jpg)

### Micro servo

[Micro servo](https://www.adafruit.com/product/169)
Tiny little servo can rotate approximately 180 degrees (90 in each direction) and works just like the standard kinds you're used to but _smaller_. You can use any servo code, hardware, or library to control these servos. Good for beginners who want to make stuff move without...

Out of Stock
[Buy Now](https://www.adafruit.com/product/169)
[Related Guides to the Product](https://learn.adafruit.com/products/169/guides)
![Micro servo with three pin cable](https://cdn-shop.adafruit.com/640x480/169-06.jpg)

### Small Alligator Clip to Male Jumper Wire Bundle - 6 Pieces

[Small Alligator Clip to Male Jumper Wire Bundle - 6 Pieces](https://www.adafruit.com/product/3448)
When working&nbsp;with unusual non-header-friendly surfaces, these handy cables will be your best friends! No longer will you have long, cumbersome strands of alligator clips. These compact jumper cables have a premium male header on one end and a grippy mini alligator clip on the...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3448)
[Related Guides to the Product](https://learn.adafruit.com/products/3448/guides)
![Group of Small Alligator Clip to Male Jumper Wires](https://cdn-shop.adafruit.com/640x480/3448-00.jpg)

### Lithium Ion Polymer Battery Ideal For Feathers - 3.7V 400mAh

[Lithium Ion Polymer Battery Ideal For Feathers - 3.7V 400mAh](https://www.adafruit.com/product/3898)
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 battery has a capacity of **400mAh** for a total of about 1.9 Wh. If you need a larger (or smaller!)...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3898)
[Related Guides to the Product](https://learn.adafruit.com/products/3898/guides)
![Slim Lithium Ion Polymer Battery 3.7v 400mAh with JST 2-PH connector and short cable](https://cdn-shop.adafruit.com/640x480/3898-05.jpg)

Want to give your electronics a layer of protection? This enclosure case is a great way to protect your&nbsp;Circuit Playground Express from a swinging bat.&nbsp;

### Adafruit Circuit Playground Express or Bluefruit Enclosure

[Adafruit Circuit Playground Express or Bluefruit Enclosure](https://www.adafruit.com/product/3915)
We've got nice cases for many of our beloved boards, but the [Circuit Playground Express](https://www.adafruit.com/product/3333)&nbsp;and [Circuit Playground&nbsp;Bluefruit](https://www.adafruit.com/product/4333) has been left out of couture enclosure...

In Stock
[Buy Now](https://www.adafruit.com/product/3915)
[Related Guides to the Product](https://learn.adafruit.com/products/3915/guides)
![Top down view of a clear acrylic Adafruit Circuit Playground Express or Bluefruit Enclosure.](https://cdn-shop.adafruit.com/product-videos/640x480/3915-06.jpg)

## The Piñata

Most any piñata can be modified to work with the electronics listed above, however the exact piñata used for this project can be found on [Amazon](https://www.amazon.com/dp/B07GJ3ZD86/ref=cm_sw_r_tw_dp_U_x_0y-OCbMMW2F3D).&nbsp;

Other materials you will need:

- A paperclip
- [Double sided foam tape](https://www.amazon.com/dp/B003W0R4PE/ref=cm_sw_r_tw_dp_U_x_Y2SGBb4DV10TX)
- Clear masking tape

# Drama Piñata

## Circuit Diagram

Connect your servo motor to the Circuit Playground Express by connecting the servo's red (or orange) wire to **Vout** , the yellow wire to **A1** , and the brown (or black) wire to **GND**.

![](https://cdn-learn.adafruit.com/assets/assets/000/074/265/medium800/makecode_CPX_servo_jumper.png?1554756225)

## Power Considerations

If a AAA battery pack is too bulky for your piñata, this small [400mAh lipo battery](https://www.adafruit.com/product/3898) is an excellent power source for small projects like this.

![](https://cdn-learn.adafruit.com/assets/assets/000/074/266/medium800/makecode_IMG_2313.jpg?1554756245)

# Drama Piñata

## Modify Piñata

This piñata is a modified version of the [Fortnite Llama Loot Piñata](https://www.amazon.com/Fortnite-Llama-Drama-Loot-Pi%C3%B1ata/dp/B07GJ3ZD86).

Start by carefully opening the base of the piñata, gently removing the feet as you go (if you or someone you know likes Fortnite, save what's inside for them).&nbsp;&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/073/993/medium800/makecode_IMG_3038.jpg?1554246000)

Once the piñata has been emptied, fold the flaps over and tape them down. This will help stiffen the cardboard and help it function as a trap door.

![makecode_IMG_3039.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/994/medium640/makecode_IMG_3039.jpg?1554246050)

On the servo, use a small phillips screwdriver to attach a single arm servo horn (included) to the servo. Be sure to use the short screw as longer screws may damage the motor.

Next, find a paperclip and straighten it out.&nbsp;

Use pliers to bend a small hook and insert this through the last hole in the servo arm.

![makecode_IMG_3040.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/995/medium640/makecode_IMG_3040.jpg?1554246740)

![makecode_IMG_3042.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/996/medium640/makecode_IMG_3042.jpg?1554246796)

Gauge where you'd like the servo motor to be inside the piñata, rotating the arm to its start point to make sure it will be able to fully close the door.&nbsp;

Use a square of double sided foam tape to stick the servo motor inside piñata.

Poke the other end of the paper clip through the cardboard flap, bending it at a 90° angle to hold it in place.

![makecode_IMG_3046.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/997/medium640/makecode_IMG_3046.jpg?1554246842)

![makecode_IMG_3048.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/998/medium640/makecode_IMG_3048.jpg?1554246488)

![makecode_IMG_3044.jpg](https://cdn-learn.adafruit.com/assets/assets/000/073/999/medium640/makecode_IMG_3044.jpg?1554246960)

Use small pieces of double sided tape to stick the Circuit Playground Express and battery to the back of the piñata.

&nbsp;

Gather the cables together with a twist tie to keep them tidy.

![makecode_IMG_3074.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/262/medium640/makecode_IMG_3074.jpg?1554756032)

![makecode_IMG_3077.jpg](https://cdn-learn.adafruit.com/assets/assets/000/074/263/medium640/makecode_IMG_3077.jpg?1554756042)

Your modified piñata is now ready to rock!

# Drama Piñata

## MakeCode

## Getting Familiar

**Microsoft MakeCode for Adafruit is&nbsp;** a web-based code editor that provides a block editor, similar to Scratch or Code.org, and also a JavaScript editor for more advanced users.

If you'd like to learn more about MakeCode,&nbsp;[this guide is a good place to start](https://learn.adafruit.com/makecode/downloading-and-flashing?embeds=allow).

![](https://cdn-learn.adafruit.com/assets/assets/000/073/989/medium800/makecode.jpg?1554245331)

## How to Upload Code

To upload code, follow these instructions:

1) Connect your Circuit Playground Express to your computer using a micro USB cable and press the small reset button in the center of the board. All the LEDs will flash&nbsp; **red&nbsp;** briefly **, then turn green.&nbsp;** Your computer should now show a removable drive called&nbsp; **CPLAYBOOT.&nbsp;**

2) Click the&nbsp; **Download** &nbsp;button in the code window below to download the **&nbsp;.UF2 file** &nbsp;to your computer.

3) Now **drag and drop the .UF2 file onto the CPLAYBOOT** &nbsp; **drive** in your computer's file explorer or finder.

The drive will automatically eject itself (your computer may give you a "failed to eject drive correctly" error, you can ignore this). The code is now on your Circuit Playground Express and ready to run!

https://makecode.adafruit.com/04967-76917-94865-45944

## What is this code doing?
First, in the&nbsp;`on_start`&nbsp;loop, we tell Circuit Playground Express to move the servo motor connected to pin&nbsp; **A1&nbsp;** to 0°, i.e. the start of its range. This guarantees that the trap door always starts in a closed position.

![makecode_Screen_Shot_2019-04-05_at_6.47.58_PM_copy.png](https://cdn-learn.adafruit.com/assets/assets/000/074/107/medium640/makecode_Screen_Shot_2019-04-05_at_6.47.58_PM_copy.png?1554505188)

Whenever the piñata is hit, the `hit_count` increases by 1. This is accomplished using the `on 3g` function, which is triggered any time a force equal to three times earth gravity is detected by the accelerometer on-board the Circuit Playground Express.

![makecode_Screen_Shot_2019-04-05_at_6.47.58_PM.png](https://cdn-learn.adafruit.com/assets/assets/000/074/108/medium640/makecode_Screen_Shot_2019-04-05_at_6.47.58_PM.png?1554505220)

In the&nbsp;`forever`&nbsp;loop, we tell the servo to wait until the `hit_count`&nbsp;rises above some randomly chosen number - between, in the default case, `3 to 10`. Once triggered, the servo moves through its full `180`° rotation, plays a sound effect, then waits two instances of `pause 2000ms`&nbsp;(aka 4 seconds) before resetting itself.&nbsp;

![makecode_Screen_Shot_2019-03-29_at_12.39.18_PM.png](https://cdn-learn.adafruit.com/assets/assets/000/074/109/medium640/makecode_Screen_Shot_2019-03-29_at_12.39.18_PM.png?1554505258)

It's easy to change the range in the `pick random` bubble to make the game more or less certain.

![](https://cdn-learn.adafruit.com/assets/assets/000/074/013/medium800thumb/makecode_IMG_3066.2019-03-28_12_28_42.jpg?1554312838)

## Refilling the Piñata

Below the rest of the code, you will notice two blocks, one adding a function to button A, and one to button B.

These buttons will allow you to easily open and close the door using the servo motor, important for reloading the piñata with candy.&nbsp;

![](https://cdn-learn.adafruit.com/assets/assets/000/074/106/medium800/makecode_Screen_Shot_2019-04-05_at_6.55.40_PM.png?1554504984)

## Troubleshooting

**Problem** : My motor doesn't move!

**Solution** : Make sure that your Circuit Playground Express is connected to a power source (anywhere between 3V-5V is safe). If you're using a AAAx3 battery pack, check that the switch on the **&nbsp;** battery pack is set to "ON". If you are using the LiPo battery, be sure it is fully charged using the charger in the Featured Products.

&nbsp;

**Problem:&nbsp;** My Circuit Playground Express doesn't show up as&nbsp; **CPLAYBOOT**

**Solutions:**

1. Be sure you have a Circuit Playground Express.&nbsp; The Circuit Playground Classic will not work with MakeCode.
2. If you get a drive named **CIRCUITPY** instead, press the reset button twice in succession to get to **CPLAYBOOT**.
3. Some USB cables are "charge-only" and won't pass data. Try using a different USB cable and try using a different USB port on your computer.&nbsp;&nbsp;
4. With the Circuit Playground Express plugged into your computer with a micro USB cable,&nbsp; **click the small reset button** &nbsp;in the center of the board. The lights should all turn green. If they don't, try&nbsp; **double-clicking** &nbsp;the reset button.

If things still aren't working, head over to the Intro to&nbsp;[Circuit Playground Express](https://learn.adafruit.com/adafruit-circuit-playground-express)&nbsp;guide for more suggestions.

## More MakeCode!

If you enjoy MakeCode and want to continue exploring you can check out&nbsp;[lots more MakeCode projects on the Adafruit Learn System](https://learn.adafruit.com/category/makecode).

## Want to Get Back to CircuitPython?

If you ever need to convert your Circuit Playground Express back to CircuitPython mode, you can do so by downloading the appropriate .UF2 file from&nbsp;[CircuitPython.org](https://circuitpython.org/board/circuitplayground_express/)&nbsp;and dragging it over onto your&nbsp; **CPLAYBOOT** &nbsp;drive.&nbsp;[See this guide page](https://learn.adafruit.com/adafruit-circuit-playground-express/circuitpython-quickstart)&nbsp;for the step-by-step instructions.

# Drama Piñata

## CircuitPython Code

## Getting to know CircuitPython

[CircuitPython](https://learn.adafruit.com/welcome-to-circuitpython/what-is-circuitpython)&nbsp;is a programming language based on Python, one of the fastest growing programming languages in the world. It is specifically designed to simplify experimenting and learning to code on low-cost microcontroller boards.

CircuitPython is easiest to use within the Mu Editor. If you haven't previously used Mu,&nbsp;[this guide will get you started](https://learn.adafruit.com/welcome-to-circuitpython/installing-mu-editor).

## Why Use CircuitPython?

CircuitPython allows for a certain level of flexibility that cannot be achieved in MakeCode, so for more experienced users it can be a natural next step after MakeCode.

The example code here allows you to include custom audio files, one of which will play when the piñata is hit, and another that plays when the piñata dispenses candy.

[Detailed instructions on how to create your own audio files can be found here](https://learn.adafruit.com/microcontroller-compatible-audio-file-conversion/check-your-files).

![](https://cdn-learn.adafruit.com/assets/assets/000/074/000/medium800/makecode_circuitpython_circuit_playground_adafruit_blinka_computer.png?1554246693)

## Preparing your Board

To get your Circuit Playground Express set up to run this code, follow these steps:

1) Install the&nbsp;[latest CircuitPython for CPX&nbsp;](https://circuitpython.org/board/circuitplayground_express/)from CircuitPython.org. For this guide, please use version 4.0.0 or greater. Version 3.1.2 is not as efficient on memory and may give an error.

2) Get the&nbsp;[latest 4.0 library pack](https://github.com/adafruit/Adafruit_CircuitPython_Bundle/releases/), unzip it, and drag the&nbsp;library folder **adafruit\_motor** &nbsp;over into the&nbsp; **/lib** &nbsp;folder on&nbsp; **CIRCUITPY**. If there is no&nbsp; **lib** &nbsp;directory, create one to put the file into. (More info on installing libraries, read information&nbsp;[here](https://learn.adafruit.com/adafruit-circuit-playground-express/circuitpython-libraries).)

Find the **adafruit\_motor** library in the library pack&nbsp;

![makecode_Screen_Shot_2019-04-05_at_2.34.35_PM.png](https://cdn-learn.adafruit.com/assets/assets/000/074/093/medium640/makecode_Screen_Shot_2019-04-05_at_2.34.35_PM.png?1554489333)

Drag to the lib folder in the&nbsp; **CIRCUITPY&nbsp;** drive

![makecode_Screen_Shot_2019-04-05_at_2.21.34_PM.png](https://cdn-learn.adafruit.com/assets/assets/000/074/091/medium640/makecode_Screen_Shot_2019-04-05_at_2.21.34_PM.png?1554489190)

# Uploading

Make sure you've connected the Circuit Playground Express to your computer (mac/PC/Linux) via a known good USB A to micro-B cable. Your board should show up as a flash disk drive named&nbsp; **CIRCUITPY** &nbsp;(If you see a disk name&nbsp; **CPLAYBOOT** , try pressing the reset button again. If the only drive name you get is named&nbsp; **CPLAYBOOT** , CircuitPython may not be loaded on the board. You can load CircuitPython as&nbsp;[per this guide](https://learn.adafruit.com/adafruit-circuit-playground-express/circuitpython-quickstart)).

Once your board is connected, copy&nbsp; **code.py** &nbsp;from the window below and paste it into Mu.&nbsp;Press the&nbsp; **Save** &nbsp;button and your code should automatically be saved to the&nbsp; **CIRCUITPY** &nbsp;disk drive (which appears when the Circuit Playground Express is plugged into your computer) as&nbsp; **code.py**.&nbsp;

https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/main/Cirecuit_Playground_Express_Pinata/code.py

![](https://cdn-learn.adafruit.com/assets/assets/000/074/014/medium800/makecode_circuitpython_Screen_Shot_2018-09-06_at_9.47.58_AM_copy.png?1554313552)

Info: 

## Piñata Sounds

Click on the green buttons below to upload the two sound files used in this project:

[hit.wav](https://cdn-learn.adafruit.com/assets/assets/000/074/243/original/hit.wav?1554747144)
[candy.wav](https://cdn-learn.adafruit.com/assets/assets/000/074/244/original/candy.wav?1554747150)
The sound clips used in this project have been trimmed and edited from the following free audio files:

- ["Short Oww" by Xcallono](https://freesound.org/people/Xcallono/sounds/457280/)
- ["Siren" by Nahlin83](https://freesound.org/people/Nahlin83/sounds/220424/)

If you'd like to change the sounds your piñata makes, more audio clips can be downloaded from sites like&nbsp;[http://soundbible.com/](http://soundbible.com/)&nbsp;or&nbsp;[https://freesound.org/](https://freesound.org/).&nbsp;

You will need to convert the files to the appropriate format for microcontroller use. See&nbsp;[this guide](https://learn.adafruit.com/microcontroller-compatible-audio-file-conversion)&nbsp;on how to do that.

When you have a file converted, you can name it either&nbsp; **hit.wav&nbsp;** or **candy.wav** &nbsp;and drag it onto your **CIRCUITPY** drive to have it play when the piñata is hit or to announce the dispensing of candy.

## Directory View

When you have all the files on your **CIRCUITPY** drive, you should have the files shown below. The **lib** folder is in the main directory, the **adafruit\_motor** folder in the **lib** directory and the **py/mpy** files in the **adafruit\_motor** directory.

![](https://cdn-learn.adafruit.com/assets/assets/000/074/245/medium800/makecode_Untitled.png?1554747872)

## Troubleshooting

**Problem** : I don't hear any audio!

**Solution** : If you're creating your own audio files, make sure they are all exported as **&nbsp;16-bit PCM WAV** &nbsp;at&nbsp; **22,050 Hz** &nbsp;and they are **should be Mono.**

&nbsp;

**Problem** : My Circuit Playground Express isn't recognized by Mu!

**Solution** : Make sure your board is set up with CircuitPython, which has the Circuit Playground Express show up as a flash drive named&nbsp; **CIRCUITPY** &nbsp;when you connect the CPX to your computer. If it is showing up as&nbsp; **CPLAYBOOT** &nbsp;on your computer, you can&nbsp;[follow the steps in this guide](https://learn.adafruit.com/adafruit-circuit-playground-express/circuitpython-quickstart)&nbsp;to ensure CircuitPython is loaded and you see the&nbsp; **CIRCUITPY** &nbsp;drive.

## More CircuitPython Projects!

If you enjoy programming in CircuitPython and want to continue learning you can check out&nbsp;[more CircuitPython projects on the Adafruit Learn System](https://learn.adafruit.com/category/circuitpython).


## Featured Products

### Circuit Playground Express

[Circuit Playground Express](https://www.adafruit.com/product/3333)
 **Circuit Playground Express** is the next step towards a perfect introduction to electronics and programming. We've taken the original Circuit Playground Classic and made it even better! Not only did we pack even more sensors in, we also made it even easier to...

In Stock
[Buy Now](https://www.adafruit.com/product/3333)
[Related Guides to the Product](https://learn.adafruit.com/products/3333/guides)
### USB cable - USB A to Micro-B

[USB cable - USB A to Micro-B](https://www.adafruit.com/product/592)
This here is your standard A to micro-B USB cable, for USB 1.1 or 2.0. Perfect for connecting a PC to your Metro, Feather, Raspberry Pi or other dev-board or microcontroller

Approximately 3 feet / 1 meter long

In Stock
[Buy Now](https://www.adafruit.com/product/592)
[Related Guides to the Product](https://learn.adafruit.com/products/592/guides)
### Lithium Ion Polymer Battery Ideal For Feathers - 3.7V 400mAh

[Lithium Ion Polymer Battery Ideal For Feathers - 3.7V 400mAh](https://www.adafruit.com/product/3898)
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 battery has a capacity of **400mAh** for a total of about 1.9 Wh. If you need a larger (or smaller!)...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3898)
[Related Guides to the Product](https://learn.adafruit.com/products/3898/guides)
### Micro servo

[Micro servo](https://www.adafruit.com/product/169)
Tiny little servo can rotate approximately 180 degrees (90 in each direction) and works just like the standard kinds you're used to but _smaller_. You can use any servo code, hardware, or library to control these servos. Good for beginners who want to make stuff move without...

Out of Stock
[Buy Now](https://www.adafruit.com/product/169)
[Related Guides to the Product](https://learn.adafruit.com/products/169/guides)
### Small Alligator Clip to Male Jumper Wire Bundle - 6 Pieces

[Small Alligator Clip to Male Jumper Wire Bundle - 6 Pieces](https://www.adafruit.com/product/3448)
When working&nbsp;with unusual non-header-friendly surfaces, these handy cables will be your best friends! No longer will you have long, cumbersome strands of alligator clips. These compact jumper cables have a premium male header on one end and a grippy mini alligator clip on the...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3448)
[Related Guides to the Product](https://learn.adafruit.com/products/3448/guides)
### Adafruit Circuit Playground Express or Bluefruit Enclosure

[Adafruit Circuit Playground Express or Bluefruit Enclosure](https://www.adafruit.com/product/3915)
We've got nice cases for many of our beloved boards, but the [Circuit Playground Express](https://www.adafruit.com/product/3333)&nbsp;and [Circuit Playground&nbsp;Bluefruit](https://www.adafruit.com/product/4333) has been left out of couture enclosure...

In Stock
[Buy Now](https://www.adafruit.com/product/3915)
[Related Guides to the Product](https://learn.adafruit.com/products/3915/guides)
### Alkaline AAA batteries - 3 pack

[Alkaline AAA batteries - 3 pack](https://www.adafruit.com/product/3520)
Battery power for your portable project! These batteries are good quality at a good price, and work fantastic with any of the kits or projects in the shop that use AAA's. This is a pack of **3 AAA batteries**.  
  
These batteries are Alkaline (MnO2) chemistry, with a...

In Stock
[Buy Now](https://www.adafruit.com/product/3520)
[Related Guides to the Product](https://learn.adafruit.com/products/3520/guides)
### 3 x AAA Battery Holder with On/Off Switch and 2-Pin JST

[3 x AAA Battery Holder with On/Off Switch and 2-Pin JST](https://www.adafruit.com/product/727)
This battery holder connects 3 AAA batteries together in series for powering all kinds of projects. We spec'd these out because the box is slim, and 3 AAA's add up to about 3.3-4.5V, a very similar range to Lithium Ion/polymer (Li-Ion) batteries and have an on-off switch. That makes...

In Stock
[Buy Now](https://www.adafruit.com/product/727)
[Related Guides to the Product](https://learn.adafruit.com/products/727/guides)

## Related Guides

- [Adafruit Circuit Playground Express](https://learn.adafruit.com/adafruit-circuit-playground-express.md)
- [Circuit Playground Powerpuff Girls Valentine](https://learn.adafruit.com/circuit-playground-valentine.md)
- [Soil Moisture Sensor with Circuit Playground Express and MakeCode](https://learn.adafruit.com/soil-moisture-sensor-with-circuit-playground-express.md)
- [CircuitPython I2C and SPI Under the Hood](https://learn.adafruit.com/circuitpython-basics-i2c-and-spi.md)
- [Circuit Playground Simple Simon](https://learn.adafruit.com/circuit-playground-simple-simon.md)
- [Make It Bubble](https://learn.adafruit.com/make-it-bubble.md)
- [Cosplay Floating LED Fireball with Motion Sensing](https://learn.adafruit.com/cosplay-fireball-prop-with-motion-sensing.md)
- [Magical Cardboard Craft Obsidian Sword](https://learn.adafruit.com/cardboard-obsidian-sword.md)
- [Glowing Interactive Crystal Staff ](https://learn.adafruit.com/glowing-interactive-crystal-staff.md)
- [NeoPixie Dust Bag](https://learn.adafruit.com/neopixel-pixie-dust-bag.md)
- [Getting Started With Steven Universe](https://learn.adafruit.com/getting-started-with-steven-universe.md)
- [Circuit Playground Digital Input](https://learn.adafruit.com/circuit-playground-digital-input.md)
- [CircuitPython Hardware: PCA9685 DC Motor & Stepper Driver](https://learn.adafruit.com/micropython-hardware-pca9685-dc-motor-and-stepper-driver.md)
- [NeoPixel Basketball Hoop](https://learn.adafruit.com/neopixel-mini-basketball-hoop.md)
- [Circuit Playground or Hallowing Jack-o'-Lantern](https://learn.adafruit.com/circuit-playground-jack-o-lantern.md)
- [Interactive Map with Circuit Playground Express](https://learn.adafruit.com/interactive-map-with-cpx.md)
