3 Simple Ways to
Share What You Make

With Instructables you can share what you make with the world — and tap into an ever-growing community of creative experts.

PhotosPhotos

Share one or more photos of a project, recipe, or whatever you've made, quickly and easily.

Step by StepStep-By-Step

Share your step-by-step photos with text instructions of what you made so others can do it too!

VideoVideo

Share your how-to video. You'll need your embed code from a video site such as YouTube.

Build an ArduinoBoy

Build an ArduinoBoy
«
  • IMG_0401.JPG
  • 2316803721_c22f9c2387.jpg
The GameBoy. Most likely you owned one back in your childhood. And even if you didn't, most likely you played with your best friend's GameBoy, or maybe you owned its closest competitor, the Sega Game Gear or Nomad. Marvelous little gaming devices, but now that you are all grown up, have you given any thought to what you are going to do with it now? Keep it in the attic to dig out and show your kids what gaming was like in the 20th century? Sell it to a collector? Relive gaming memories by going back through the Legend of Zelda: Link's Awakening for the umpteenth bazillon time?

Did you ever think about turning it into a musical instrument?

Timothy "trash80" Lamb is a chiptune composer currently living in Los Angeles, California. A chiptune composer is a person who uses the sound generator ICs (integrated circuits) found inside video game consoles and handhelds to create music. Mr. Lamb is also the creator of a device known as the ArduinoBoy; a combination of open source hardware and software that can turn any member of the GameBoy family with a cartridge slot and a link cable port into a MIDI sound generator.

Now it should be noted that trash80 was not the first to create such a system. The two big homebrew GameBoy apps used by professional chiptune composers, Nanoloop and Little Sound Disk Jockey, or LSDJ, have had MIDI in capability for quite some time. The problem is that both these apps rely on Microchip PIC hardware to send and receive MIDI signals. No disrespect intended to the standard microcontroller of the electrical engineering industry, but the PIC really is a piece of professional hardware and can be kind of intimidating for those who do not muck about with electronics on a regular basis. There is also little to no support for users of less popular operating systems when it comes to programming these devices (the only official PIC development suite is for Windows, no Linux or Mac support). By using the much simpler Arduino platform, however, the ArduinoBoy gets around these limitations, making it much easier for a would-be chiptune composer to build the tools he or she needs. Plus, while the ArduinoBoy was made to work with trash80's own homebrew GameBoy sound generator program, mGB, it also gets along just fine with Nanoloop and LSDJ.

While trash80 has shared his work on a Google Code web page, he does not have any step-by-step instructions on how one can make their own (its on his to-do list). I decided to help him out in this regard. While not necessarily a step-by-step, this Instructable should give you a general idea on what to do and show you some of my pitfalls so that you can avoid them.
 
Remove these adsRemove these ads by Signing Up
 

Step 1Parts, Tools, and Code

Parts, Tools, and Code
Parts

  • An Arduino, generic Arduino, or the parts to make your own. I personally use Modern Device Compay's Really Bare Bones Board kit, which can either be assembled as is and attached to your project using female circuit board pin sockets, or cannibalized for parts to make the Arduino a permanent part of the project.
  • Two 220Ω, seven 2KΩ, and one 270Ω resistors. For this project, 1/4 or 1/8 watt resistors are ideal.
  • One 6N138 opto-isolator.
  • One 1N914 small signal diode.  Don't be surprised if you can only buy them in quantities of 10 or more.
  • One pushbutton that is on only when the button is depressed. For those who speak Engineer, that is a SPST off-(on) pushbutton.
  • Two 5 pin female 180 degree DIN connectors. Make sure you get these exact connectors. There are many different designs for DIN connectors, and few, if any, are compatible with each other.
  • Four two-pin terminal blocks. Although you can just solder all your wires directly to the PCB, using terminal blocks or some other form of connectors will make assembly, disassembly, and parts cannibalization much easier.
  • One general-purpose PC board.
  • One GameBoy link cable.
  • A device that can provide MIDI out, like a keyboard or a computer with the necessary software and adapter.
  • One programmable GameBoy cartridge.
  • Solder.
  • Extra wire. Solid for breadboard work and wiring the PC board, stranded for wires you expect to move often.
  • A case to stuff it all in.
  • Pile of Miscellanea.
Tools

  • Soldering iron.
  • Desodering bulb, pump, or wick. Just in case.
  • Helping hands soldering tool.
  • Safety goggles. Your glasses are not going to cut it.
  • Fire extinguisher, or at least a glass of water. Once again, just in case.
  • Wire cutters.
  • Wire strippers.
  • Needle-nose pliers.
  • Solderless breadboard.
  • Programming or USB cable(s) for both the Arduino and the programmable GameBoy cartridge, if applicable.
  • Rotary tool and/or anything else you need to cut holes and slots in your case of choice.
Code

