Game Boy Camera Wifi Photo Extractor

Overview

Game Boy Camera Fast Wifi Adapter

Plug in your Game Boy Camera, turn it on, and you can have the photos on your phone in under 2 minutes!

|Screenshot of youtube player, with photo of me holding the box

Why I Made It, and What I Used Before

I’ve had my Game Boy Camera since the ‘90s: it was my first digital camera, and I love it.

It can take and store 30 photos, but provides no way of taking the photos off it, other than deleting or printing with the Game Boy Printer. (That's '90s technology for you!)

Around 2013, I worked out a long-winded way to get photos off it onto my Mac using a Mega Memory and GB EMS USB Smart Card. This method was very fiddly and regularly took multiple attempts to work, and wasn't really portable.

I'd seen other portable devices before, but they all relied on emulating the Game Boy Printer and printing each photo one-by-one, which took even longer than fiddling with the Mega Memory!

In 2018 I found InsideGadgets' GBxCart RW, a USB Game Boy Cartridge Reader. This made the transfer so much easier, but it still wasn't portable because it requires a computer.

Months later, I had a brainwave: A Raspberry Pi Zero is a computer! It's easily pocketable and battery powerable, and the GBxCart RW has linux support too! I got this kind of working, but it still required carrying around a jumble of cables.

The final piece of the puzzle came in December 2020 when I got my first 3D Printer. I realised I could put this all together into one device, in one box, and this is what I ended up with!

How it works

  1. Plug in Game Boy Camera.
  2. Turn it on.
  3. Wait a minute.
  4. Connect to the GameboyCamera wifi network.
  5. Go to http://gameboy.local
  6. All your photos will be visible on the webpage, and can be downloaded!
  7. Turn it off.

Inside the 3D Printed Case.

On The Pi

Photo Downloader

  • /home/pi/get_photos.sh is set to run automatically on boot, by being included in /etc/rc.local
  • get_photos.sh runs GBxCart_RW_GBCamera_Saver_v1.8.
    • This works by extracting the save data out of the cartridge, finding the photos within it, and exporting them as bitmaps.
  • And saves the photos inside /var/www/html/photos, so the web page can see them.

Web Page

  • Apache 2 web server with PHP 7.
  • Files stored in /var/www/html/
  • index.php displays the photos in ./photos/, grouped by subfolder.

Wifi Network

The Raspberry Pi hosts a wifi access point called GameboyCamera.

  • Uses hostapd.
  • Configured in /etc/hostapd/hostapd.conf
  • I'm not sure if just installing and creating that file is enough to make it work, I didn't make notes as I did it annoyingly.

Future Improvements

I'm not saying I'll ever make a v2, but if I did, this is where I'd start:

Shape & Size

  • It would be nice if the cartridge slot was full length to stop the camera looking so dorky sticking out of it.
  • I'd like to key the cartridge slot so you can't put the cart in back-to-front by accident.
  • This is the first case I've ever 3D modelled, so it can probably be made a bit more compact. I was however aiming to make this no thicker than a phone.

RTC

The Raspberry Pi doesn't keep time when it's turned off because it doesn't have a Real Time Clock.

GBCamera_Saver is saving the photos into folders labelled with the date/time. It still seems to work, but this may cause a problem if it tries to create a folder with the same name again because "time is repeating itself".

You can get RTCs from hobby shops, specifically designed for integrating into Raspberry Pi projects.

Photos

me holding the Game Boy Camera Fast Wifi Adapter

Game Boy Camera Fast Wifi Adapter in use, next to phone showing its webpage

You might also like...
Simple KPHP game, a proof of concept thing
Simple KPHP game, a proof of concept thing

KPHP Game About This is a game written in PHP using kphp-sdlite library. Gameplay video: https://www.youtube.com/watch?v=L44l4Tqm4Fc This game feature

🚀 An open source multiplayer space strategy game.
🚀 An open source multiplayer space strategy game.

Badges Introduction The game story takes place in a virtual galaxy where randomly generated planets produce various raw materials which can be used by

