qmk_firmware/es/newbs_building_firmware.md
2020-11-10 15:02:44 +00:00

4.2 KiB

Construyendo tu primer firmware

Ahora que has configurado tu entorno de construcción estas listo para empezar a construir firmwares personalizados. Para esta sección de la guía alternaremos entre 3 programas - tu gestor de ficheros, tu editor de texto , y tu ventana de terminal. Manten los 3 abiertos hasta que hayas acabado y estés contento con el firmware de tu teclado.

Si has cerrado y reabierto la ventana de tu terminal después de seguir el primero paso de esta guía, no olvides hacer cd qmk_firmware para que tu terminal esté en el directorio correcto.

Navega a tu carpeta de keymaps

Comienza navegando a la carpeta keymaps correspondiente a tu teclado.

?> Si estás en macOS o Windows hay comandos que puedes utilizar fácilmente para abrir la carpeta keymaps.

?> macOS:

abre keyboards/<keyboard_folder>/keymaps

?> Windows:

inicia .\\keyboards\\<keyboard_folder>\\keymaps

Crea una copia del keymap default

Una vez que tengas la carpeta keymaps abierta querrás crear una copia de la carpeta default. Recomendamos encarecidamente que nombres la carpeta igual que tu nombre de usuario de GitHub, pero puedes utilizar el nombre que quieras siempre que contenga sólo letras en minúscula, números y el caracter de guión bajo.

Para automatizar el proceso, también tienes la opción de ejecutar el script new_keymap.sh.

Navega a la carpeta qmk_firmware/util e introduce lo siguiente:

./new_keymap.sh <keyboard path> <username>

Por ejemplo, para un usuario llamado John, intentando hacer un keymap nuevo para el 1up60hse, tendría que teclear

./new_keymap.sh 1upkeyboards/1up60hse john

Abre keymap.c con tu editor de texto favorito

Abre tu keymap.c. Dentro de este fichero encontrarás la estructura que controla cómo se comporta tu teclado. En lo alto de keymap.c puede haber distintos defines y enums que hacen el keymap más fácil de leer. Continuando por abajo encontrarás una línea con este aspecto:

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

Esta línea indica el comienzo del listado de Capas. Debajo encontrarás líneas que contienen o bien LAYOUT o KEYMAP, y estas líneas indican el comienzo de una capa. Debajo de esa línea está la lista de teclas que pertenecen a esa capa concreta.

!> Cuando estés editando tu fichero de keymap ten cuidado con no añadir ni eliminar ninguna coma. Si lo haces el firmware dejará de compilar y puede no ser fácil averiguar dónde está la coma faltante o sobrante.

Personaliza el Layout a tu gusto

Cómo completar esta paso depende enteramente de ti. Haz ese pequeño cambio que querías o rehaz completamente todo. Puedes eliminar capas si no las necesitas todas, o añadir nuevas hasta un total de 32. Comprueba la siguiente documentación para descubrir qué es lo que puedes definir aquí:

?> Mientras estás descubriendo cómo funcionan los keymaps, haz pequeños cambios. Cambios mayores pueden hacer difícil la depuración de problemas que puedan aparecer.

Construye tu firmware

Cuando los cambios a tu keymap están completos necesitarás construir el firmware. Para hacerlo vuelve a la ventana de tu terminal y ejecuta el siguiente comando:

make <my_keyboard>:<my_keymap>

Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un planck rev5, utilizarás el siguiente comando:

make planck/rev5:xyverz

Mientras compila, recibirás un montón de información de salida en la pantalla informándote de qué ficheros están siendo compilados. Debería acabar con una información similar a esta:

Linking: .build/planck_rev5_xyverz.elf                                                              [OK]
Creating load file for flashing: .build/planck_rev5_xyverz.hex                                      [OK]
Copying planck_rev5_xyverz.hex to qmk_firmware folder                                               [OK]
Checking file size of planck_rev5_xyverz.hex                                                        [OK]
 * File size is fine - 18392/28672

Flashea tu firmware

Continua con Flasheando el firmware para aprender cómo escribir tu firmware nuevo en tu teclado.