What 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 retro-emulation. It's not the fastest and best of everything but it is an all-in-one dev board with a lot of possibilities!

The PyGamer is powered by our favorite chip, the ATSAMD51, with 512KB of flash and 192KB of RAM. We add 8 MB of QSPI flash for file storage, handy for images, fonts, sounds, or game assets.

On the front you get a 1.8" 160x128 color TFT display with dimmable backlight - we have fast DMA support for drawing so updates are incredibly fast. A dual-potentiometer analog stick gives you great control, with easy diagonal movement - or really any direction you like. There's also 4 square-top buttons, which fit our square top button caps. The buttons are arranged to mimic a gaming handheld, with 2 menu-select buttons and 2 fire-action buttons. There's also 5 NeoPixel LEDs to dazzle or track activity.

On the back we have a full Feather-compatible header socket set, so you can plug in any FeatherWing to expand the capabilities of the PyGamer. There's also 3 STEMMA 2.0mm PH connectors - two 3-pin with ADC/PWM capability and one 4-pin that connects to I2C - you can use this for Grove sensors as well as Stemma QT with an adapter cable.

For built in sensors, there's a light sensor that points out the front, and a 3-axis accelerometer that can detect taps and free-fall. To make bleeps and bloops, plug in any set of stereo headphones. For projects where you need more volume, you can plug in one of our 8 ohm speakers. The PyGamer will auto-switch to speakers when they're plugged in.

You can power the PyGamer from any of our LiPoly batteries, but we like this 350mAh one which will fit into the acrylic case. An on-off switch will save battery power when not in use. Or power from the Micro USB port - it will also charge up the battery if one is attached.

Now, how to program it? Well you've got a lot of options!

Here's a list of everything you get

  • ATSAMD51J19 @ 120MHz with 3.3V logic/power - 512KB of FLASH + 192KB of RAM
  • 8 MB of QSPI Flash for storing images, sounds, animations, whatever!
  • Micro SD Card Slot for storing even more stuff when the QSPI flash isn't enough
  • 1.8" 160x128 Color TFT Display connected to its own SPI port
  • 1 x Analog Thumbstick with X and Y analog inputs
  • 4 x Game/Control Buttons with square tops
  • 5 x NeoPixels for dazzle, or game score-keeping
  • Triple-axis accelerometer (motion sensor)
  • Light sensor, reverse-mount so that it points out the front
  • Stereo headphone jack
  • Mono Class-D speaker driver for 4-8 ohm speakers, up to 2 Watts
  • LiPoly battery port with built in recharging capability
  • USB port for battery charging, programming and debugging
  • Two female header strips with Feather-compatible pinout so you can plug any FeatherWings in
  • JST ports for NeoPixels, sensor input, and I2C (you can fit I2C Grove connectors in here)
  • Reset button
  • On-Off switch

This guide was first published on May 25, 2019. It was last updated on Mar 13, 2024.

This page (Overview) was last updated on Mar 08, 2024.

Text editor powered by tinymce.