
Aunque el título habla del harlequin 128, este tema trata sobre todo de la creación de un teclado estilo «Gamer» con teclas mecánicas pero esta vez con perfil bajo (considerablemente mas bajo que el de mi anterior teclado. Además en esta ocasión la iluminación de las teclas no será fija, sino que será programable pudiendo elegir diferentes efectos o colores ya que para ello uso leds direccionables RGB de 2×2 mm. Este teclado es completamente funcional y compatible con un Spectrum original.
Con esto se pretende demostrar que podemos realizar un Spectrum desde cero ya que disponemos de kits harlequin, cajas que podemos comprar, imprimir en 3D o reciclar la de un spectrum original; y ya por fin podemos hacernos nuestros propios teclados.
Consideraciones previas:
- El fotolito , gerbers, programa etc se mostrará al final del artículo en la zona de descargas.
- Para realizar este montaje no usamos arduino, sino nuestro propio PCB y además por economía he prescindido del cuarzo, lo que significa que tenemos que aprender a programar el micro primero con cristal en placa de pruebas y luego solo con el oscilador interno. De esto se deduce que el micro lo tenemos que tener programado antes de soldarlo al PCB; además para programarlo tuve que adquirir un adaptador QFP32 a DIP32. Ver instrucciones de como programarlo aquí.
- Además en esta ocasión usamos un micro ATMEGA328PB-AU en encapsulado TQFP32 de 7×7 mm. Tratando de quemar el bootloader desde el IDE de arduino, no lo conseguí. Tuve que recurrir a una librería externa denominada minicore con la que conseguí que funcionase.
Impresión 3D.
Aunque opcional, es la opción elegida por mi. La razón es que manteniendo la distribución original del teclado de un gomas con teclas compradas tipo «kali chocolate» queda mas espacio entre ellas de lo que me gustaría y por ello habría que realizar una serigrafía más pequeña. Por tanto tenemos que hacer un total de 40 «Taps» para las teclas; 38 de tamaño normal y las 2 restantes serían un poco mas grandes y de tamaños diferentes para «CAP SHIFT y SPACE». Recomiendo imprimir en ABS por ser mas resistente. Yo he probado con PLA blanco y tambíen con PLA transparente.

El circuito.
Primero veamos el esquema:
El esquema es bastante simple.
- Una matriz de 40 teclas (pulsadores) que emulan la matriz de la membrana original del spectrum de 8 filas por 5 columnas.
- Asociados a estos pulsadores añadimos un led WS2812-2020 GRB de 2×2 mm programable a cada tecla.
- Y la última parte es el microcontrolador con sus 3 pulsadores que son los que nos permiten cambiar el color de los LEDs o los efectos visibles.
Elementos de montaje:
02_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Serigrafía cortada y teclas impresas. Se pueden comprar hechas pero de unas dimensiones ligeramente inferiores. Habría que hacer la misma reducción en la serigrafía.
05_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista completa de los componentes implicados en el teclado.
06_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista en detalle de los componentes implicados en el teclado. Excepto los pulsadores el resto son SMD.
Ahora veamos el proceso de montaje:
01_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista previa de la serigrafía antes de cortar. Impresa en papel adhesivo normal. Recomendable mandar imprimir y troquelar en imprenta, además nos pueden añadir una protección transparente por encima.
03_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Teclas blancas impresas, con la serigrafía pegada.
07_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista de las teclas de perfil bajo y las capuchas serigrafiadas.
08_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
PCB con todos los elementos soldados. Hecho con paciencia, pulso firme y una buena dosis de tila, jejeje. Debajo del conector de programación (opcional) están marcadas R6 y R7 (de 0 ohmios) en mi caso he soldado con estaño los PADs. Se hizo para facilitar enrutado de pistas.
09_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Detalles de la zona del micro. Se suelda un cable desde el pin nº2 (RXI) al conector de programación por un problema de enrutado. En los fotolitos y gerbers se ha corregido este error.
10_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Detalles de la zona del conector de programación micro donde se el cable desde el pin nº2 (RXI) del micro. En los fotolitos y gerbers se ha corregido este error.
12_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista de las teclas ya montadas, excepto una porque estorba con el conector de programación.
11_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista del PCB funcionando y el adaptador USB-TTL para programación. Faltan las teclas.
13_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Tecla CAPS SHIFT montada,, se observa que al insertar el adaptador USB la tecla queda pulsada.
14_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Tecla CAPS SHIFT montada,, se observa que al insertar el adaptador USB la tecla queda pulsada.
15_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Se recorta la tecla CAPS SHIFT para que no roce el conector de programación.
16_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista del teclado a falta de preparar los cables y los PCBs de adaptación a conectores de membrana.
24_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Sueldo los cables al PCB adaptador, poniendo especial cuidado en que el estaño y el cable solo ocupe la mitad superior del PAD, para que el resto sea lo que entre en los conectores de cinta.
25_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Todos los cables del teclado soldados.
Ahora integramos todo con nuestra placa harlequin y una caja translucida:
21_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Placa madre Superfo Harlequin 128 ISSUE 4, completamente montada. La adquirí así. Se observa que viene con los conectores de membrana clásicos del Spectrum además con tiras de pines hembra.
22_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Se observa que el PCB membrana filas entra en el conector. Pero queda muy perpendicular y no dejará cerrar la caja.
23_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Al igual que con las filas, Se observa que el PCB entra en el conector. Pero queda muy perpendicular y no dejará cerrar la caja.
44_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Para que los adaptadores nos permitan cerrar ya que no son flexibles como lo sería una membrana real, extraigo las 2 tiras de pines destinadas a las teclas y extraigo un poco los conectores de cinta para poder doblarlos ligeramente.
45_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Para que los adaptadores nos permitan cerrar ya que no son flexibles como lo sería una membrana real, extraigo las 2 tiras de pines destinadas a las teclas y extraigo un poco los conectores de cinta para poder doblarlos ligeramente.
46_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Se observa cómo los he inclinado. Así si podré insertar los adaptadores y cerrar la caja.
47_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Se observa cómo los he inclinado. Así si podré insertar los adaptadores y cerrar la caja.
28_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Entre el conector de alimentación y el regulador uso la tira de 3 pines hembra para alimentar los LEDs. En cualquier otro harlequin o Spectrum elegiremos cualquier punto próximo al regulador del que podamos sacar 5v, como por ejemplo el condensador C34.
30_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Todos lo cables conectados para probar.
31_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Detalle de la caja traslúcida usada. Se puede usar cualquier otra, original o impresa en 3D.
40_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Muesca realizada porque esta placa harlequin tiene interface de Joystick que no trae le Spectrum estándar.
41_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Orificio realizado para poder pasar el pulsador de reset que trae este harlequin. Vista interior.
42_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Orificio realizado para poder pasar el pulsador de reset que trae este harlequin. Vista exterior.
32_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Para atornillar el PCB a la tapa necesitamos extender los orificios de los tetones hasta el final con una broca fina que no estropee las actuales roscas.
38_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Detalle del paso de los cables y PCBs adaptadores por el mismo lugar por el que pasaría una membrana real en un Spectrum.
39_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista inferior de la tapa con el teclado fijado y los cables pasados.
48_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Vista inferior del ordenador, se observa el PCB a través de la caja traslúcida.
51_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Equipo completamente montado con teclas transparentes hechas con impresora 3D.
53_Teclado_ZX48_harlequin_pcb_pro_leds_RGB_taps_chocolate_v1.1
Teclado montado sobre caja transparente.
Funcionamiento:
- Como teclado funciona exactamente igual que el del Spectrum estándar solo que con teclas mecánicas.
- Al conectar el Spectrum he programado el microcontrolador para que las luces no se enciendan por defecto.
- Pulsando S1 recorremos una serie de colores y efectos y también apagamos los LEDs entre efectos.
- Cuando se visualiza el efecto de leds que se mueven podemos pulsar S2 o S3 para aumentar o disminuir el número de LEDs afectados.
- Pulsando S2 y S3 simultáneamente se entra en modo Demo, en el cual se recorren todos los efectos indefinidamente.
Veamos un vídeo de funcionamiento:
Posibles mejoras:
- Que al igual que en un Spectrum + tuviese teclas desdobladas como los cursores, edit, delete etc.. Esto requiere mas electrónica. De todos modos el tamaño físico de los mecanismos de las teclas no nos permitiran ganar mucho espacio juntando las teclas. En un Spectrum original habría que modificar el habitáculo de la membrana cortando todos los salientes que evitan que la membrana y las teclas de goma de desplacen lateralmente. También habría que reducir el tamaño de las tapas de las teclas y de su serigrafía.
- Mediante la combinación de determinadas teclas poder hacer un RESET o una NMI para activar por ejemplo el Divide.
Si alguien se anima a llevar a cabo estas mejoras que nos lo comente.
Lista de materiales:
Kit harlequin montado o placa de Spectrum original funcional.
Caja de Spectrum comprada, original o impresa.
PCB del teclado, hecho por uno mismo o mandado fabricar.
PCB del adaptador de cable a conector de cinta (donde se conecta la membrana original del Spectrum), hecho por uno mismo, comprado o mandado fabricar.
Adaptador TTL-USB (opcional para reprogramar después de haber soldado microcontrolador)
40 LEDs direccionables SMD 2020 WS2812C
40 Kailh-Interruptor de Teclado mecánico de bajo perfil RGB SMD.
40 Tapas para las teclas anteriores, compradas o impresas.
Serigrafía bien impresa por uno mismo o encargado a una imprenta.
1 ATMEGA328PB-AU TQFP32 con bootloader minicore.
3 Pulsadores 6x6x12 mm para PCB
Cable paralelo de al menos 15 hilos. Se puede usar una faja de cables de discos duros IDE , SCSI o de disqueteras.
Tira de pines hembra.(6 pines) Opcional sirve para reprogramar microcontrolador.
Tira de pines macho acodado 3 pines (Opcional en mi caso es para alimentación desde harlequin 128K)
1 resistencias de 10K SMD 0805. (R1)
4 resistencias de 470 ohmios SMD 0805. (R2, R3, R4 y R5)
2 Resistencias de 0 ohms SMD 0805, o mejor unir directamente los PADs con estaño. (R6 y R7).
1 Condensador tantalio 220uF 10V SMD.
1 condensador SMD 0805 de 10 nF. (C2)
1 condensador SMD 0805 de 100 nF. (C1)
Descargas:
- Fotolito superior.
- Fotolito inferior.
- Código fuente microcontrolador. Envía un comentario en Español pidíendolo.
- Caja Spectrum para imprimir.
- Tapas teclas para imprimir.
- Serigrafía para imprimir.
- Gerbers PCB adaptador cables a conector membrana. (Fabricar a 0,5mm de espesor)
- Gerbers PCB teclado. Envía un comentario en Español pidíendolo.
Espero os haya gustado este tema. Podeís ver mas temas usando el calendario de la derecha o usando las categorias del menú.
Un comentario favorable me animaría a seguir manteniendo y alimentando el blog.
Un saludo a todos y gracías.
0 comentarios