🐢 TamaPoke

A 386-Pokémon tamagotchi for the Waveshare ESP32-S3-Touch-AMOLED-1.75. Install it from your browser — no Arduino, no drivers.

⚠️ Your browser doesn't support Web Serial. Use Chrome or Edge on a computer.

⚠️ Board not showing up? Read this first — it is almost always this.

A brand-new board does not appear as a serial port at all. The firmware it ships with never switches USB on, so your computer sees nothing and it looks like a dead board or a broken cable. It is neither. Put it in download mode:

hold BOOT → tap RESET → let go of BOOT

The two small buttons next to the USB-C socket. Nothing on screen will change — that is normal. Now press install and the port will be there. After TamaPoke is on it, this is never needed again.

Still nothing? Use a cable that carries data (a charge-only USB-C cable powers the board perfectly and carries nothing), and plug straight into your computer rather than through a hub.

1Flash the firmware

Plug the board in via USB and press install. Pick the port and wait. Takes about a minute. No drivers needed on any OS.

Browser not supported (use Chrome/Edge). Needs HTTPS.

🔄 Updating? Leave "Erase device" unchecked. The installer asks once, with the box already unchecked — click Next without ticking it and your creature, Pokédex and badges all survive, because the firmware is written around the save rather than over it. Tick that box and everything is gone, with no undo. The sprites on the microSD are untouched either way.

Installers before v2.7 erased it every time, without asking. They shipped one image covering the whole start of flash, the save included, and were configured to wipe the chip before writing. Both are fixed here. Even so, EXPORT on the serial console is the only real safety net: it prints your whole save as a block of IMPORT lines, and pasting that block back restores it. Worth doing before any update you care about.

A fresh board with nothing on it can be erased safely, and on a board that has never run TamaPoke it makes no difference either way.

2Load the sprites onto the microSD

Put a microSD into the board (it formats itself). Press Connect board, then a region. Any one of them works on its own — pick Johto or Hoenn if that is the game you want — and the others can be added later without redoing this one. Kanto is simply the usual place to start.

⏱️ This part is slow, and that is normal. The sprites go over the USB serial link, so Kanto's 40 MB takes roughly 10–15 minutes. Leave the tab open and the card in. The progress bar moves the whole time.

Close the step-1 install tab first (only one program can use the port at a time).

Have your own .bin files?

🎨 Want to make your own sprites? See how to generate & load them in the repo.


  

How to play

Care for your egg until it hatches, feed it, play, train it and complete them all. Tap the creature to pet it; swipe to open the Pokédex (sideways), the stat card (up) or set the clock (down); the physical PWR button turns the screen off (short press) or everything off (long press). More in the repository.

TamaPoke was created by Quique Tortosa — socquique/TamaPoke. This is a fork that builds on his work.

Sprites from PMD SpriteCollab (CC BY-NC). Pokémon is a ™ of Nintendo / Game Freak. Non-commercial project.