# PyGamer MP3 Player with CircuitPython

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/091/292/medium800/projects_IMG_20200518_100307.jpg?1589816118)

Whether it's the soundtrack for your workout or a mix for your sweetheart, you can turn your PyGamer into a standalone MP3 player with JEplayer.

This guide will take you through the steps of assembling the PyGamer case, installing CircuitPython and JEplayer, adding your music and art, and then using the player itself.

## Installing or upgrading CircuitPython

You should ensure you have CircuitPython 7.3.3 or greater on your board. Plug your board in with a known good data + power cable (not the cheesy USB cable that comes with USB power packs, they are power only). You should see a new flash drive pop up.

If the drive is **CIRCUITPY** , then open the **boot\_out.txt** file to ensure the version number is 7.3.3 or greater.&nbsp;

```python
Adafruit CircuitPython 7.3.3 on 2022-08-29; Adafruit PyGamer with samd51j19
```

If you need to install or upgrade CircuitPython, [see this guide page on the pygamer](https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/circuitpythonhttps://learn.adafruit.com/adafruit-pygamer/circuitpython).

Info: 

## Parts
### Adafruit PyGamer Starter Kit

[Adafruit PyGamer Starter Kit](https://www.adafruit.com/product/4277)
**Please note: you may get a royal blue _or_ purple case with your starter kit (they're both lovely colors)**

What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4277)
[Related Guides to the Product](https://learn.adafruit.com/products/4277/guides)
![Adafruit PyGamer Starter Kit with PCB, enclosure, buttons, and storage bag](https://cdn-shop.adafruit.com/640x480/4277-08.jpg)

### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
![Angled shot of Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino.](https://cdn-shop.adafruit.com/640x480/4242-00.jpg)

### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
![Enclosure pieces and black, plastic hardware for a DIY handheld game console.](https://cdn-shop.adafruit.com/640x480/4238-00.jpg)

### Cell-phone TRRS Headset - Earbud Headphones w/ Microphone

[Cell-phone TRRS Headset - Earbud Headphones w/ Microphone](https://www.adafruit.com/product/1966)
These earbud headphones are the perfect accessory for your FONA - they've been tested to work with our modules - but can be used with any iOS or Android device that uses a TRRS pinout.&nbsp; The buds themselves are&nbsp;16mm in diameter with a nice 40" long. &nbsp;They come with a...

In Stock
[Buy Now](https://www.adafruit.com/product/1966)
[Related Guides to the Product](https://learn.adafruit.com/products/1966/guides)
![Cell-phone TRRS Headset - Earbud Headphones with Microphone](https://cdn-shop.adafruit.com/640x480/1966-03.jpg)

### Part: USB MicroSD Card Reader/Writer
quantity: 1
microSD / microSDHC / microSDXC
[USB MicroSD Card Reader/Writer](https://www.adafruit.com/product/939)

# PyGamer MP3 Player with CircuitPython

## Build the PyGamer Case

![](https://cdn-learn.adafruit.com/assets/assets/000/076/820/medium800/gaming_4238-07.jpg?1560235214)

Here's how to assemble the laser cut acrylic case for the PyGamer. The kit comes with seven pieces of acrylic, and four screws and nuts. You've got ten button caps to pick from (you'll pick four), and you'll also want to connect the speaker and battery for the full portable experience.

![](https://cdn-learn.adafruit.com/assets/assets/000/076/824/medium800/gaming_untitled_0006_2k.jpg?1560235438)

## Prep

If you haven't already, remove the clear plastic screen protector film from the PyGamer display.

![gaming_untitled_0002_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/822/medium640/gaming_untitled_0002_2k.jpg?1560235390)

![gaming_untitled_0004_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/823/medium640/gaming_untitled_0004_2k.jpg?1560235399)

## Paper Protection

Remove the protective paper backing from both sides of all the acrylic pieces.

![gaming_untitled_0008_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/826/medium640/gaming_untitled_0008_2k.jpg?1560235477)

![gaming_untitled_0009_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/827/medium640/gaming_untitled_0009_2k.jpg?1560235486)

![gaming_untitled_0015_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/828/medium640/gaming_untitled_0015_2k.jpg?1560235507)

## Speaker

Plug the speaker into the speaker port on the PyGamer.

Then, remove the white oval plastic ring to expose the adhesive and press the speaker to the PyGamer where the silkscreen oval outline indicates.

![gaming_untitled_0020_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/829/medium640/gaming_untitled_0020_2k.jpg?1560235625)

![gaming_untitled_0022_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/830/medium640/gaming_untitled_0022_2k.jpg?1560235632)

![gaming_untitled_0024_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/831/medium640/gaming_untitled_0024_2k.jpg?1560235640)

## Battery

Plug the battery into the on-board connector. Very carefully, bend the wires so that the battery fits the spot shown.

![gaming_untitled_0025_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/832/medium640/gaming_untitled_0025_2k.jpg?1560235663)

![gaming_untitled_0027_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/833/medium640/gaming_untitled_0027_2k.jpg?1560235671)

![gaming_untitled_0029_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/834/medium640/gaming_untitled_0029_2k.jpg?1560235680)

## Button Caps

Pick four of the button caps and click them into place on the square shafts of the buttons. Which color combo will you choose?!

![gaming_untitled_0030_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/835/medium640/gaming_untitled_0030_2k.jpg?1560235755)

![gaming_untitled_0031_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/836/medium640/gaming_untitled_0031_2k.jpg?1560235762)

![gaming_untitled_0034_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/837/medium640/gaming_untitled_0034_2k.jpg?1560235771)

## Case Layers

The case assembly is pretty simple. Place the clear top side piece on as shown.

Next, place the smoked gray piece on.

![gaming_untitled_0035_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/838/medium640/gaming_untitled_0035_2k.jpg?1560235904)

![gaming_untitled_0037_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/839/medium640/gaming_untitled_0037_2k.jpg?1560235910)

## Spacers

Flip the board over, then place the four spacer pieces onto the back as shown.

![gaming_untitled_0039_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/840/medium640/gaming_untitled_0039_2k.jpg?1560235954)

![gaming_untitled_0040_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/841/medium640/gaming_untitled_0040_2k.jpg?1560235961)

## Backing

The last piece to go on is the thin bottom layer with the Feather header cutouts.

![gaming_untitled_0041_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/842/medium640/gaming_untitled_0041_2k.jpg?1560235980)

## Fasteners

Push the four screws through from front to back, being sure they go through the holes in all layers and the PyGamer.

Screw on the nuts to secure things. Hand tight is fine -- you don't want to crack anything by using excessive force.

![gaming_untitled_0046_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/844/medium640/gaming_untitled_0046_2k.jpg?1560236029)

![gaming_untitled_0042_2k.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/843/medium640/gaming_untitled_0042_2k.jpg?1560236021)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/857/medium800/gaming_untitled_0047_2k.jpg?1560236156)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/870/medium800/gaming_untitled_0049_2k.jpg?1560236203)

![](https://cdn-learn.adafruit.com/assets/assets/000/076/887/medium800/gaming_4238-06.jpg?1560236264)

That's all there is to it -- you're ready to play with your PyGamer in its excellent, stylish case!

# PyGamer MP3 Player with CircuitPython

## CircuitPython

[CircuitPython](https://github.com/adafruit/circuitpython) is a derivative of [MicroPython](https://micropython.org) designed to simplify experimentation and education on low-cost microcontrollers. It makes it easier than ever to get prototyping by requiring no upfront desktop software downloads. Simply copy and edit files on the **CIRCUITPY** &nbsp;flash drive to iterate.

The following instructions will show you how to install CircuitPython. If you've already installed CircuitPython but are looking to update it or reinstall it, the same steps work for that as well!

## Set up CircuitPython Quick Start!

Follow this quick step-by-step for super-fast Python power :)

[Download the latest version of CircuitPython for PyGamer via circuitpython.org](https://circuitpython.org/board/pygamer/)
## Further Information

For more detailed info on installing CircuitPython, check out [Installing CircuitPython](https://learn.adafruit.com/welcome-to-circuitpython/installing-circuitpython).

 **Click the link above and download the latest UF2 file.**

Download and save it to your desktop (or wherever is handy).

![adafruit_products_PyGamer_Download_UF2.png](https://cdn-learn.adafruit.com/assets/assets/000/076/054/medium640/adafruit_products_PyGamer_Download_UF2.png?1558746705)

Plug your PyGamer into your computer using a known-good USB cable.

**A lot of people end up using charge-only USB cables and it is very frustrating! So make sure you have a USB cable you know is good for data sync.**

Double-click the **Reset button on the top** of your board (indicated by the red arrow in the first image). You will see an image on the display instructing you to drag a UF2 file to your board, and **the row of NeoPixel RGB LEDs on the front will turn green** (indicated by the green arrow and square in the image). If they turn red, check the USB cable, try another USB port, etc.

If double-clicking doesn't work the first time, try again. Sometimes it can take a few tries to get the rhythm right!

![adafruit_products_PyGamer_Bootloader.jpg](https://cdn-learn.adafruit.com/assets/assets/000/076/055/medium640/adafruit_products_PyGamer_Bootloader.jpg?1558747721)

You will see a new disk drive appear called **PYGAMERBOOT**.

&nbsp;

Drag the **adafruit\_circuitpython\_etc.uf2** file to **PYGAMERBOOT.**

![adafruit_products_PyGamer_PYGAMERBOOT.png](https://cdn-learn.adafruit.com/assets/assets/000/076/056/medium640/adafruit_products_PyGamer_PYGAMERBOOT.png?1558747844)

![adafruit_products_PyGamer_Drag_UF2.png](https://cdn-learn.adafruit.com/assets/assets/000/076/057/medium640/adafruit_products_PyGamer_Drag_UF2.png?1558747852)

The LEDs will flash. Then, the **PYGAMERBOOT** drive will disappear and a new disk drive called **CIRCUITPY** will appear.

That's it, you're done! :)

![adafruit_products_PyGamer_CIRCUITPY.png](https://cdn-learn.adafruit.com/assets/assets/000/076/058/medium640/adafruit_products_PyGamer_CIRCUITPY.png?1558747892)

# PyGamer MP3 Player with CircuitPython

## Install JEplayer

Warning: 

[Follow these steps to create the /sd directory](https://learn.adafruit.com/adafruit-memento-camera-board/circuitpython-memento-starter-projects)
## Download JEplayer

Use the **Download Project Bundle link below,** and then drag and drop everything inside the zip (including the folder called **rsrc** ) onto the **CIRCUITPY** drive. Once you're done, it should look something like this in your file browser:

![File](https://adafruit.github.io/Adafruit_Learning_System_Guides/CircuitPython_JEplayer_mp3.png )

The PyGamer will automatically restart and run JEplayer, but until you've loaded a Micro SD card with your tracks, it won't have anything to play.

For more info about working with the CIRCUITPY drive, [we have a dedicated guide page.](https://learn.adafruit.com/welcome-to-circuitpython/the-circuitpy-drive)

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

# PyGamer MP3 Player with CircuitPython

## Load your tracks

JEplayer can only play DRM-free files in the "MP3" format.&nbsp; It works best with files that are stereo, a bitrate of 128kbit/s or lower, and with a sample rate of 44.1kHz.&nbsp; If you have other formats or bit rates, you can use [free software like Audacity](https://manual.audacityteam.org/man/mp3_export_options.html) to do the conversion.

Insert the Micro SD card into the USB reader, then insert the reader into your computer.

Next, create a folder in the Micro SD card with the name of your playlist or the title of the album.

Then, copy MP3 files into the folder.

Warning: 

If you want to ensure that they are played in a particular order, name them "01 - First Track Name.mp3", "02 - Next Track Name.mp3" and so on.

For each additional album or playlist, create a fresh folder in the Micro SD card.

JEplayer only looks at folders in the top level, so remember not to create a folder inside of another folder!

After you've added a bunch of albums, the top level of your Micro SD card might look like this.

![projects_Screenshot_2020-05-18_11-36-43.png](https://cdn-learn.adafruit.com/assets/assets/000/091/313/medium640/projects_Screenshot_2020-05-18_11-36-43.png?1589819961)

Here's what a typical folder full of music should look like in the file browser.&nbsp; Remember, this needs to be a folder inside the Micro SD card.

![projects_Screenshot_2020-05-18_11-17-18.png](https://cdn-learn.adafruit.com/assets/assets/000/091/297/medium640/projects_Screenshot_2020-05-18_11-17-18.png?1589819938)

Need some music?&nbsp; We can heartily recommend [Bartlebeats - Frequency](https://bartlebeats.bandcamp.com/releases), the official soldering soundtrack of Adafruit.

# PyGamer MP3 Player with CircuitPython

## Add Artwork

JEplayer can show artwork to go along with each track or album.&nbsp; Make your artwork up to 160x96 pixels and be sure to save it in uncompressed ".bmp" (Windows Bitmap) format.

Put the image alongside the mp3 files in a folder.&nbsp; To apply it to all tracks, call it "cover.bmp".&nbsp; To apply it to a single track give it the same name as the mp3 file.&nbsp; For instance, if your track is named "03 Neat Please.mp3" make sure the image is in that folder and called "03 Neat Please.bmp".

If you downloaded Bartlebeats, here's the album artwork converted for you:

[cover.bmp](https://cdn-learn.adafruit.com/assets/assets/000/091/273/original/cover.bmp?1589812708)
# PyGamer MP3 Player with CircuitPython

## Using JEplayer

Primary: 

Once you've loaded your tracks and art, eject the SD card from your computer, insert it in the PyGamer, and turn it on or press the reset switch once briefly.

Hold the PyGamer horizontally, with the stick at the left.

The screen of the PyGamer will show information about what's going on right now, and let you make selections.&nbsp; Here, the playback screen is visible.

![projects_pygamer-main.jpg](https://cdn-learn.adafruit.com/assets/assets/000/091/306/medium640/projects_pygamer-main.jpg?1589819041)

All 4 buttons always do the same thing, but what they do depends on what mode you're in.

![projects_pygamer-buttons.jpg](https://cdn-learn.adafruit.com/assets/assets/000/091/310/medium640/projects_pygamer-buttons.jpg?1589819129)

In the album list, move the stick up and down to to choose an album, then click any button to play it.

In playback, move the stick left and right to select an icon, then click any button to activate it.

![projects_pygamer-stick.jpg](https://cdn-learn.adafruit.com/assets/assets/000/091/307/medium640/projects_pygamer-stick.jpg?1589819077)

When JEplayer is playing audio, the LEDs will pulse with the intensity of the music.&nbsp; That really makes it a party.

![projects_pygamer-vu.jpg](https://cdn-learn.adafruit.com/assets/assets/000/091/311/medium640/projects_pygamer-vu.jpg?1589819159)

When it starts, JEplayer will show you a list of folders. Move the stick up and down to choose one, or just pick the top option to get a random playlist. Press any button to start playing. The NeoPixel LEDs will pulse in time to the music.

During playback, control JEplayer using the icons at the bottom of the screen. Press left and right on the stick select an icon—the current one is outlined with a red square—and then press any button to invoke the desired icon.

Some buttons can be "active", in which case they are shown with a blue outline.

The first set of buttons control playback:

Play: Select this icon to play or pause the current track.&nbsp; Active when playing audio.

![projects_icon0.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/274/medium640/projects_icon0.gif?1589813180)

Pause: Select this icon to play or pause the current track.&nbsp; Active when playback is paused.

![projects_icon1.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/275/medium640/projects_icon1.gif?1589813219)

Stop: Select this icon to return to the folder listing.&nbsp; You can also turn the PyGamer off at any time using the power switch.

![projects_icon2.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/285/medium640/projects_icon2.gif?1589813783)

Previous Track: Go to the previous track (or a random track, when shuffle is on)

If "All Folders" is on, going before the first track will go to another folder.&nbsp; Otherwise, going before the first track will return you to the folder listing.

![projects_icon3.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/279/medium640/projects_icon3.gif?1589813500)

Next Track: Go to the next track (or a random track, when shuffle is on)

If "All Folders" is on, going past the last track will return to the first track.&nbsp; Otherwise, going past the last track will return you to the folder listing.

![projects_icon4.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/277/medium640/projects_icon4.gif?1589813321)

The last set of buttons control what will happen when the current track finishes.&nbsp;

If none of those modes are selected, then play will continue through all the tracks in the folder, and then return to the album listing.

Repeat: Switch "Repeat" mode on or off. When active, after the last track in the folder, play continues with the first track. Mutually exclusive with Shuffle and All Folders.

![projects_icon5.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/286/medium640/projects_icon5.gif?1589813849)

Shuffle: Switch "Shuffle" mode on or off. When active, after each track, select a different random track from the folder. Mutually exclusive with Repeat and All Folders.

![projects_icon6.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/287/medium640/projects_icon6.gif?1589813875)

Shuffle: Switch "Shuffle" mode on or off. When active, after each track, select a different random track from the folder. Mutually exclusive with Repeat and All Folders

![projects_icon7.gif](https://cdn-learn.adafruit.com/assets/assets/000/091/288/medium640/projects_icon7.gif?1589813903)


## Featured Products

### Adafruit PyGamer Starter Kit

[Adafruit PyGamer Starter Kit](https://www.adafruit.com/product/4277)
**Please note: you may get a royal blue _or_ purple case with your starter kit (they're both lovely colors)**

What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right,...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4277)
[Related Guides to the Product](https://learn.adafruit.com/products/4277/guides)
### Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino

[Adafruit PyGamer for MakeCode Arcade, CircuitPython or Arduino](https://www.adafruit.com/product/4242)
What&nbsp;fits in your pocket, is fully Open Source, and can run CircuitPython, MakeCode Arcade or Arduino games you write yourself? That's right, it's the **Adafruit PyGamer!** We wanted to make an entry-level gaming handheld for DIY gaming, and maybe a little...

Out of Stock
[Buy Now](https://www.adafruit.com/product/4242)
[Related Guides to the Product](https://learn.adafruit.com/products/4242/guides)
### Adafruit PyGamer Acrylic Enclosure Kit

[Adafruit PyGamer Acrylic Enclosure Kit](https://www.adafruit.com/product/4238)
You've got your PyGamer, and you're ready to start jammin' on your favorite arcade games. You gaze adoringly at the charming silkscreen designed by Ada-friend PaintYourDragon.&nbsp;The nostalgia is palpable!

Cradling the PCB in your hands, you realize there's something...

In Stock
[Buy Now](https://www.adafruit.com/product/4238)
[Related Guides to the Product](https://learn.adafruit.com/products/4238/guides)
### Cell-phone TRRS Headset - Earbud Headphones w/ Microphone

[Cell-phone TRRS Headset - Earbud Headphones w/ Microphone](https://www.adafruit.com/product/1966)
These earbud headphones are the perfect accessory for your FONA - they've been tested to work with our modules - but can be used with any iOS or Android device that uses a TRRS pinout.&nbsp; The buds themselves are&nbsp;16mm in diameter with a nice 40" long. &nbsp;They come with a...

In Stock
[Buy Now](https://www.adafruit.com/product/1966)
[Related Guides to the Product](https://learn.adafruit.com/products/1966/guides)
### 8GB Class 10 SD/MicroSD Memory Card - SD Adapter Included

[8GB Class 10 SD/MicroSD Memory Card - SD Adapter Included](https://www.adafruit.com/product/2692)
Add mega-storage in a jiffy using this 8 GB micro-SD card. It comes with a SD adapter so you can use it with any of our shields or adapters! Preformatted to FAT so it works out of the box with our projects. Tested and works great with our [Wave...](http://www.adafruit.com/products/94)

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/2692)
[Related Guides to the Product](https://learn.adafruit.com/products/2692/guides)
### USB MicroSD Card Reader/Writer - microSD / microSDHC / microSDXC

[USB MicroSD Card Reader/Writer - microSD / microSDHC / microSDXC](https://www.adafruit.com/product/939)
This is the cutest little microSD card reader/writer - but don't be fooled by its adorableness! It's wicked fast and supports up to 64 GB SDXC cards! Simply slide the card into the edge and plug it into your computer. No drivers are required, it shows up as a standard 'Mass...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/939)
[Related Guides to the Product](https://learn.adafruit.com/products/939/guides)

## Related Guides

- [Introducing Adafruit PyGamer](https://learn.adafruit.com/adafruit-pygamer.md)
- [Re-MakeCode the Classics: Py Hunter](https://learn.adafruit.com/re-makecode-the-classics-spy-hunter.md)
- [PyGamer Thermal Camera with AMG8833](https://learn.adafruit.com/pygamer-thermal-camera-amg8833.md)
- [Two Player Game System for PyGamer and RFM69HCW Radio Wing](https://learn.adafruit.com/two-player-game-system-for-pygamer-and-rfm69hcw-radio-wing.md)
- [Saving CircuitPython Bitmaps and Screenshots](https://learn.adafruit.com/saving-bitmap-screenshots-in-circuitpython.md)
- [Trash Panda 2: Garbage Day](https://learn.adafruit.com/trash-panda-2-dumpster-dive.md)
- [Game & Watch Octopus](https://learn.adafruit.com/game-watch-octopus.md)
- [PYOA for PyGamer/PyBadge - Adding Cursor Support to CircuitPython](https://learn.adafruit.com/cursor-for-circuitpython.md)
- [Bounce - an accelerometer game in Arduino for PyGamer and PyBadge](https://learn.adafruit.com/bounce-an-accelerometer-game-in-arduino-for-pygamer-and-pybadge.md)
- [How to Hack NES ROMs to Add Your Own Sprites](https://learn.adafruit.com/how-to-hack-roms-to-add-your-own-sprites.md)
- [MakeCode Arcade Pixel Art Sprites](https://learn.adafruit.com/makecode-arcade-pixel-art-sprites.md)
- [CircuitPython Turtle Graphics](https://learn.adafruit.com/circuitpython-turtle-graphics.md)
- [Submitting Games to MakeCode Arcade Front Page](https://learn.adafruit.com/submitting-games-to-makecode-arcade-front-page.md)
- [PyPaint Drawing Program In CircuitPython](https://learn.adafruit.com/pypaint.md)
- [Arcada Animated GIF Display](https://learn.adafruit.com/pyportal-animated-gif-display.md)
- [Playing Arduboy Games on Arcada](https://learn.adafruit.com/playing-arduboy-games-on-arcada.md)
