Gameboy Printer with Arduino
From Miles Burton - Innovative engineering for pretty much anything
The Gameboy printer is a small battery powered thermal printer. It's low resolution makes it ideal for low powered MCUs like the Arduino. This library is based off the excellent work by Furrtek. It will let you printer directly from the Arduino to any Gameboy Printer.
File:GBPrinter Arduino Alpha 0.01.pde - Gameboy Printer for Arduino 0.01 Alpha.
0.01 - Early port of Furrtek's Gameboy printer code. Designed to print a test band and prototype early object methods.
What you need
- Gameboy Printer - £5-10
- Printer Paper - £5
- Gameboy link cable CGB-003 (or similar) - £1-5
- Prototyping board or veroboard
- Arduino compatible MCU (AtMega8/128/328/Mega)
Step One : Identify the lines
First up, cut the link able in half. each half will have a slightly different pin-out.
Identify which lines are which. There are four unique lines, SIN (Serial In), SCK (Clock), SOUT (Serial out) and GND (Ground).
The purpose of the clock line is to indicate the frequency (timing) of data. As with most peripherals it operates in packets of 8 - 8 bits. Each packet will contain data from the printer (which always returns data regardless of it's validity). Each bit is separated by 60 microseconds (60us).
Step Two : Wire up the Arduino
The AtMega 8/168/328 have sufficient [pull ups] to allow you to plug the GB Printer outputs straight to the Arduino.
See the example PDE for default pinouts.