Teclado mecánico IBM a USB

Cursos, reparaciones, fichas, tutoriales, etc.

Moderador: Fundadores

Responder
Avatar de Usuario
mapache
Aspirante a demonio
Aspirante a demonio
Mensajes: 304
Registrado: 05 Sep 2017, 12:02

Teclado mecánico IBM a USB

Mensaje por mapache »

Herramientas necesarias

- Soldador, cable de un hilo y estaño
- Placa (o microcontrolador) soportado como Teensy++ 2.0
- Archivos del conversor Soarer
- Cable USB a Mini USB

Como programar la placa Teensy++ 2.0 con Soarer

Aunque se recomienda una placa Teensy 2.0 si es más barata, he usado una placa Teensy++ 2.0 ya que la encontré a mejor precio (unos 18 euros en eBay). Grabar el archivo de firmware no tiene mucho misterio, tan sólo tienes que asegurarte de elegir el .hex correspondiente, que para esta placa es Soarer_at2usb_v1.12_at90usb1286.hex, y grabarlo con PJRC Teensy Loader.

Como conectar los pines del teclado a la placa

Si usas otra placa encontrarás la información necesaria en la sección de pines de las placas Teensy en la web oficial.

- GND es GND
- Vcc es +5V
- Data es PD0
- Clock es PD1

kbdbabel ofrece una gran cantidad de información sobre conectores. Tendrás que identificar cada señal en el teclado que vayas a convertir para hacer las conexiones correctas.

Como remapear teclas y configurar macros desde el controlador USB

Con teclados exóticos como el IBM Model F XT o los IBM para terminales la disposición de teclas no está bien configurada por defecto. Esto se puede arreglar con las herramientas que incluye el software de Soarer, concretamente scas y scwr, cuyo manejo se explica en el archivo tools.html de la documentación.

Junto a estas herramientas he usado hid_listen para ver el código que se genera (precidido por el símbolo +) al pulsar cada tecla. Una vez anotadas las teclas que vas a remapear tienes que buscar dicho código en el archivo codes.html de la documentación de Soarer. Imagínate que quieres remapear la tecla que al pulsarla da el código 0x93 para que actúe como flecha abajo; en ese caso la línea a añadir sería LANG_4 DOWN.

Configuración de ejemplo del conversor Soarer

A continuación incluyo la configuración de un teclado de terminal IBM 1390890 de 122 teclas donde configuro el teclado numérico como en los teclados normales, arreglo un par de teclas que faltan y configuro macros para las 10 teclas de función extra localizadas en la parte izquierda, que corresponden a FAKE_08, FAKE_09, ..., FAKE_17, que he configurado para que cada uno de ellos equivalga a pulsar CTRL + ALT + número, para luego configurar estas combinaciones desde el sistema operativo.

Código: Seleccionar todo

remapblock
	LANG_4 DOWN
	ESC NUM_LOCK
	NUM_LOCK PAD_SLASH
	SCROLL_LOCK PAD_ASTERIX
	EXTRA_SYSRQ PAD_MINUS
	PAD_ASTERIX PAD_PLUS
	PAD_MINUS PAD_PLUS
	PAD_PLUS PAD_ENTER
	F13 ESC
	F23 PRINTSCREEN
	F24 SCROLL_LOCK
	EUROPE_1 BACKSLASH
endblock

macroblock
	macro FAKE_08
		PUSH_META CLEAR_META all
		MAKE LCTRL
		MAKE LALT
		PRESS 1 
		BREAK LALT
		BREAK LCTRL
		POP_ALL_META
	endmacro
	macro FAKE_09
		PUSH_META CLEAR_META all
		MAKE LCTRL
		MAKE LALT
		PRESS 2 
		BREAK LALT
		BREAK LCTRL
		POP_ALL_META
	endmacro
endblock
Como grabar la configuración al controlador del teclado

Una vez escrita la configuración necesitas compilarla y luego escribirla al microcontrolador de esta forma:

Código: Seleccionar todo

scas m122.sc m122.scb
scwr m122.scb
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Avatar de Usuario
mapache
Aspirante a demonio
Aspirante a demonio
Mensajes: 304
Registrado: 05 Sep 2017, 12:02

Re: Teclado mecánico IBM a USB

Mensaje por mapache »

Para hacer este teclado USB lo he abierto usando un destornillador hexagonal de 5.5mm (7/32"). En la placa controladora tiene un conector con distintos cables y en el mío el código era el siguiente:

- Blanco es tierra (GND)
- Negro es +5V
- Rojo es datos (Data)
- Amarillo es reloj (CLK)
conector-teclado-ibm-1390890.jpg
Llama la atención que Negro sea +5V. Otros modelos de teclados de terminal usan este mismo código de colores, aunque me he asegurado de que tierra corresponde al cable blanco usando un tester, comprobando continuidad entre un punto de tierra de la placa y el punto donde conecta este cable, y observando que +5V no está al lado de tierra. Asegúrate bien de que en el tuyo sea igual antes de conectarlo si no quieres tener una avería.

Ya sólo queda insertar la placa Teensy conectada a los puntos correspondientes de la placa del teclado y conectarle el cable USB para tener el teclado de terminal programado y listo para usar.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
Avatar de Usuario
Mikes España - Com. Valenciana
Moderador
Moderador
Mensajes: 3385
Registrado: 08 Nov 2013, 14:15
Ubicación: Benaguasil (València)
Has thanked: 2 times
Been thanked: 139 times

Re: Teclado mecánico IBM a USB

Mensaje por Mikes »

Muy interesante, probaremos a ver si puedo con el mío ;)

Enviado desde mi MI MAX mediante Tapatalk

"Mikes solo hay uno"
Mi 'Paraeta'
Responder

Volver a “Cursos y Tutoriales”