Arduino Saves Game Boy Camera

[Brian Khuu] bought a few Game Boy cameras on the Internet and found that they still had pictures on them from the previous owners. The memory in the camera has a backup battery and if that battery dies, the pictures are history, so he decided to mount a rescue operation.

He knew the protocol for how the Game Boy talked to the companion pocket printer was available, so he used an Arduino and a Web browser to extract the photos. The resulting code is on GitHub if you want to save your pictures. Although [Brian] didn’t have to crack the protocol, he does offer a good explanation of it. There’s even some sniffed displays. The Arduino does all the communications and fools the game into thinking it is the companion printer. However, it simply streams the data out and a Javascript decoder handles the actual decoding. In fact, in the blog post, you can enter data, click a button, and see the resulting Game Boy picture.

It works, but [Brian] did run into a few problems. For one thing, the devices don’t seem to use any flow control so he had no choice but to keep up with the Game Boy. Also, there is a CRC he could not correctly decode. However, the pictures look good — well, as good as Game Boy pictures look, at least. So he did get results.

We’ve seen this done with a PC before. If you are more interested in the reverse, by the way, you can use a real Game Boy printer to print from an Arduino.

7 thoughts on “Arduino Saves Game Boy Camera

  1. “found that they still had pictures on them”

    All of them do. As usual, “erasing” the images just sets/removes a flag in the index but does not erase the data itself. It’s a silly guilty pleasure of mine to pick up every 100 yen Game Boy camera I find in Japanese thrift stores, something akin to “buying picture frames for the pictures they contain.”

    Also worth mentioning is the great work BennVenn does with Game Boy cartridges, especially now there’s “bootleg cartridges” coming from China that are actually reflashable, instantly becoming a prime source for LSDJ custom cartridges.

  2. I just use Gameboy Camera > Super Gameboy > SNES > Easycap > PC > VLC Media Player. Works as a web cam with really bad lag and you can screen cap any pix.

    GBCam = $5 eBay
    Super GN = already had, sells for ~$15
    SNES = Had one and thrift stored another for $8 (its beat to hell but works)
    Easycap = Easycap $8. These things are crap, they overheat making the audio “pop” (taking the case off sorta fixed it) and they have wicked lag.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.