De VIA a QMK Puro: Cuándo Dar el Salto Como Usuario Avanzado
Migrar de VIA a QMK puro es el paso natural para quienes ya le sacaron el jugo a la personalización básica de su teclado y ahora necesitan funciones que la interfaz gráfica de VIA directamente no contempla. Aquí explico cuándo conviene dar ese salto, qué ventajas y desventajas trae, y cómo hacerlo sin perder la configuración que ya tenías armada.
¿Qué diferencia a VIA de QMK puro?
VIA es una capa visual montada sobre QMK, pensada para que cualquiera pueda remapear teclas, crear capas y ajustar el RGB sin escribir una sola línea de código. Es rápido, cómodo, y le alcanza al 90% de los usuarios sin que tengan que preocuparse por nada más.
QMK “puro” es otra cosa: escribir y compilar tu propio keymap.c, usar el QMK CLI y tener control total sobre cada rincón del firmware, desde macros complejas hasta funciones personalizadas en C.
La diferencia de fondo es esta: VIA te da flexibilidad dentro de límites predefinidos. QMK puro elimina esos límites por completo.
Señales de que es momento de cambiar
No todo el mundo necesita QMK puro, ni falta que hace. Estas son las señales más claras de que ya te quedó chico lo que VIA puede ofrecer:
- Necesitas macros condicionales: por ejemplo, una tecla que haga algo distinto según cuánto tiempo la mantengas apretada (tap-hold avanzado).
- Quieres funciones personalizadas en C: combos dinámicos, lógica de capas basada en estado, integración con algún software externo.
- Tu teclado no tiene soporte VIA oficial: muchos PCBs de nicho o proyectos DIY solo traen soporte QMK estándar, punto.
- Buscas optimizar el tamaño del firmware: VIA añade overhead que a veces no entra en microcontroladores con poca memoria (pienso en algunos AVR de 32KB, por ejemplo).
- Quieres aportar a la comunidad: subir tu keymap al repositorio oficial de QMK exige trabajar directo con el código fuente.
Si ninguna de estas te suena familiar, quédate tranquilo: VIA sigue siendo tu mejor opción por ahora.
Ventajas reales de QMK puro
Control granular total
Podés implementar lógica propia con process_record_user() para armar comportamientos únicos: una tecla que mande un emoji distinto según el día de la semana, o una capa que se active solo bajo ciertas condiciones que vos definas.
Mejor rendimiento y memoria
Al sacar de encima el protocolo de comunicación con VIA, el firmware pesa menos. Esto importa, y mucho, en microcontroladores justos de espacio, como ciertos AVR antiguos que todavía andan dando vueltas en teclados de hace varios años.
Acceso a funciones experimentales
Bastantes características nuevas de QMK (ciertos modos de RGB avanzados, algoritmos de debounce específicos) llegan primero al código fuente. A VIA tardan en integrarse, y a veces ni llegan.
Desventajas que debes considerar
- Curva de aprendizaje: hay que entender C básico, la estructura de carpetas de QMK y cómo compilar con QMK MSYS o QMK CLI.
- Sin interfaz visual en tiempo real: cada cambio implica recompilar y volver a flashear el teclado. Nada de ver el resultado al instante.
- Mantenimiento manual: la responsabilidad de mantener tu keymap al día (si cambiás de PCB o actualizás QMK) recae enteramente en vos.
Cómo hacer la transición sin perder tu configuración
- Exporta tu configuración actual de VIA desde la app, en formato JSON, como respaldo de referencia por si algo sale mal.
- Clona el repositorio oficial de QMK y ubica la carpeta de tu teclado dentro de
keyboards/. - Crea tu propio keymap copiando el
defaulto el deviacomo punto de partida, y ponle tu nombre (por ejemplo,tuusuario). - Recrea tu mapeo de teclas a mano en el archivo
keymap.c, usando los códigos de QMK (KC_A,LT(),MT(), etc.). - Compila con QMK CLI:
qmk compile -kb tu_teclado -km tuusuario. - Flashea el firmware y probá cada capa antes de meterle más cambios encima.
¿Puedes tener lo mejor de ambos mundos?
Sí, y de hecho bastantes usuarios avanzados lo hacen así: mantienen VIA para los ajustes del día a día (el RGB, típicamente) mientras usan QMK puro para funciones específicas que no cambian seguido, como combos o macros fijas. Se consigue dejando el soporte VIA habilitado dentro del keymap personalizado, combinando los dos enfoques en el mismo firmware.
Conclusión
Pasar de VIA a QMK puro tiene sentido cuando tus necesidades se te escapan de lo que una interfaz gráfica puede cubrir: macros complejas, funciones en C, soporte para hardware sin compatibilidad VIA. Si recién estás arrancando, o solo necesitas remapear teclas y jugar con el RGB, quédate con VIA sin culpa. Pero si ya programás, querés control total y no te espanta la idea de recompilar firmware una y otra vez, dar el salto a QMK puro te abre un terreno de personalización que realmente vale la pena explorar.