Tamagotchi is a digital pet, living in and cared for through a key-chain size piece of hardware. The mid-90’s toy lives in pop culture, but now it lives well beyond. A limitless network of Tamagachi has been created using some amazing tricks to feed, socialize, and monitor the beast now known as the Tamagachi Singularity.
Last weekend at the Hackaday SuperConference we were graced with a talk by [Jeroen Domburg], a.k.a. [Sprite_tm]. [Sprite] is a favorite of ours and over the years his hacker cred includes everything from reverse engineering hard drive controller chips to putting video games in his keyboard.
[Sprite] is also something of an Architect, and like all Architects he only wants what is best for the system he created. In this case, it’s a Matrix of Tamagotchis. [Sprite] created a hive of Tamagotchis that are able to interact with each other in their own separate world. The best part about this Matrix? There’s no allusions to violating the laws of thermodynamics in the exposition.
Like all good hacks, a Tamagotchi Matrix wasn’t created in a vacuum. A few years ago at 29C3, [Natalie Silvanovich] dumped the ROM in the current generation of Tamagotchis. This is an incredible feat of reverse engineering, that allows anyone to use the full capabilities of the 6502-based microcontroller that controls these digital pets
After [Sprite] figured out how to read and run the code in the Tamagotchi, the next obvious step towards a world of egg-shaped pods containing an entire population of Tamagotchis is virtual Tamagotchis. [Sprite] used a hard-coded state machine that takes care of pooping, flushing, training, feeding, and turning the lights off at bedtime.
With a single Tamagotchi described as a state machine, it’s a simple matter to build another. This is where things get interesting and Matrix-ey. Tamagotchis don’t live alone; they have an IR LED and receiver that allows them to interact with each other, eat, play, marry, and have kids. Emulating a single Tamagotchi is one thing, but controlling multiples is another thing entirely; some sort of protocol was needed to breed Tamagotchis and keep them happy and well-fed.
Enter the Tamaserver, a bit of code running on a server that keeps track of a dozen or so Tamagotchis. On this server, a small population of Tamagotchis live their entire life not realizing they are just part of a gigantic computer. Here, Tamagotchis live, eat, love, and die, all without the messy violations of the laws of thermodynamics proposed in the Matrix trilogy.
So far, the Tamaserver has been home to 13 Tamagotchis for a little more than a month, playing host to seven generations of digital pets, without any intervention from the outside. Things have gotten dicey recently with twelve females and one male, forcing a slight modification to the Tamagotchi Matrix. [Sprite] has only reset the Tamaserver one time, but he’s still become very efficient at it.
The Original Tamagotchi Hardware Reimagined
Running a world of Tamagotchis in a server is a worthwhile pursuit, but since [Sprite] gave this talk at a hardware conference, this required hardware to show off. A Matrix in an old German bomb shelter / server farm simply won’t do. As such, [Sprite] created the Tamanode, a WiFi-enabled viewer for each of the cells in the hive.
[Natalie Silvanovich] did all the work a few years ago for running arbitrary code on the Tamagotchi through the small little egg add-ons that contain an EEPROM. This happens by writing code to the LCD display, then jumping the CPU to an invalid address. When the CPU encounters an invalid address, it jumps to an address space on the screen. It’s an astoundlingly clever hack, but not really useful if you don’t have the hardware to do something cool.
[Sprite] performed a little bit of surgery on his egg by adding an ESP8266 WiFi module and an EEPROM that contained all the code to connect to a WiFi network, access his hive, and scroll through each of its inhabitants. It’s disruptive Tamagotchi computing, the Internet of Digital Pets, and a cloud-powered Tamagotchi as a service.
By all accounts this is an amazing accomplishment. [Sprite] presented the talk on Saturday night, just before the presentation of the 2015 Hackaday Prize. It was the first thing anyone wanted to talk about when you ran into them on Sunday. We expect this recording will have the same effect on the much wider audience of the Internet. He is not a one-hit wonder. We religiously check [Sprite’s] website for that hit of excitement gained with every project he posts.
UPDATE: [Sprite_TM] has published full details of the hack on his website. Check it out!