Tamagotchis Everywhere

Tamagotchi’s relatively simple technical complexity pales in comparison to its huge cultural impact, with over 76 million sold. It has spawned comics, stories, numerous toys, and offshoots such as an anime and two films. [JC] was looking through some of his old stuff and came across a Tamagotchi P1 (the original Tamagotchi) and decided to create a portable emulator for it. The ROM for the P1 has long been dumped and can be run within a MAME emulator. After all, it’s just an E0C6S46 Epson MCU, 32×16 LCD with 8 additional icons, three buttons, and a piezo. The manual for the MCU is even available on Epson’s website. Here at Hackaday, we’ve seen Tamagotchis many times before, such as the infinite matrix of the Tamagotchi Singularity and a ROM dump of the latest generation of Tamagotchi based on a 6502 core.

So what’s different about what [JC] is trying to accomplish? For starters, the tooling. It is divided into two parts: TamaLIB and TamaTool. The first is a hardware-agnostic P1 emulation library that relies on a HAL layer to communicate with the hardware. The second is a frontend for the first, allowing debugging, RAM editing, and modifications to the ROM. In particular, it supports easy modification of images within the ROM and allows for custom eggs and Tamagotchis. The homage to the Jolly Wrencher is nice.

Given that the emulation is platform-agnostic and access to a low-resolution timer is not guaranteed, cycle counts become tricky. The rather clever solution [JC] stumbled upon was synchronizing against input polling, screen updates, and sound output. TamaLIb keeps track of how many CPU cycles have passed and regularly checks if the emulation is going too fast or too slow. Slowing down or speeding up the simulation allows it to seem to run in real-time.

The last goal [JC] had was to run it on embedded hardware. Using an STM32F072 board and a cheap OLED screen had a portable emulated Tamagotchi known as MCUGotchi. The code is available on GitHub and should work on most STM32 MCUs with a few small tweaks. Now that someone has gone through the effort to make it easy to run a Tamagotchi literally anywhere, it might not be long until we see a coffee maker or a smart light acting as a Tamagotchi. Perhaps the new joke will be, can it run Tamagotchi?

Video after the break.

Continue reading “Tamagotchis Everywhere”

The Trouble With Tamagotchis…

The must-have toy of a couple of decades ago was the Tamagotchi, a virtual pet in an LCD screen on a keyring, that demanded your attention and which would die were you to neglect it. Fortunately it had a reset button on the back through which it could be resuscitated, but even so it lacked a satisfying tactile experience. [Nadine] has done something about this with her Tamagotchi-style Tribble, an anthropomorphic ball of fluff that demands attention and purrs when it receives some.

Inside the ball of fake fur is an Adafruit Circuit Playground with a capacitive touch pad and a haptic motor. After a random time with no attention it “cries”, and its owner strokes it, after which it responds with a purring vibration. It’s quite cute as you can  see in the Twitter video below, and fortunately it won’t multiply and fill up your starship. We wonder whether a small resistive heater to give it a body temperature would complete its appeal as a virtual pet.

Given the popularity of Star Trek TOS among Hackaday readers perhaps it’s surprising that we don’t see more Tribble related projects. They have made a notable appearance as a DEF CON badge though.

Continue reading “The Trouble With Tamagotchis…”

Put An Open Source Demon In Your Pocket

Back in 1996, the Tamagotchi was a triumph of hardware miniaturization. Nearly 25 years later, our expectations for commercially designed and manufactured gadgets are naturally quite a bit higher. But that doesn’t mean we can’t be impressed when somebody pulls off a similar feat in the DIY space.

The Xling by [dsl] follows the classic Tamagotchi concept. A little creature, apparently inspired by the demon from Netflix’s Disenchantment, lives in your pocket and needs occasional attention to remain healthy. The user pushes a few buttons to interact with the creature displayed on the display to do…whatever it is you do with a pet demon. Feed it souls and what have you.

But unlike the iconic 90s toy, both the hardware and software for the Xling are open source. The CERN-OHL-W licensed PCB was designed in KiCad and features an ATmega1284P microcontroller and SH1106G controller for the 128 x 64 OLED display.