You are going to need two different pieces of code for this project, both of which can be found on trash80's ArduinoBoy Google Code page . They are found on the right side of the page under the heading Featured Downloads . You will load the ArduinoBoy code into the Arduino, while mGB will be loaded into the programmable game cartridge.
« Previous StepDownload PDFView All StepsNext Step »
26 comments
Apr 22, 2012. 8:37 AMDJsoundestroyer says:
Ive seen things like this before, but never in a step-by-step form, so thanks! But is was wondering, could your design work with just a link cable, or do i need to get a blank cartridge? Ive seen some far more DIY style ones, with a AVR (an 8-bit micro controller) that goes right into the link cable, no cartridge needed, but i like the idea of an arduino alot better. Thanks!
Feb 1, 2012. 4:45 PMthe dashing hero says:
aaaahh....... the GBA sp, im loving Nintendo!
Aug 1, 2011. 8:09 PMRobot Lover says:
Where did you get the programmable game cartridge?
Jan 10, 2012. 2:39 PMdoomsdayltd says:
the programmable cart is a cart from either kitsch bent or non finite
Jan 10, 2012. 3:44 PMRobot Lover says:
Thanks!
Dec 7, 2011. 7:07 AManti_communist_fish says:
is it possible to replace 6n138 with a 4n28?
Jul 28, 2011. 11:52 PMsukoa says:
Hi, it looks very nice. I got a question, would it be possible to use a touch pad as a midi interface and send signals to the gameboy? If that the case, would it be possible to use the gameboy as a effects pedal?
Thanks in advance,

Sukoa
Jul 31, 2010. 11:40 AMmonsterman says:
will it work with gba
Dec 28, 2010. 9:34 AMhyaki says:
Nice Tutorial :) thanks
Btw, what about the LED how many required and the voltage?
Dec 12, 2010. 4:04 PMSHIFT! says:
Interesting concept! But could it also work on a Gameboy Advance since it can also play original gameboy games?
Nov 29, 2010. 1:30 AMWillTheRescue says:
If I won't be using the midi-out feature, can I just scrap that and those components all together? or will it cause wiring and/or other issues?
Feb 17, 2010. 5:51 AMmodeve says:
You also want 100% (or maybe it's 91%) isopropyl alcohol instead of rubbing alcohol. Available in most drugstores.
Jul 4, 2010. 5:28 PMKasm279 says:
its 91%, ive got a jug of it on my desk lol
Jun 3, 2010. 7:04 AMonef says:
I  have assembled a parts list for jameco.com. Does everything look right here?
Optocoupler DC Input 1 Channel DARL W/Base DC Output 8-Pin Plastic Dip Black Bulk:
Part no. 42489

@ RES,CF,220 OHM,1/4 WATT,5%,(100 BAG):
Part no. 690700

@ RES,CF,2K OHM,1/4 WATT,5%,(100 BAG):
Part no. 690937

@ RES,CF,270 OHM,1/4 WATT,5%,(100 BAG):
Part no. 690726

SOCKET,STD DIN,FEMALE,5PIN, PANEL MOUNT:
Part no. 15844

Connector Terminal Blocks 2 Position 3.5mm Solder Straight Thru-Hole 10A:
Part no. 2094506

EXPERIMENTER?S PHENOLIC PROTOTYPE BOARD:
Part no. 616673

Diode Switching 100 Volt 2-Pin DO-35:
Part no. 36311
Mar 1, 2010. 11:59 PMExpressed says:
Would it be possible to use Ableton Live and midi it to an Arduinoboy with a Prosound DMG-01? ALso, do you need to buy an arduino chip and the bare bones kit, or just one or the other? 
Feb 17, 2010. 5:49 AMmodeve says:
A tapered reamer (hand tool) is a good addition to the toolbox for enlarging, smoothing rough holes.

Here's a  2"x3" vectorboard from digikey for around $6
Digikey # V2025-ND
Dec 12, 2009. 1:53 PMM8R-9kie08 says:
 You're missing the 1n914 diode on your parts list. Do the whole thing over.
Nov 3, 2009. 1:53 PMtrash80 says:
Hello all. Nice instructable.

daulef:
MIDI out acts as a thru in modes where midi out isnt useded (All modes other then LSDJ master sync)

Also I did just that once, built a arduinoboy inside of a DMG.
http://www.flickr.com/photos/trash80/sets/72157606262638032/

Sep 12, 2009. 2:52 AMdaulef says:
Any idea how you'd go about implementing a midi thru?
Sep 6, 2009. 8:24 AMdaulef says:
what about an arduino-boy so small it could fit in the gameboy? directly wired to the link port? might have to sacrifice the battery compartment though... hmm... just ordered a cart and link cable (my original is long gone!) from these guys: http://store.kitsch-bent.com/
so i might just give this a shot!
Jul 12, 2009. 10:05 AMFinnl says:
I really like this picture!
Jul 4, 2009. 10:20 AMhardyboy says:
(removed by author or community request)
Jun 26, 2009. 6:51 PMkillthewiseone says:
nice tutorial man, i'm glad i found this as there's not much extra info over on the google group. ive been researching into building one and this is a huge help. my problem is some of the components for the build are not widely available in ireland, it means ordering from abroad and postage is gonna cost more than the parts themselves. are those midi in-only arduinoboys for sale anywhere? financially it might make more sense for me to buy, albeit less satisfying!

Pro

Get More Out of Instructables

Already have an Account?

close

All Steps Viewing
View all steps of an Instructable on the same page when you're a Pro Member.

Upgrade to Pro today!
4
Followers
2
Author:scienceguy8