Published: 2024-09-12
Compraste tu primer teclado mecánico dividido, un Lily58 (Pro o normal), soldaste todas las partes y estas listo para usarlo, pero al conectarlo no funciona.
Necesitas flashear el firmware del teclado, y en este tutorial te muestro cómo se hace con QMK.
Este tutorial asume que ya soldaste todas las partes del Lily y estas listo para flashear. Si aun no soldaste, hay un monton de tutoriales en YouTube de como hacerlo.
Si compraste un teclado dividido asumo que tienes estos conocimientos.
Descarga QMK e instalalo desde su página para Windows. Obtendras un programa nuevo llamado “QMK MSYS”, al abrirlo se abrirá una consola.

En esta consola vamos a trabajar.
Instala qmk utilizando el gestor de paquetes de tu distro.
En Arch el comando es sudo pacman -S qmk.
Si no puedes encontrar qmk en tu distro, o no sabes su nombre, puedes
instalar mediante pip en la siguiente sección.
Si ya instalaste qmk saltate la sig. seccion: QMK setup
Prerrequisitos: Antes de instalar con pip debes instalar
dependencias en tu distro:
sudo apt install -y git python3-pipsudo yum -y install git python3-pipsudo pacman --needed --noconfirm -S git python-pip libffisudo xbps-install -y git python3-pipsudo eopkg -y install git python3sudo equo install dev-vcs/git dev-python/pipsudo emerge dev-vcs/git dev-python/pipUna vez instaladas las dependencias, instala qmk mediante pip con el comando:
python3 -m pip install --user qmk
Si por alguna razon esto no funciona, puedes probar instalar como root. Considera que esto puede romper dependencias de python.
A partir de ahora el tutorial es el mismo para windows y linux.
Primero ejecuta
qmk setup

Te debería salir un mensaje pidiendo clonar qmk/qmk_firmware.
Presiona n para cancelar. Vamos a clonar qmk manualmente
para que se demore menos.
Ejecuta el comando:
git clone --recurse-submodules --depth 1 https://github.com/qmk/qmk_firmware.git
Esto clonará qmk y sus submodulos. Esto demorará un par de minutos.
Luego de clonar qmk ejecuta de nuevo qmk setup

Hay 2 opciones:
qmk setupUna vez que no haya ningún error, ejecuta
qmk compile -kb lily58 -km default
Si todo está ok estas listo para flashear el firmware a tu teclado.

Estos pasos se repiten por cada lado del teclado:
Conecta una mitad del teclado al computador. No conectes las 2 mitades mediante el cable auxiliar.
Coloca el teclado en modo flash. Para esto presiona 2 veces el boton reset.

El microcontrolador parpeará una luz roja varias veces. Ahora esta listo para flashear el firmware.
Ejecuta el comando para flashear:
qmk flash -kb lily58 -km default
Una vez que hayas flasheado las 2 mitades correctamente estas listo para utilizar tu teclado! Conecta primero las 2 mitades mediante cable auxiliar, y despues conecta el lado izquierdo al computador.
Cada vez que conectes o desconectes las 2 mitades por cable auxiliar, el teclado no debe estar conectado a la computadora. Caso contrario puede causar problemas con los microcontroladores.
Puedes usar el teclado conectado a la izquierda sin problemas, pero si conectas el teclado al lado derecho verás que no funciona correctamente. Eso lo arreglamos a continuación.
Para saber las teclas y el layout del teclado continua leyendo.
La configuración del layout se hace mediante archivos.
En Windows, estos archivos están en C:\Users\<tu_usuario>\qmk_firmware\keyboards\lily58\keymaps\.
En Linux están en ~/qmk_firmware/keyboards/lily58/keymas/.
Al entrar a esta carpeta verás otras carpetas:

Cada carpeta es un layout independiente. Ahora vamos a crear nuestro layout.
Copia la carpeta default y colocale un nombre sencillo. Yo llamaré a mi layout Araozu.

Utilizaremos este nombre para flashear nuestro teclado.
Por ejemplo, para flashear my layout ahora ejecutaré qmk flash -kb lily58 -km Araozu
Dentro de la carpeta encontrarás 3 archivos:
config.h - configuración general del tecladokeymap.c - el layout del tecladorules.mk - configuración específica del tecladoTe recomiendo crear un repositorio de Git en tu layout y crear commits para cada cambio. Así puedes volver fácilmente a un estado correcto.
Por defecto el lado izquierdo es el maestro y el derecho el esclavo.
Para invertirlo abre el archivo config.h y agrega:
#pragma once
#define QUICK_TAP_TERM 0
#define TAPPING_TERM 100
#define MASTER_RIGHT // [!code focus]
Guarda el archivo y vuelve a flashear ambas mitades. Recuerda utilizar el nombre de la carpeta que creaste:
qmk flash -kb lily58 -km <nombre-de-tu-carpeta>
Si este es tu primer teclado dividido, es un buen momento para aprender touch typing/mecanografía.
Los teclados divididos son perfectos para hacer mecanografía.
Las siguientes secciones asumen que sabes de programación.
El layout del teclado (disposición en español) se encuentra en el archivo
keymap.c. Abrelo y verás el layout QWERTY por defecto:

Puedes utilizar el layout QWERTY, pero ya que compraste un teclado programable, también puedes cambiar la posición de las teclas a tu gusto, utilizar layouts diferentes, o crear tu propio layout.
Aquí hay una lista de layouts alternativos, mejores que QWERTY. Obviamente muchos de estos necesitan adaptarse a un teclado dividido:






Cada layout tiene una filosofía detrás que puedes leer en sus respectivas páginas.
O puedes crear tu propio layout. Por ejemplo, yo cree mi layout basado en Dvorak pero con los algoritmos de Halmak:

Puedes hacer lo que quieras, el mundo es tu ostra (recuerda agregar tus cambios a Git).
El layout se modifica en el archivo keymap.c. Abrelo, y allí haz tus cambios. Cuando termines
guarda el archivo e intenta flashear.
Si al flashear obtienes errores, muy probablemente hay un error en el código de keymap.c.
La lista de todas las teclas que puedes utilizar está en la documentación de QMK
QMK es un software muy poderoso, puedes hacer casi cualquier cosa:
Un buen inicio es home row mods.
Probablemente explique más de estos conceptos en el futuro.
Imágen del teclado Dvorak español De Selertos - Obra derivada de: https://upload.wikimedia.org/wikipedia/commons/a/a9/Teclado_Dvorak_Espa%C3%B1ol.png, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=47308166.