A console noughts and crosses game written in php

Tic-tac-toe A console noughts and crosses game written in php To play, simply clone the file Navigate to the file directory on your terminal and run t

Web typing game

Welcome in Typing Game by Cards™ Introduction This game consist of typing 5 french expressions, the fatest you can ! Get Started Clone the repository

SpawnInLobby Pocketmine-MP plugin. With this plugin the player will always join the game at the default world spawn point

SpawnInLobby Pocketmine-MP plugin. With this plugin the player will always join the game at the default world spawn point

Game of life developed in PHP with TDD approach

What is Game of Life: https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life Project structure: Engine is in App\Services\LifeEngine.php Tests are in T

Laravel package for a Game of Tests

Game of Tests laravel This package aims to enable a quick implementation of a Game of Tests in Laravel. Is uses the package swisnl/game-of-tests and g

A text-based, persistent browser-based strategy game (PBBG) in a fantasy war setting
A text-based, persistent browser-based strategy game (PBBG) in a fantasy war setting

Note: OpenDominion is still in development. Some features of the game have not been implemented yet. Introduction OpenDominion is a free and open-sour

A web app for the resolution of a mobile game in wich you have 4 images and a list of letters, then a few boxes to fill with the word connecting the four images.

4images_1mot_solutions A web app for the resolution of a mobile game in wich you have 4 images and a list of letters, then a few boxes to fill with th

Comments
  • Add a license?

    Add a license?

    Hey Matt/ maintainers of this repo. I want to use this code in future and was just wanting a little more clarity on what we can use it for so if you could add a license or just tell me what license this is under that would be great :)

    opened by cameronball 0
Owner
Matt G
Matt G
📷 Yet another photo management app for Nextcloud

Memories ?? Yet another photo management app for Nextcloud How is this different? ?? Photo and Video Timeline: Sorts photos by date taken, parsed from

Varun Patil 322 Jan 8, 2023
Moodle plugin to limit the access to course content according to the user level in Block Game.

Moodle plugin to limit the access to course content according to the user level in Block Game.

null 4 Oct 18, 2022
A useful PocketMine-MP plugin that allows you to create crates in-game!

ComplexCrates A useful PocketMine-MP plugin that allows you to create crates in-game! Commands Main command: /crate Sub commands: create

Oğuzhan 8 Aug 26, 2021
The game is implemented as an example of scalable and high load architecture combined with modern software development practices

Crossword game The game is implemented as an example of scalable and high load architecture combined with modern software development practices Exampl

Roman 56 Oct 27, 2022
This plugin adds custom pets to game for PocketMine-MP!

ComplexPets A plugin that adds pets to game made by OguzhanUmutlu for PocketMine-MP. Command Simply type /pets and summon your favorite animal! Featur

Oğuzhan 10 Aug 12, 2021
A game-mode for Minecraft: Bedrock Edition

HardCoreFactions This is an unpaid commission that was only released for educational purposes, consider using it as a reference rather than having it

Doge 3 Sep 8, 2021
Rules to detect game engines and other technologies based on Steam depot file lists

SteamDB File Detection Rule Sets This is a set of scripts that are used by SteamDB to make educated guesses about the engine(s) & technology used to b

Steam Database 103 Dec 14, 2022
Encuentra_Al_Puffle-Game Es un juego sencillo, lo cuál desarrollé a modo de práctica y por gusto

Encuentra_Al_Puffle-Game Es un juego sencillo, lo cuál desarrollé a modo de práctica y por gusto. Tomando como referencia a los puffles (frailecillos)

Moises Reyes 4 Dec 27, 2021
Simple game server with php without socket programming. Uses the Api request post(json).

QMA server Simple game server with php without socket programming. Uses the Api request post(json). What does this code do? Register the user as a gue

reza malekpour 3 Sep 4, 2021
Steam store auto add to cart game

Steam store auto add to cart game use it for steam trading card farm How does it work? link.php explode and find link from link.txt and next open all

reza malekpour 3 Sep 4, 2021