The Apple AEK Keyboard [Saratoga]
If the IBM Model M is the god of PC Keyboards, then the Apple Extended Keyboard, otherwise known just as the AEK, or Saratoga, is the Long-Lasting equivalent in the Apple world. These are very tough and durable, but they use an old standard that is no longer supported on modern Apple computers, but there is hope! I convert these old behemoths into modern USB keyboards, just like I do with the Model M.
I took one of these great old Keyboards, and in addition to doing a regular conversion, I added something a little extra….
The amazing little Linux mini-computer that is the Raspberry Pi, is so fun, and makes a great platform for all kinds of things. They have been built into Keyboards before, I have put them into Terminal Model Ms, and a few others as well.
Remember the old microcomputers that were housed inside the same case as the keyboard was built on? Like the Atari computers, the old Commodores, and early Amigas….
I set out to re-create that feeling.
My Conversion Process
Remove ADB Mounts
I used a small chisel to remove the old pieces, and to clear the whole area for the Raspberry Pi and other devices I intended to put inside the keyboard. There is really a lot of room for this, putting the Raspberry Pi inside was not a stretch in the least, it was much easier than the cramped quarters inside a Model M.
Raspberry Pi Mounted
Once I cleared away the junk that was in the way, I could measure the openings needed for the RPi. I cut the headphone port, HDMI, and Power out of the back, and Ethernet and ONLY ONE USB port on the left side. I only did one because I wanted to use the opening on the other side of the keyboard where the other ADB port used to be for one USB, and the other two needed to be internal, so I de-soldered that whole riser connector, and removed it.
Raspberry Pi Mounted
I bought a TP-LINK WN722N, USB adaptor because I wanted something with a pretty high gain, but that didn’t draw too much from the Rpi, but also had an external antenna. I will eventually use an extension cable to route the antenna connector to the outside of the case, so I can put the antenna in a better position, but for now I will just leave it internal. I removed the case for the TP Link, and secured the PCB to the bottom of the keyboard with screws.
Connection To USB On Right Side
I pulled the pins out of the double USB riser on the Pi, and then ran a usb extension cable over to the right hand side of the keyboard, (where the right side ADB connector was) and mounted the receptacle there. I connected the extension cable to the 4 USB pins that I pulled out of the top USB port on the Pi. This gives me one external USB port on each side of the keyboard, and leaves the other 2 as internal ports.
First Power-On Test.
Here I am testing to make sure I didn’t bugger something up in the process of mounting, cutting, soldering and fiddling with it. I am running a 64gb Micro SD card in the Pi, and this is the first boot since cutting the connectors off and fitting it into its new case.
It worked just as I hoped, so now on to the conversion process for the keyboard itself.
Keyboard ADB to USB Conversion
The First Step is to remove the small PCBs that have the ADB connectors, and are connected to the main keyboard PCB by small ribbon cables. Once they are removed, I traced out the VCC, GROUND, and DATA pins, those are the only 3 pins you will need.
I am using HASU’s ADB to USB converter on an Arduino Pro Micro Clone.
Hasu's ADB To USB Converter
The little dev board here is an Arduino Pro Micro Clone, which has the Atmega 32u4 chip, this conversion will work with any 32u4 based dev board. I used the Hasu Converter, thank you Hasu! 🙂 which is a great little program that lets me interface these keyboards to USB, which will then let me connect it to one of the internal USB ports on the Rpi.
VCC, and Ground go to their respective pins, and Data goes to PD0 on a teensy and PIN3 on this Pro Micro clone.
1KΩ Pullup Resistor
A 1KΩ Pullup Resistor is needed for the converter, and so I put it on the bottom of the keyboard PCB.
Once I secured the Pro-Micro to the top of the keyboard plate, I then put a micro USB connector on the cable I had soldered to the Rpi, and connected that to the Pro-Micro.
Time to put it all back together!
All Buttoned Up.I have a small wireless mouse connected to one of the USB ports on the side, and am booted up to X, but most of the time, I will be in terminal on this system, those nice smooth Salmon ALPS switches feel really really nice, and I can’t wait to get to use this computer. I remember spending so many hundreds and hundreds of hours in-front of my amber monitor with my ATARI 1200XL computer, learning BASIC…. This gives me much the same feeling when I am in terminal. Low powered computers still can do wonderful things.
Further ThoughtsIdeas for the future, and other plans.
The power LED on the little Pro-Micro shows through under the F1 key, which makes a really nice little power light, so I can see that it is powered up just by glancing at it even when the display is off. I leave this computer on all the time, and spend most of my time in Emacs or Mutt, and it is an amazing feeling to be using a computer sans a GUI again. Sure I can start X when I want, but I love the command line.
I have a few ideas of what more I would like to do with this conversion:
- I think that I will take the latching switch out of the Caps-lock key and swap it for the power key, and then tie that switch into the power for the Rpi, so I can turn it on and off at will, instead of just pulling power like it is right now.
- Another thought would be to add another USB connection and a switch so that I can change the keyboard to ‘USB Mode’ and just use it as a regular keyboard when I don’t need or want the keyboard for the Pi, since I often just SSH into it from my Mac anyway.
- Another thought would be to add an internal USB hub so that I can add a few 32gb, or 6gb Usb dumb-drives, and then setup an automatic backup and fileserver system, so that I can use this also as a data archive.
- I will be moving the internal WiFi antenna to an external one at a later date, but for now I am happy with it where it is.
I will update this page when I make changes, if you have any comments, or ideas for this conversion, or if you want one of your own, drop me an Email anytime: email@example.com