Hoy os traigo un nuevo proyecto. Se trata de un teclado mecánico 1%. Si bien no es realmente 1%, le he llamado así porque sólo tiene una tecla y además es 100% inútil.
Pero, hey! es barato, el precio de los materiales es menos de 10€.
Materiales necesarios
Para construir este teclado necesitaremos, a parte de una impresoa 3d, los siguientes materiales:
- Este microcontrolador
- Pins en ángulo recto
- Cables dupont hembra-hembra
- Una tecla Cherry MX o compatible
Además, será necesario descargar los archivos STL de mi repositorio de Github:
Montaje del teclado mecánico 1%
Con los STL ya descargados, lo primero que debemos hacer es proceder a su impresión. Al ser un archivo pequeño, lleva muy poco tiempo.
Una vez impreso, y tras comprobar que tenemos todos los materiales, procedemos al montaje:

Si bien el montaje es sencillo, os recomiendo que veáis el vídeo, ya que una imagen vale más que mil palabras. A continuación os resumo los pasos.
- Soldar los pines en ángulo recto a los pines D16 y GND del microcontrolador
- Cortar el cable dupont y soldarlo a las patillas de la tecla
- Insertar el microcontrolador en la parte inferior de la carcasa
- Insertar la tecla, con la orientación indicada en el vídeo, en la parte superior de la carcasa
- Conectar la tecla con el microcontrolador
- Cerrar la caja
Una vez lo tenemos montado podemos pasar a programarlo.
Progrmación del teclado
Para programar el teclado, utilizaremos el IDE de Arduino. El sketch, que tenéis a continuación, se basa en el uso de la libería Keyboard.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include <Keyboard.h> //Librería para envíar keypresses char myString[] = "Mas projectos interesantes en el Blog del Agente 404\nagente404.com\n\nVISITANOS!"; //String que vamos a escribir // Solo caracteres del layout ANSI-US void setup() { pinMode(16, INPUT_PULLUP); //Declaramos el pin 16 como entrada Keyboard.begin(); //Iniciamos la librería de teclado } void loop() { if (digitalRead(16) == LOW) { //Si pulsamos la tecla for(int i = 0; i < sizeof(myString); i++){ //Recorremos el string Keyboard.print(myString[i]); // Imprimimos el caracter delay(25); //Esperamos 25ms para que parezca que se escribe } } delay(100); //Añadimos un delay para evitar pulsaciones duplicadas } |
Lo que hace este sketch es escribir una frase almacenada en el array de caracterese myString, al presionar la tecla.
Podéis configurar el teclado para lo que queráis, os lo dejo a vosotros. Las posibilidades son infinitas, desde combinaciones de teclas, hasta copiar y pegar…
Lo último que nos quedaría por hacer el subir el sketch al microcontrolador. Para ello, debemos seleccionar la placa Arduino Leonardo en el IDE y el puerto COM correspondiente.
Una vez hecho, subimos el sketch y ya lo tendríamos listo.
Sencillo ¿verdad? Espero que os animéis ha hacerlo y si es así subáis el resultado a las redes y me etiqueteis.