Power is provided by an AP3401 DC-DC converter, MCP73831 charge controller, and a 400 mAh 3.7 V battery. Everything fits inside of a 3D printed case that looks like it could easily hang off of a keyring.

While the hardware is admirable enough, the software side of things is quite interesting as well. The Xling is running on a FreeRTOS kernel ported to the ATmega, but the GPLv3 licensed firmware sill needs some work. Right now only a few core functions are implemented, and [dsl] is hoping to get some ideas and feedback from the community so his dream of a fully open source demonic Tamagotchi can finally be realized.

Build enough of them, and you might even be able to implement another virtual pet Singularity. But to be safe, maybe you shouldn’t.

Continue reading “Put An Open Source Demon In Your Pocket”

A Tamagotchi For WiFi Cracking

OK, let’s start this one by saying that it’s useful to know how to break security measures in order to understand how to better defend yourself, and that you shouldn’t break into any network you don’t have access to. That being said, if you want to learn about security and the weaknesses within the WPA standard, there’s no better way to do it than with a tool that mimics the behavior of a Tamagotchi.

Called the pwnagotchi, this package of artificial intelligence looks for information in local WiFi packets that can be used to crack WPA encryption. It’s able to modify itself in order to maximize the amount of useful information it’s able to obtain from whatever environment you happen to place it in. As an interesting design choice, the pwnagotchi behaves like an old Tamagotchi pet would, acting happy when it gets the inputs it needs.

This project is beyond a novelty though and goes deep in the weeds of network security. If you’re at all interested in the ways in which your own networks might be at risk, this might be a tool you can use to learn a little more about the ways of encryption, general security, and AI to boot. Of course, if you’re new to the network security world, make sure the networks you’re using are secured at least a little bit first.

Thanks to [Itay] for the tip!

Redeem Your Irresponsible 90s Self

If you were a youth in the 90s, odds are good that you were a part of the virtual pet fad and had your very own beeping Tamagotchi to take care of, much to the chagrin of your parents. Without the appropriate amout of attention each day, the pets could become sick or die, and the only way to prevent this was to sneak the toy into class and hope it didn’t make too much noise. A more responsible solution to this problem would have been to build something to take care of your virtual pet for you.

An art installation in Moscow is using an Arduino to take care of five Tamagotchis simultaneously in a virtal farm of sorts. The system is directly wired to all five toys to simulate button presses, and behaves ideally to make sure all the digital animals are properly cared for. Although no source code is provided, it seems to have some sort of machine learning capability in order to best care for all five pets at the same time. The system also prints out the statuses on a thermal printer, so you can check up on the history of all of the animals.

The popularity of these toys leads to a lot of in-depth investigation of what really goes on inside them, and a lot of other modifications to the original units and to the software. You can get a complete ROM dump of one, build a giant one, or even take care of an infinite number of them. Who would have thought a passing fad would have so much hackability?

Continue reading “Redeem Your Irresponsible 90s Self”

Building The Infinite Matrix Of Tamagotchis

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.

xkcd.com/1546
xkcd.com/1546

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.

Continue reading “Building The Infinite Matrix Of Tamagotchis”

Desktop Sized Tamagotchi Is Even Harder To Ignore

desktop tamagotchi

[Vadim] was feeling a bit bored at work one day and dreamed up this rather odd project. He had a spare LED matrix handy, and thought, “I should build a giant Tamagotchi…” and so he did.

In case you’re not aware, Tamagotchi’s were digital pets introduced in the late 90’s. You had to feed them, play with them and even train them — attempting to teach the responsibility of having a real pet. It was a bit of a fad, and to be honest, they were really quite annoying — but that didn’t stop [Vadim] wanting to make his own!

He’s using an ATmega328P with the Arduino boot loader at the heart of this project. The LED matrix is made of a group of four 8×8 LED modules with four shift registers (74HC595) and two Darlington transistor arrays to take the current — This is because the 256 LEDs need to be multiplexed down to 32 IO’s (16 rows + 16 columns).

Once the hardware was all done, he started coding — he’s actually coded the entire game from scratch, and while it’s not that complex it’s still an impressive amount of effort that went into this desktop sized Tamagotchi!

To see it in action, stick around after the break.

Continue reading “Desktop Sized Tamagotchi Is Even Harder To Ignore”