How to Download Games and Create Your Own Games for the TinyCircuits Thumby
The TinyCircuits Thumby may be unbelievably small, but don’t let its size fool you. This tiny playable keychain is also a programmable game system that lets you download community-created games and even build games of your own.
Whether you simply want to add more games to your Thumby or you’re interested in learning how video games are made, this guide will walk you through the basics.
What Is the TinyCircuits Thumby?
Thumby is a miniature handheld video game system that’s small enough to fit on a keychain. Despite its tiny size, it includes a working directional pad, two action buttons, a monochrome OLED display, sound, rechargeable battery, and a Raspberry Pi RP2040 processor.
It comes with games already installed, but that’s only the beginning.
TinyCircuits created an online Thumby Code Editor that allows you to:
- Download additional games to your Thumby
- Try community-created games
- Create your own games
- Test games in an emulator before installing them
- Program using MicroPython
- Use visual Blockly programming if you’re new to coding
- Explore and modify existing Thumby games
That means Thumby can be both a fun miniature game system and an introduction to programming and game development.
What You’ll Need
Before getting started, you’ll need:
- A TinyCircuits Thumby
- A data-capable Micro USB cable
- A computer
- Google Chrome or Microsoft Edge
- An internet connection
TinyCircuits currently recommends Chrome or Microsoft Edge for connecting Thumby hardware to its browser-based Code Editor.
For additional setup information, visit the official TinyCircuits Getting Started Guide.
Step 1: Open the Thumby Code Editor
Start by opening the official Thumby Code Editor.
The Code Editor runs directly in your browser, so you don’t need to install a traditional programming application on your computer.
The editor includes several useful tools, including a code editor, filesystem browser, emulator, sprite tools, Thumby Arcade, and utilities for managing your Thumby.
If you’re interested in programming, you can work with MicroPython or use Blockly for a more visual approach.
Step 2: Connect Your Thumby
Connect the Thumby to your computer using a Micro USB cable.
Turn the Thumby on and click Connect Thumby at the top of the Code Editor.
Your browser should display a window asking you to select the connected device. Select your Thumby and continue.
Once connected, the Code Editor can communicate directly with your Thumby.
Having Trouble Connecting?
First, make sure you’re using Google Chrome or Microsoft Edge.
You should also make sure your Micro USB cable supports data. Some USB cables are designed only for charging and won’t allow your computer to communicate with the Thumby.
The TinyCircuits Getting Started Guide also contains additional setup and connection instructions.
Step 3: Browse the Thumby Arcade
Now for the fun part.
Click Arcade inside the Thumby Code Editor.
The Thumby Arcade contains games created for Thumby, including games contributed by members of the Thumby community.
Instead of being limited to the games that originally came with your Thumby, you can browse the Arcade and discover additional games to play.
Try a Game Before Installing It
One of the coolest features of the Thumby development environment is its emulator.
You can test games inside your browser before putting them on your physical Thumby.
When using the emulator on a computer, you can interact with the virtual Thumby using the on-screen controls or keyboard controls.
This is a great way to explore different games before deciding which ones you want to add to your Thumby.
Step 4: Download a Game to Your Thumby
Once you’ve found a game you want, make sure your Thumby is connected to the Code Editor.
Open the game through the Arcade and choose Add to Thumby.
The Code Editor will transfer the necessary game files to your Thumby.
After the transfer finishes, your new game should be ready to launch from the Thumby.
That’s it!
You just expanded the game library of a video game system small enough to hang from your keys.
How to Create Your Own Thumby Game
Downloading games is only half the fun.
Thumby was designed to be programmable, and TinyCircuits provides tools and documentation specifically for creating your own games.
For the complete official tutorial, visit the TinyCircuits Game Creation Guide.
The primary programming environment for the original Thumby uses MicroPython.
MicroPython is a version of the Python programming language designed for microcontrollers and other small devices.
If you’ve never programmed before, don’t worry. Thumby can actually be a fun way to start learning.
Start a New Game
Inside the Thumby Code Editor, look for the option to Make New Game under the Utilities menu.
Give your game a name.
Your project will use a Python .py file containing the code that controls your game.
From here, you can begin programming.
Understanding the Thumby’s Tiny Screen
Creating a Thumby game requires thinking small.
Very small.
The original Thumby uses a 72 × 40 pixel monochrome OLED display.
For comparison, a modern smartphone screen contains millions of pixels. Thumby’s entire game screen contains only 2,880 pixels.
That limitation is part of the fun.
Instead of detailed 3D graphics, Thumby games typically use tiny sprites, simple animations, basic shapes and compact text.
Classic game concepts work particularly well, including:
- Pong-style games
- Snake games
- Brick breakers
- Platformers
- Space shooters
- Racing games
- Puzzle games
- Simple RPGs
- Endless runners
- Arcade games
The goal isn’t to create the next massive console game. It’s to see how much fun you can squeeze into 72 × 40 pixels.
Using the Thumby API
TinyCircuits provides a MicroPython API specifically for Thumby.
The API gives developers tools for interacting with the Thumby’s hardware without having to program everything from scratch.
You can use it to work with features such as:
- The display
- Buttons
- Graphics
- Sprites
- Sound
- Game timing
- Player movement
- Collision detection
For example, your game might check whether the player pressed the left or right button, move a character accordingly, redraw the screen and then repeat the process many times per second.
That repeating process forms the basic game loop used by many video games.
Create Tiny Graphics and Sprites
A sprite is a small graphic used to represent something in a game, such as your character, an enemy, a spaceship, ball or collectible.
Because Thumby’s screen is monochrome, sprites can be extremely small.
The Thumby Code Editor includes tools designed to make creating these tiny graphics easier.
Don’t worry if you’re not an artist. At this resolution, even a handful of pixels can become a recognizable character.
That’s part of Thumby’s retro charm.
Test Your Game in the Emulator
You don’t have to transfer your game to the physical Thumby every time you make a change.
Instead, use the built-in emulator.
This allows you to run your game inside the browser and check things such as:
- Does the player move correctly?
- Do the buttons work?
- Are sprites positioned properly?
- Does collision detection work?
- Is text readable?
- Is the game too fast or too slow?
- Does the game restart properly?
Make a change, run the game again and keep improving it.
This process of coding, testing, finding problems and making improvements is a big part of real software and game development.
You Can Learn From Existing Games
One of the best ways to learn game development is by examining how other games work.
Thumby has a community of developers who have already created games for the platform.
Browse games that have features similar to what you’re trying to build and examine how those developers approached things like movement, graphics, menus and gameplay.
You can then use those concepts to help create something of your own.
Don’t Know Python? Try Blockly
You don’t necessarily have to start by writing lines of Python code.
The Thumby Code Editor also supports Blockly, a visual programming system that allows you to build programs using interlocking blocks.
If you’ve ever used Scratch or similar educational programming tools, the concept will feel familiar.
Instead of worrying about typing every command perfectly, you can focus on understanding programming concepts and game logic.
It’s an excellent option for beginners, younger programmers or anyone who simply wants an easier introduction to creating a Thumby game.
As your skills grow, you can move into MicroPython and explore more advanced game development.
Put Your Game on the Physical Thumby
Once your game works correctly in the emulator, it’s time for the best part: seeing something you created running on an actual Thumby.
Connect your Thumby to your computer and use the Thumby Code Editor to transfer your game to the device.
TinyCircuits provides options for quickly executing a game on connected hardware or adding the game to the Thumby’s filesystem so that it appears with the other games.
Disconnect your Thumby, find your game and launch it.
You are now playing a video game you created yourself on one of the smallest handheld game systems around.
Share Your Game With the Thumby Community
Created something you’re proud of?
You can take things another step and submit your game to the Thumby Arcade.
TinyCircuits provides instructions for developers who want to share their creations with other Thumby owners.
A typical Arcade submission includes your game’s main Python file, an Arcade description containing information and instructions for the game, and a gameplay preview.
Once published, other Thumby owners can discover your creation and add it to their own devices.
There’s something pretty amazing about creating a game at home and knowing that Thumby owners around the world could eventually be playing it.
Important: Back Up Games You Create
If you spend time creating or modifying a game, keep a backup on your computer.
The Thumby Code Editor can store work locally in your browser, but important projects shouldn’t exist in only one place.
Download copies of your game files periodically, especially before updating firmware, MicroPython or making major changes to your Thumby.
Thumby Is More Than a Tiny Game Console
It’s easy to look at Thumby and think it’s simply an incredibly small novelty game system.
But its programmability is what makes it particularly interesting.
You can start by playing the included games.
Then download community games.
Then modify existing games.
Then experiment with Blockly or MicroPython.
And eventually, you can create and share a game of your own.
Along the way, you’re learning many of the same basic concepts used in programming and game development, including variables, loops, input handling, graphics, sprites, collision detection and debugging.
All on a game system measuring roughly 1.2 × 0.7 × 0.3 inches.
Helpful Thumby Resources
Ready to See What Thumby Can Do?
Whether you want a ridiculously tiny retro gaming system, a programmable keychain or a fun introduction to coding, the TinyCircuits Thumby offers a surprising amount to explore.
Start with the games already installed, visit the Thumby Arcade to discover more, and when you’re ready for a challenge, try building your own.
Your first game doesn’t need to be complicated.
Start small.
On Thumby, that’s kind of the point.