Adaptador Apple Desktop Bus (ADB) a USB

Tengo un teclado Apple antiguo que me gustaría usar, pero usa el bus ADB en lugar del bus USB más nuevo. Griffin solía producir un producto llamado iMate, que era un convertidor ADB a USB, pero desde entonces lo ha descontinuado.

Así que he decidido construir uno. No debería ser tan difícil, ¿verdad?

pinouts.ru tiene las especificaciones del autobús.

Los pinouts son bastante sencillos:

Pin   Name  Description
-----------------------------
 1    ADB   Apple Desktop Bus
 2    PSW   Power Switch
 3    +5V   Power +5V
 4    GND   Ground

¿Cómo haría para construir algo como esto? ¿Necesitaría obtener un chip FTDI para hacer la interfaz?

Respuestas (3)

¿Espera que actúe como un teclado normal o simplemente como algo que funcione con un software especial?

Si está utilizando un Arduino (digamos) con un cable FTDI, actuará como un dispositivo que habla a través de un puerto serie. Puede enviar pulsaciones de teclas interpretadas, y cualquier aplicación que escuche las verá. (Probablemente sería mejor usar ' pantalla '). Sin embargo, una aplicación no escuchará el puerto serie para la entrada del teclado en condiciones normales y es posible que se sienta decepcionado.

Si desea que finja ser un teclado USB, necesitará un chip que tenga un código de registro USB como dispositivo de teclado. (No recuerdo el término correcto; probablemente algún tipo de dispositivo de interfaz humana HID). En cuyo caso, la pregunta " Me gustaría aprender a hacer mis propios dispositivos USB " tiene cierta relevancia. A usted.

Si está usando un chip AVR estándar, puede usar el firmware V-USB para que se comunique como un dispositivo USB. Vea sus ejemplos de dispositivos de entrada humana .

Alternativamente, puede usar un AT90USBKey y ver su demostración de teclado USB [pdf] . Bumble-B suena algo similar.

sí, quiero que actúe como un teclado normal.

El Apple Desktop Bus está bien documentado en el sitio web de Apple ( http://developer.apple.com/legacy/mac/library/technotes/hw/hw_01.html). Es un bus de comunicaciones de un solo cable: los otros cables son para alimentación y tierra, y la computadora sondea los dispositivos continuamente en busca de datos después de un período de configuración inicial.

Sería relativamente sencillo hacer esto con una variedad de microcontroladores, y la mayoría de los fabricantes de microcontroladores con capacidad USB tienen al menos una nota de aplicación sobre cómo hacer un dispositivo HID de teclado (es decir, un teclado USB).

La nota de aplicación de Microchip TB056 tiene un adaptador de teclado PS2 a USB. Reemplace todo el código y la interfaz del circuito de PS2 con el código y la interfaz ADB, y debería poder lograr exactamente lo que necesita sin mucho esfuerzo.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011984es la página actual de esa nota de la aplicación, pero si el enlace deja de funcionar, puede buscar TB056 y encontrarlo.

Si desea que se comporte como un teclado USB, tendrá que tener un microcontrolador que traduzca entre el protocolo ADB y el protocolo USB , y que implemente el perfil de teclado para la clase HID.