Indigo Keyboard and Mouse Converter
 

Below is a picture of my first prototype Indigo keyboard converter. It consists of a PIC 16C65 for the keyboard portion of the converter and a PIC 16F84 for the mouse.

 
 
In the final design I have replaced the 16c65 and the 16F84 with the much newer and cheaper 16F628 chips. I am also driving both PICs from a single 10mhz TTL clock module instead of using individual crystal oscillators for each microcontroller. This converter has been tested to work with both the R3K and R4K models of the Indigo.
 
 
Schematic for converter
 
Here is the schematic for the converter switched over to the PIC 16F628 chips. Currently you can substitute a 16F84 for the mouse part of the converter as it doesn't use the built in UART of the 16F628, but rather implements a transmit only UART in software. If you do substitute a 16F84, you will need to pull MCLR high through a 10K resistor. I believe this design will also work with older SGI machines that use the same proprietary keyboard and mouse that the Indigo uses. The only change would be a different cable from the keyboard converter to the back of the unit.
 
(click for full size image)
 
Bill of materials
 
Here is the bill of materials for the converter. You should be able to find everything you need from Mouser Electronics or Digikey. Many of the parts can also be bought at your local Radio Shack store.
 
Part
Qty
Microchip 16F628 (may substitute a 16F84 for the mouse section)
2
Maxim MAX232CPE
1
LM7805 voltage regulator
1
10mhz TTL clock oscillator
1
6pin mini-din jack
3
10uf electrolytic capacitor
4
47uf electrolytic capacitor
2
.01uf capacitor
1
10K 1/4 watt resistor
4
1K 1/4 watt resistor (optional)
1
LED (optional)
1
18 pin socket for PICs
2
16 pin socket for MAX232 (optional)
1
PS2 style 6 conductor M to M straight through cable
1
Proto board for converter (Radio Shack 276-158 works great)
1
 
Keyboard Converter Code for PIC 16F628
 
keyboard version 1.0 (16F628)
 
Mouse Converter Code for PIC 16F628 (or 16F84)
 
mouse version 1.0 (works with either 16F84 or 16F628)
 
Configuration bits while programming the 16F628 chips:

Oscillator: EC I/O
Watchdog timer: Off
Power Up Timer: On
Code Protect: Off
Brown Out Detect: Enabled
Master Clear: Disabled
Low Voltage Program: Disabled
Data EE Protect: Disabled
 
Questions / Comments Regarding the PS2 to SGI Keyboard Converter
 
If you should discover a bug or have any questions regarding the keyboard converter, please feel free to drop me an email at rshockle@hotmail.com.