/adbuino

Arduino-based USB keyboard and Mouse to ADB adapter. Allows USB keyboards and mice to be used with vintage Macintosh computers.

Primary LanguageC++OtherNOASSERTION

Background

This is a fork of Difegue's version of the adbuino, which was a modified version of bbraun's PS/2 to ADB arduino sketch, with some extra code added to alleviate issues with his own PS/2 keyboard. For Difegue's original write-up, please read more info here..

ADBuino picture

QuokkADB

QuokkADB picture QuokkADB is a modified version of adbuino. It is targeted to the Rabbit Hole Computing's QuokkADB device. QuokkADB is a Raspberry Pi RP2040 based device that takes in USB inputs from a keyboard and/or mouse and outputs Apple's ADB (Apple Desktop Bus). Further information can be found in the QuokkADB.md file.

Hack-y Alternative

The USB ADBuino is essentially a "value-engineered" version of a bunch of off-the-shelf components.

How to build and flash an adbuino

Note: This software is intended to be compiled in an Ubuntu Linux environment.

Any dependencies that are configured in the PlatformIO project (such as TinyUSB) will automatically be downloaded. Make sure you are connected to the Internet the first time you build this software.

  • Install Visual Studio Code
  • Install Platform IO
  • Open Visual studio Code and open the directory ./src/adbuino
  • Select the PlatformIO icon on the left
  • Execute the Build project task
  • Execute the Upload project task to flash your device

What's this repo for?

The intent of this repository is to add "USB Host" support to the original ADB design. This will allow a USB keyboard and/or mouse to be used to drive an ADB host, as well as PS/2.

The BMOW "Wombat" is a closed-source alternative to adbuino. The BMOW "Wombat" is an AWESOME project, but doesn't allow external contributors.

References

ADB Pinout

Protocol/Software Documentation

Other libraries

Development resources

Hardware Links