socquique/TamaPoke

Games

An open-firmware virtual pet game for one specific round ESP32-S3 AMOLED board, with a browser flashing tool.

223
106
C++
NOASSERTION
4 months old

TamaPoke is a fan virtual-pet game that runs on one particular Waveshare round AMOLED board; it is worth a look if you already own that board and enjoy the genre, but it is not a general-purpose gadget you can drop onto arbitrary hardware.

The problem

A virtual pet lives or dies on the loop between checking, feeding and watching it grow. On this board the entertainment is meant to sit on a small round screen with touch input, so the owner needs firmware whose menus, animations and storage all fit and can be installed without opening an IDE. TamaPoke supplies that complete loop: egg, care stats, evolution, endings and a 151-entry Pokédex, with time continuing to pass while the device is powered off. The result is a self-contained toy rather than a collection of demos.

What's different

The design commits to a time-based progression rather than interaction-based leveling: the creature gains a level every real hour, and neglect does not slow levels but delays evolution. Stats drain on a published per-minute schedule, evolution requires both a level threshold and all stats at 40 or above, and each care slip-up pushes evolution back a level. That makes care quality matter without turning the game into a grind. Endings are deliberate choices rather than automatic failures, and each one modifies the next egg's odds. The README publishes the actual numbers from the code, so you can judge the pacing before buying hardware.

The trade-off is specificity. The firmware depends on the exact CO5300 display over QSPI and CST9217 touch over I2C, and sprites load from a microSD card. The installer handles both firmware flashing and sprite transfer, but it must run in Chrome or Edge from an HTTPS or localhost page. Porting is not presented as a supported path, so the project is effectively one board, one experience.

Who should try it

This fits a maker who already has the Waveshare ESP32-S3-Touch-AMOLED-1.75 and wants a finished, item-rich use for it. It also suits someone comfortable following a browser installer and preparing a microSD card. It does not fit anyone who wants a virtual pet for a different display, a phone or a generic ESP32, or who expects a finished battle game: wild encounters and battles are designed but not implemented. The 3D-printed case is listed as pending, so the case is a separate project.

Requirements and limitations

The hardware requirement is narrow: the named round AMOLED board is the target, and sprites require a microSD card. Installation goes through the web installer, which needs a secure context and a Chromium-based browser, or through the tooling in the repository. After that, play depends on the RTC staying set; the game catches up on up to two weeks of offline time, and the README notes it keeps aging while powered off.

Licensing is the other boundary. The code is MIT, but sprites come from PMD SpriteCollab under CC BY-NC and Pokémon assets belong to Nintendo and Game Freak, so the whole package is non-commercial only. The README acknowledges the case is not yet completed and the project is a personal fan project; see the license notes and the project README for the full terms. No soak test is reported yet, so long-running behavior is unproven.

HotRepo's take

HotRepo's only dated observation is 2026-10-25, when the repository had 221 stars and gained 11 that day, appearing once on the daily board. Since HotRepo has tracked it only since 2026-10-24, there is no comparable history to judge whether interest is growing or fading. The 136-day-old repo has a visible CI workflow, but stars do not establish firmware maturity. Before committing, verify the board revision and display/touch controller match the project's stated hardware.

Written by AI from the project's README, updated October 25, 2026. The project's own docs are the source of truth.