aboutsummaryrefslogtreecommitdiff
path: root/docs/es
diff options
context:
space:
mode:
Diffstat (limited to 'docs/es')
-rw-r--r--docs/es/README.md32
-rw-r--r--docs/es/_summary.md121
-rw-r--r--docs/es/becoming_a_qmk_collaborator.md9
-rw-r--r--docs/es/newbs.md23
-rw-r--r--docs/es/newbs_best_practices.md159
-rw-r--r--docs/es/newbs_building_firmware.md81
-rw-r--r--docs/es/newbs_building_firmware_configurator.md105
-rw-r--r--docs/es/newbs_flashing.md351
-rw-r--r--docs/es/newbs_getting_started.md103
-rw-r--r--docs/es/newbs_learn_more_resources.md15
-rw-r--r--docs/es/newbs_testing_debugging.md99
11 files changed, 1098 insertions, 0 deletions
diff --git a/docs/es/README.md b/docs/es/README.md
new file mode 100644
index 000000000..73e7a7097
--- /dev/null
+++ b/docs/es/README.md
@@ -0,0 +1,32 @@
1# Firmware Quantum Mechanical Keyboard
2
3[![Versión actual](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags)
4[![Estado de Build](https://travis-ci.org/qmk/qmk_firmware.svg?branch=master)](https://travis-ci.org/qmk/qmk_firmware)
5[![Discord](https://img.shields.io/discord/440868230475677696.svg)](https://discord.gg/Uq7gcHh)
6[![Estado de la documentación](https://img.shields.io/badge/docs-ready-orange.svg)](https://docs.qmk.fm)
7[![Contribuyentes en GitHub](https://img.shields.io/github/contributors/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/pulse/monthly)
8[![Forks en GitHub](https://img.shields.io/github/forks/qmk/qmk_firmware.svg?style=social&label=Fork)](https://github.com/qmk/qmk_firmware/)
9
10## ¿Qué es el firmware QMK?
11
12QMK (*Quantum Mechanical Keyboard*) es una comunidad open source que mantiene el firmware QMK, QMK Toolbox, qmk.fm, y estos documentos. El firmware QMK es un firmware para teclados basado en [tmk\_keyboard](http://github.com/tmk/tmk_keyboard) con algunas características útiles para controladores Atmel AVR, y más específicamente, la [línea de productos OLKB](http://olkb.com), el teclado [ErgoDox EZ](http://www.ergodox-ez.com), y la [línea de productos Clueboard](http://clueboard.co/). También ha sido portado a chips ARM chips usando ChibiOS. Lo puedes utilizar para manejar tu propio teclado ya sea cableado a mano o basado en una PCB personalizada.
13
14## Cómo conseguirlo
15
16Si estás pensando en contribuir con un keymap, teclado, or característica a QMK, la manera más sencilla es hacer un [fork del repositorio en Github](https://github.com/qmk/qmk_firmware#fork-destination-box), y clonar tu repositorio localmente para hacer los cambios, subirlos, y abir un [Pull Request](https://github.com/qmk/qmk_firmware/pulls) desde tu fork.
17
18De cualquier manera, también puedes descargarlo directamente en formatos ([zip](https://github.com/qmk/qmk_firmware/zipball/master), [tar](https://github.com/qmk/qmk_firmware/tarball/master)), o clonarlo via git (`git@github.com:qmk/qmk_firmware.git`), o https (`https://github.com/qmk/qmk_firmware.git`).
19
20## Cómo compilar
21
22Antes de poder compilar, necesitarás [instalar un entorno](getting_started_build_tools.md) para el desarrollo de AVR y/o ARM. Una vez hayas completado este paso, usarás el comando `make` para compilar un teclado y keymap con la siguiente notación:
23
24 make planck/rev4:default
25
26Este ejemplo compilaría la revisión `rev4` del teclado `planck` con el keymap `default`. No todos los teclados tienen revisiones (también llamados subproyectos o carpetas), en ese caso, se puede omitir:
27
28 make preonic:default
29
30## Cómo personalizar
31
32QMK tiene montones de [características](features.md) para explorar, y una buena cantidad de [documentación de referencia](http://docs.qmk.fm) en la que sumergirse. Se pueden sacar provecho de la mayoría de las características modificando tu [keymap](keymap.md), y cambiando los [keycodes](keycodes.md).
diff --git a/docs/es/_summary.md b/docs/es/_summary.md
new file mode 100644
index 000000000..684d7ab6c
--- /dev/null
+++ b/docs/es/_summary.md
@@ -0,0 +1,121 @@
1* [Guía completa para novatos](newbs.md)
2 * [Empezando](newbs_getting_started.md)
3 * [Construyendo tu primer firmare](newbs_building_firmware.md)
4 * [Flasheando el firmware](newbs_flashing.md)
5 * [Testeando y depurando ](newbs_testing_debugging.md)
6 * [Mejores práticas](newbs_best_practices.md)
7 * [Recursos de aprendizaje](newbs_learn_more_resources.md)
8
9* [QMK Basics](README.md)
10 * [Introducción a QMK](getting_started_introduction.md)
11 * [QMK CLI](cli.md)
12 * [Configuración de QMK CLI](cli_configuration.md)
13 * [Contribuyendo a QMK](contributing.md)
14 * [Cómo usar Github](getting_started_github.md)
15 * [Obtener ayuda](getting_started_getting_help.md)
16
17* [Cambios incompatibles](breaking_changes.md)
18 * [30 Ago 2019](ChangeLog/20190830.md)
19
20* [Preguntas frecuentes](faq.md)
21 * [General](faq_general.md)
22 * [Construir/Compilar QMK](faq_build.md)
23 * [Depurando/Encontrando problemas en QMK](faq_debug.md)
24 * [Keymap](faq_keymap.md)
25 * [Instalación de drivers con Zadig](driver_installation_zadig.md)
26
27* Guías detalladas
28 * [Instalar herramientas construcción](getting_started_build_tools.md)
29 * [Guía Vagrant](getting_started_vagrant.md)
30 * [Instrucciones de Construcción/Compilado](getting_started_make_guide.md)
31 * [Flasheando Firmware](flashing.md)
32 * [Personalizando funcionalidad](custom_quantum_functions.md)
33 * [Visión general del Keymap](keymap.md)
34
35* [Hardware](hardware.md)
36 * [Procesadores AVR](hardware_avr.md)
37 * [Drivers](hardware_drivers.md)
38
39* Referencia
40 * [Pautas de teclados](hardware_keyboard_guidelines.md)
41 * [Opciones de configuración](config_options.md)
42 * [Keycodes](keycodes.md)
43 * [Convenciones de código - C](coding_conventions_c.md)
44 * [Convenciones de código - Python](coding_conventions_python.md)
45 * [Mejores prácticas de documentación](documentation_best_practices.md)
46 * [Plantillas de documentación](documentation_templates.md)
47 * [Glosario](reference_glossary.md)
48 * [Tests unitarios](unit_testing.md)
49 * [Funciones útiles](ref_functions.md)
50 * [Sporte configurador](reference_configurator_support.md)
51 * [Formato info.json](reference_info_json.md)
52 * [Desarrollo Python CLI](cli_development.md)
53
54* [Características](features.md)
55 * [Keycodes Básicos](keycodes_basic.md)
56 * [Teclas US ANSI Shifted](keycodes_us_ansi_shifted.md)
57 * [Keycodes Quantum](quantum_keycodes.md)
58 * [Keycodes Avanzados](feature_advanced_keycodes.md)
59 * [Audio](feature_audio.md)
60 * [Auto Shift](feature_auto_shift.md)
61 * [Retroiluminación](feature_backlight.md)
62 * [Bluetooth](feature_bluetooth.md)
63 * [Bootmagic](feature_bootmagic.md)
64 * [Combos](feature_combo.md)
65 * [Comando](feature_command.md)
66 * [API Debounce](feature_debounce_type.md)
67 * [Switch DIP](feature_dip_switch.md)
68 * [Macros Dinámicas](feature_dynamic_macros.md)
69 * [Encoders](feature_encoders.md)
70 * [Grave Escape](feature_grave_esc.md)
71 * [Feedback Háptico](feature_haptic_feedback.md)
72 * [Controlador LCD HD44780](feature_hd44780.md)
73 * [Key Lock](feature_key_lock.md)
74 * [Layouts](feature_layouts.md)
75 * [Tecla Leader](feature_leader_key.md)
76 * [Matriz LED](feature_led_matrix.md)
77 * [Macros](feature_macros.md)
78 * [Teclas del ratón](feature_mouse_keys.md)
79 * [Driver OLED](feature_oled_driver.md)
80 * [Teclas One Shot](feature_advanced_keycodes.md#one-shot-keys)
81 * [Dispositivo de apuntado](feature_pointing_device.md)
82 * [Ratón PS/2](feature_ps2_mouse.md)
83 * [Iluminación RGB](feature_rgblight.md)
84 * [Matriz RGB](feature_rgb_matrix.md)
85 * [Cadete espacial](feature_space_cadet.md)
86 * [Teclado dividido](feature_split_keyboard.md)
87 * [Stenografía](feature_stenography.md)
88 * [Swap Hands](feature_swap_hands.md)
89 * [Tap Dance](feature_tap_dance.md)
90 * [Terminal](feature_terminal.md)
91 * [Impresora Térmica](feature_thermal_printer.md)
92 * [Unicode](feature_unicode.md)
93 * [Userspace](feature_userspace.md)
94 * [Velocikey](feature_velocikey.md)
95
96* Para Makers y Modders
97 * [Guía de cableado a mano](hand_wire.md)
98 * [Guía de flasheado de ISP](isp_flashing_guide.md)
99 * [Guía de depuración de ARM](arm_debugging.md)
100 * [Driver I2C](i2c_driver.md)
101 * [Controles GPIO](internals_gpio_control.md)
102 * [Conversión Proton C](proton_c_conversion.md)
103
104* Para entender en profundidad
105 * [Cómo funcionan los teclados](how_keyboards_work.md)
106 * [Entendiendo QMK](understanding_qmk.md)
107
108* Otros temas
109 * [Usando Eclipse con QMK](other_eclipse.md)
110 * [Usando VSCode con QMK](other_vscode.md)
111 * [Soporte](support.md)
112 * [Cómo añadir traducciones](translating.md)
113
114* QMK Internals (En progreso)
115 * [Defines](internals_defines.md)
116 * [Input Callback Reg](internals_input_callback_reg.md)
117 * [Dispositivo Midi](internals_midi_device.md)
118 * [Proceso de configuración de un dispositivo Midi](internals_midi_device_setup_process.md)
119 * [Utilidad Midi](internals_midi_util.md)
120 * [Funciones Send](internals_send_functions.md)
121 * [Herramientas Sysex](internals_sysex_tools.md)
diff --git a/docs/es/becoming_a_qmk_collaborator.md b/docs/es/becoming_a_qmk_collaborator.md
new file mode 100644
index 000000000..f88846df2
--- /dev/null
+++ b/docs/es/becoming_a_qmk_collaborator.md
@@ -0,0 +1,9 @@
1# Llegar a ser un colaborador QMK
2
3Un colaborador QMK es un maker o diseñador de teclados que tiene interés en ayudar a QMK a crecer y mantener sus teclado(s), y alentar a los usuarios y clientes a presentar herramientas, ideas, y keymaps. Siempre procuramos agregar más teclados y colaboradores, pero pedimos que cumplan los siguientes requisitos:
4
5* **Tener un PCB disponible a la venta.** Desafortunadamente, hay demasiada variación y complicaciones con teclados cableados a mano.
6* **Realizar el mantenimiento de tu teclado en QMK.** Este podría requirir un setup inicial para hacer que tu teclado funcione, pero también podría incluir adaptarse a cambios hecho al base de QMK que podrían descomponer o rendir código superfluo.
7* **Aprobar e incorporar pull requests de keymaps para tu teclado.** Nos gusta alentar a los usuarios a contribuir sus keymaps para que otros los vean y los puedan usar para crear sus propios.
8
9Si sientes que cumples los requisitos, ¡mándanos un email a hello@qmk.fm con una introducción y algunos enlaces para tu teclado!
diff --git a/docs/es/newbs.md b/docs/es/newbs.md
new file mode 100644
index 000000000..ebb4b6ac2
--- /dev/null
+++ b/docs/es/newbs.md
@@ -0,0 +1,23 @@
1# La guía completa de QMK para novatos
2
3QMK es un poderoso firmware Open Source para tu teclado mecánico. Puedes utilizar QMK para personalizar tu teclado en maneras a la vez simples y potentes. Gente de todos los niveles de habilidad, desde completos novatos hasta expertos programadores, han utilizado con éxito QMK para personalizar sus teclados. Esta guía te ayudará a hacer lo mismo, sin importar tu nivel de habilidad.
4
5¿No estás seguro de si tu teclado puede ejecutar QMK? Si es un teclado mecánico construido por ti mismo probablemente puedas. Damos soporte a [gran número de placas de hobbistas](http://qmk.fm/keyboards/), e incluso si tu teclado actual no pudiera ejecutar QMK no deberías tener problemas encontrando uno que cumpliera tus necesidades.
6
7## Visión general
8
9Hay 7 secciones principales en esta guía:
10
11* [Empezando](newbs_getting_started.md)
12* [Construyendo tu primer firmware](newbs_building_firmware.md)
13* [Construyendo tu primer firmware usando la GUI](newbs_building_firmware_configurator.md)
14* [Flasheando el firmware](newbs_flashing.md)
15* [Testeando y depurando](newbs_testing_debugging.md)
16* [Mejores práticas](newbs_best_practices.md)
17* [Recursos de aprendizaje](newbs_learn_more_resources.md)
18
19Esta guía está enfocada en ayudar a alguien que nunca ha compilado software con anterioridad. Toma decisiones y hace recomendaciones teniendo en cuenta este punto de vista. Hay métodos alternativos para muchos de estos procedimientos, y soportamos la mayoría de esas alternativas. Si tienes alguna duda sobre cómo llevar a cabo una tarea nos puedes [preguntar para que te guiemos](getting_started_getting_help.md).
20
21## Recursos adicionales
22
23* [Blog de Básicos de Thomas Baart's QMK](https://thomasbaart.nl/category/mechanical-keyboards/firmware/qmk/qmk-basics/) – Un blog creado por un usuario que cubre lo básico sobre cómo usar el firmware QMK Firmware, visto desde la perspectiva de un usuario nuevo.
diff --git a/docs/es/newbs_best_practices.md b/docs/es/newbs_best_practices.md
new file mode 100644
index 000000000..fc2afb9ed
--- /dev/null
+++ b/docs/es/newbs_best_practices.md
@@ -0,0 +1,159 @@
1# Mejores prácticas
2
3## O, "Cómo aprendí a dejar de preocuparme y amarle a Git."
4
5Este documento procura instruir a los novatos en las mejores prácticas para tener una experiencia más fácil en contribuir a QMK. Te guiaremos por el proceso de contribuir a QMK, explicando algunas maneras de hacerlo más fácilmente, y luego romperemos algunas cosas para enseñarte cómo arreglarlas.
6
7En este documento suponemos un par de cosas:
8
91. Tienes una cuenta de Github, y has hecho un [fork del repo qmk_firmware](getting_started_github.md) en tu cuenta.
102. Has [configurado tu entorno de desarrollo](newbs_getting_started.md?id=environment-setup).
11
12
13## La rama master de tu fork: Actualizar a menudo, nunca commit
14
15Se recomienda que para desarrollo con QMK, lo que sea que estés haciendo, mantener tu rama `master` actualizada, pero **nunca** commit en ella. Mejor, haz todos tus cambios en una rama de desarrollo y manda pull requests de tus ramas mientras programas.
16
17Para evitar los conflictos de merge — cuando dos o más usuarios han editado la misma parte de un archivo al mismo tiempo — mantén tu rama `master` actualizada, y empieza desarrollo nuevo creando una nueva rama.
18
19### Actualizando tu rama master
20
21Para mantener tu rama `master` actualizada, se recomienda agregar el repository ("repo") de Firmware QMK como un repo remoto en git. Para hacer esto, abre tu interfaz de línea de mandatos y ingresa:
22```
23git remote add upstream https://github.com/qmk/qmk_firmware.git
24```
25
26Para verificar que el repo ha sido agregado, ejecuta `git remote -v`, y lo siguiente debe aparecer:
27
28```
29$ git remote -v
30origin https://github.com/<your_username>/qmk_firmware.git (fetch)
31origin https://github.com/<your_username>/qmk_firmware.git (push)
32upstream https://github.com/qmk/qmk_firmware.git (fetch)
33upstream https://github.com/qmk/qmk_firmware.git (push)
34```
35
36Ya que has hecho esto, puedes buscar actualizaciones del repo ejecutando `git fetch upstream`. Esto busca las ramas y etiquetas &mdash; juntos conocidos como "refs" &mdash; del repo QMK, que ahora tiene el apodo `upstream`. Ahora podemos comparar los archivos en nuestro fork `origin` con los de QMK.
37
38Para actualizar la rama master de tu fork, ejecuta lo siguiente, pulsando Intro después de cada línea:
39
40```
41git checkout master
42git fetch upstream
43git pull upstream master
44git push origin master
45```
46
47Esto te coloca en tu rama master, busca los refs del repo de QMK, descarga la rama `master` actual a tu computadora, y después lo sube a tu fork.
48
49### Hacer cambios
50
51Para hacer cambios, crea una nueva rama ejecutando:
52
53```
54git checkout -b dev_branch
55git push --set-upstream origin dev_branch
56```
57
58Esto crea una nueva rama llamada `dev_branch`, te coloca en ella, y después guarda la nueva rama a tu fork. El parámetro `--set-upstream` le dice a git que use tu fork y la rama `dev_branch` cada vez que uses `git push` o `git pull` en esta rama. Solo necesitas usarlo la primera que que subes cambios; ya después, puedes usar `git push` o `git pull`, sin usar los demás parámetros.
59
60!> Con `git push`, puedes usar `-u` en vez de `--set-upstream` &mdash; `-u` es un alias de `--set-upstream`.
61
62Puedes nombrar tu rama casi cualquier cosa, pero se recomienda ponerle algo con relación a los cambios que vas a hacer.
63
64Por defecto `git checkout -b` se basará tu nueva rama en la rama en la cual estás actualmente. Puedes basar tu rama en otra rama existente agregando el nombre de la rama al comando:
65
66```
67git checkout -b dev_branch master
68```
69
70Ahora que tienes una rama development, abre tu editor de texto y haz los cambios que quieres. Se recomienda hacer varios commits pequeños a tu rama; de este modo cualquier cambio que causa problemas puede ser rastreado y deshecho si fuera necesario. Para hacer tus cambios, edita y guarda los archivos que necesitas actualizar, agrégalos al *staging area* de Git, y luego haz un commit a tu rama:
71
72```
73git add path/to/updated_file
74git commit -m "My commit message."
75```
76`git add` agrega los archivos que han sido cambiados al *staging area* de Git, lo cual es la "zona de preparación"de Git. Este contiene los cambios que vas a *commit* usando `git commit`, que guarda los cambios en el repo. Usa un mensaje de commit descriptivo para que puedas saber que ha cambiado fácilmente.
77
78!> Si has cambiado muchos archivos, pero todos los archivos son parte del mismo cambio, puedes usar `git add .` para agregar todos los archivos cambiados que están en tu directiro actual, en vez de agregar cada archivo manualmente.
79
80### Publicar tus cambios
81
82El útimo paso es subir tus cambios a tu fork. Para hacerlo, ejecuta `git push`. Ahora Git publicará el estado actual de `dev_branch` a tu fork.
83
84
85## Resolver los conflictos del merge
86
87A veces cuando el trabajo en una rama tarda mucho tiempo en completarse, los cambios que han sido hechos por otros chocan con los cambios que has hecho en tu rama cuando abres un pull request. Esto se llama un *merge conflict*, y es algo que ocurre cuando varias personas editan las mismas partes de los mismos archivos.
88
89### Rebase tus cambios
90
91Un *rebase* es la manera de Git de tomar los cambios que se aplicaron en un punto, deshacerlos, y aplicar estos mismos cambios en otro punto. En el caso de un conflicto de merge, puedes hacer un rebase de tu rama para recoger los cambios que has hecho.
92
93Para empezar, ejecuta lo siguiente:
94
95```
96git fetch upstream
97git rev-list --left-right --count HEAD...upstream/master
98```
99
100El comando `git rev-list` ejecutado aquí muestra el número de commits que difieren entre la rama actual y la rama master de QMK. Ejecutamos `git fetch` primero para asegurarnos de que tenemos los refs que representan es estado actual del repo upstream. El output del comando `git rev-list` muestra dos números:
101
102```
103$ git rev-list --left-right --count HEAD...upstream/master
1047 35
105```
106
107El primer número representa el número de commits en la rama actual desde que fue creada, y el segundo número es el número de commits hecho a `upstream/master` desde que la rama actual fue creada, o sea los cambios que no están registrados en la rama actual.
108
109Ahora que sabemos el estado actual de la rama actual y el del repo upstream, podemos empezar una operación rebase:
110
111```
112git rebase upstream/master
113```
114Esto le dice a Git que deshaga los commits en la rama actual, y después los re-aplica en la rama master de QMK.
115
116```
117$ git rebase upstream/master
118First, rewinding head to replay your work on top of it...
119Applying: Commit #1
120Using index info to reconstruct a base tree...
121M conflicting_file_1.txt
122Falling back to patching base and 3-way merge...
123Auto-merging conflicting_file_1.txt
124CONFLICT (content): Merge conflict in conflicting_file_1.txt
125error: Failed to merge in the changes.
126hint: Use 'git am --show-current-patch' to see the failed patch
127Patch failed at 0001 Commit #1
128
129Resolve all conflicts manually, mark them as resolved with
130"git add/rm <conflicted_files>", then run "git rebase --continue".
131You can instead skip this commit: run "git rebase --skip".
132To abort and get back to the state before "git rebase", run "git rebase --abort".
133```
134
135Esto nos dice que tenemos un conflicto de merge, y nos dice el nombre del archivo con el conflict. Abre el archivo en tu editor de texto, y en alguna parte del archivo verás algo así:
136
137```
138<<<<<<< HEAD
139<p>For help with any issues, email us at support@webhost.us.</p>
140=======
141<p>Need help? Email support@webhost.us.</p>
142>>>>>>> Commit #1
143```
144La línea `<<<<<<< HEAD` marca el principio de un conflicto de merge, y la línea `>>>>>>> Commit #1` marca el final, con las secciones de conflicto separadas por `=======`. La parte del lado `HEAD` is de la versión de QMK master del archivo, y la parte marcada con el mensaje de commit es de la rama actual.
145
146Ya que Git rastrea *cambios de archivos* en vez del contenido de los archivos directamente, si Git no puede encontrar el texto que estaba en el archivo antes del último commit, no sabrá cómo editar el archivo. El editar el archivo de nuevo resolverá este conflicto. Haz tus cambios, y guarda el archivo.
147
148```
149<p>Need help? Email support@webhost.us.</p>
150```
151
152Ahora ejecuta:
153
154```
155git add conflicting_file_1.txt
156git rebase --continue
157```
158
159Git registra los cambios al archivo con conflictos, y sigue aplicando los commits de nuestra rama hasta llegar al final.
diff --git a/docs/es/newbs_building_firmware.md b/docs/es/newbs_building_firmware.md
new file mode 100644
index 000000000..ff9873c78
--- /dev/null
+++ b/docs/es/newbs_building_firmware.md
@@ -0,0 +1,81 @@
1# Construyendo tu primer firmware
2
3Ahora 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.
4
5Si 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.
6
7## Navega a tu carpeta de keymaps
8
9Comienza navegando a la carpeta `keymaps` correspondiente a tu teclado.
10
11?> Si estás en macOS o Windows hay comandos que puedes utilizar fácilmente para abrir la carpeta keymaps.
12
13?> macOS:
14
15 abre keyboards/<keyboard_folder>/keymaps
16
17?> Windows:
18
19 inicia .\\keyboards\\<keyboard_folder>\\keymaps
20
21## Crea una copia del keymap `default`
22
23Una 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.
24
25Para automatizar el proceso, también tienes la opción de ejecutar el script `new_keymap.sh`.
26
27Navega a la carpeta `qmk_firmware/util` e introduce lo siguiente:
28
29```
30./new_keymap.sh <keyboard path> <username>
31```
32
33Por ejemplo, para un usuario llamado John, intentando hacer un keymap nuevo para el 1up60hse, tendría que teclear
34
35```
36./new_keymap.sh 1upkeyboards/1up60hse john
37```
38
39## Abre `keymap.c` con tu editor de texto favorito
40
41Abre 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:
42
43 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
44
45Esta 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.
46
47!> 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.
48
49## Personaliza el Layout a tu gusto
50
51Có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í:
52
53* [Keycodes](keycodes.md)
54* [Características](features.md)
55* [Preguntas frecuentes](faq.md)
56
57?> 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.
58
59## Construye tu firmware
60
61Cuando 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:
62
63 make <my_keyboard>:<my_keymap>
64
65Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un planck rev5, utilizarás el siguiente comando:
66
67 make planck/rev5:xyverz
68
69Mientras 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:
70
71```
72Linking: .build/planck_rev5_xyverz.elf [OK]
73Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK]
74Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK]
75Checking file size of planck_rev5_xyverz.hex [OK]
76 * File size is fine - 18392/28672
77```
78
79## Flashea tu firmware
80
81Continua con [Flasheando el firmware](newbs_flashing.md) para aprender cómo escribir tu firmware nuevo en tu teclado.
diff --git a/docs/es/newbs_building_firmware_configurator.md b/docs/es/newbs_building_firmware_configurator.md
new file mode 100644
index 000000000..a25734324
--- /dev/null
+++ b/docs/es/newbs_building_firmware_configurator.md
@@ -0,0 +1,105 @@
1# Configurador QMK
2
3El [Configurador QMK](https://config.qmk.fm) es un entorno gráfico online que genera ficheros hexadecimales de Firmware QMK.
4
5?> **Por favor sigue estos pasos en orden.**
6
7Ve el [Video tutorial](https://youtu.be/tx54jkRC9ZY)
8
9El Configurador QMK functiona mejor con Chrome/Firefox.
10
11
12!> **Ficheros de otras herramientas como KLE, o kbfirmware no serán compatibles con el Configurador QMK. No las cargues, no las importes. El configurador Configurador QMK es una herramienta DIFERENTE. **
13
14## Seleccionando tu teclado
15
16Haz click en el desplegable y selecciona el teclado para el que quieres crear el keymap.
17
18?> Si tu teclado tiene varias versiones, asegúrate de que seleccionas la correcta.**
19
20Lo diré otra vez porque es importante
21
22!> **ASEGÚRATE DE QUE SELECCIONAS LA VERSIÓN CORRECTA!**
23
24Si se ha anunciado que tu teclado funciona con QMK pero no está en la lista, es probable que un desarrollador no se haya encargado de él aún o que todavía no hemos tenido la oportunidad de incluirlo. Abre un issue en [qmk_firmware](https://github.com/qmk/qmk_firmware/issues) solicitando soportar ese teclado un particular, si no hay un [Pull Request](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) activo para ello. Hay también teclados que funcionan con QMK que están en las cuentas de github de sus manufacturantes. Acuérdate de comprobar esto también.
25
26## Eligiendo el layout de tu teclado
27
28Elige el layout que mejor represente el keymap que quieres crear. Algunos teclados no tienen suficientes layouts o layouts correctos definidos aún. Serán soportados en el futuro.
29
30## Nombre del keymap
31
32Llama a este keymap como quieras.
33
34?> Si estás teniendo problemas para compilar, puede merecer la pena probar un cambio de nombre, ya que puede que ya exista en el repositorio de QMK Firmware.
35
36## Creando Tu keymap
37
38La adición de keycodes se puede hacer de 3 maneras.
391. Arrastrando y soltando
402. Clickando en un hueco vacío en el layout y haciendo click en el keycode que deseas
413. Clickando en un hueco vacío en el layout, presionando la tecla física en tu teclado.
42
43Mueve el puntero de tu ratón sobre una tecla y un pequeño extracto te dirá que es lo que hace la tecla. Para una descripción más detallada por favor, mira
44
45[Referencia básica de keycodes](https://docs.qmk.fm/#/keycodes_basic)
46[Referencia avanzada de keycodes](https://docs.qmk.fm/#/feature_advanced_keycodes)
47
48En el caso de que no puedas encontrar un layout que suporte tu keymap, por ejemplo, tres huecos para la barra espaciadora, dos huecos para el retroceso o dos huecos para shift etc etc, rellènalos TODOS.
49
50### Ejemplo:
51
523 huecos para barra espaciadora: Rellena TODOS con barra espaciadora
53
542 huecos para retroceso: Rellena AMBOS con retroceso
55
562 huecos para el shift derecho: Rellena AMBOS con shift derecho
57
581 hueco para el shift izquierdo y 1 hueco para soporte iso: Rellena ambos con el shift izquierdo
59
605 huecos , pero sólo 4 teclas: Intuye y comprueba o pregunta a alguien que lo haya hecho anteriormente.
61
62## Guardando tu keymap para ediciones futuras
63
64Cuando estés satisfecho con un teclado o quieres trabajar en el después, pulsa el botón `Exportar Keymap`. Guardára tu keymap con el nombre que elijas seguido de .json.
65
66Entonces podrás cargar este fichero .json en el futuro pulsando el botón `Importar Keymap`.
67
68!> **PRECAUCIÓN:** No es el mismo tipo de fichero .json usado en kbfirmware.com ni ninguna otra herramienta. Si intentas utilizar un fichero .json de alguna de estas herramientas con el Configurador QMK, existe la posibilidad de que tu teclado **explote**.
69
70## Generando tu fichero de firmware
71
72Pulsa el botón verde `Compilar`.
73
74Cuando la compilación haya acabado, podrás presionar el botón verde `Descargar Firmware`.
75
76## Flasheando tu teclado
77
78Por favor, dirígete a la sección de [Flashear firmware](newbs_flashing.md)
79
80## Problemas comunes
81
82#### Mi fichero .json no funciona
83
84Si el fichero .json fue generado con el Configurador QMK, enhorabuena, has dado con un bug. Abre una issue en [qmk_configurator](https://github.com/qmk/qmk_configurator/issues)
85
86Si no....cómo no viste el mensaje en negrita que puse arriba diciendo que no hay que utilizar otros ficheros .json?
87
88#### Hay espacios extra en mi layout ¿Qué hago?
89
90Si te refieres a tener tres espacios para la barra espaciadora, la mejor decisión es rellenar los tres con la barra espaciadora. También se puede hacer lo mismo con las teclas retroceso y las de shift
91
92#### Para qué sirve el keycode.......
93
94Por favor, mira
95
96[Referencia básica de keycodes](https://docs.qmk.fm/#/keycodes_basic)
97[Referencia avanzada de keycodes](https://docs.qmk.fm/#/feature_advanced_keycodes)
98
99#### No compila
100
101Por favor, revisa las otras capas de tu keymap para asegurarte de que no hay teclas aleatorias presentes.
102
103## Problemas y bugs
104
105Siempre aceptamos peticiones de clientes y reportes de bug. Por favor, indícalos en [qmk_configurator](https://github.com/qmk/qmk_configurator/issues)
diff --git a/docs/es/newbs_flashing.md b/docs/es/newbs_flashing.md
new file mode 100644
index 000000000..066715c48
--- /dev/null
+++ b/docs/es/newbs_flashing.md
@@ -0,0 +1,351 @@
1# Flasheando tu teclado
2
3Ahora que has construido tu fichero de firmware personalizado querrás flashear tu teclado.
4
5## Flasheando tu teclado con QMK Toolbox
6
7La manera más simple de flashear tu teclado sería con [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases).
8
9De todos modos, QMK Toolbox actualmente sólo está disponible para Windows y macOS. Si estás usando Linux (o sólo quisieras flashear el firmware desde la línea de comandos), tendrás que utilizar el [método indicado abajo](newbs_flashing.md#flash-your-keyboard-from-the-command-line).
10
11### Cargar el fichero en QMK Toolbox
12
13Empieza abriendo la aplicación QMK Toolbox. Tendrás que buscar el fichero de firmware usando Finder o Explorer. El firmware de teclado puede estar en uno de estos dos formatos- `.hex` o `.bin`. QMK intenta copiar el apropiado para tu teclado en el fichero raíz `qmk_firmware`.
14
15?> Si tu estás on Windows o macOS hay comandos que puedes usar para abrir fácilmente la carpeta del firmware actual en Explorer o Finder.
16
17?> Windows:
18
19 start .
20
21?> macOS:
22
23 open .
24
25El fichero de firmware sempre sigue el siguiente formato de nombre:
26
27 <nombre_teclado>_<nombre_keymap>.{bin,hex}
28
29Por ejemplo, un `plank/rev5` con un keymap `default` tendrá este nombre de fichero:
30
31 planck_rev5_default.hex
32
33Una vez que hayas localizado el fichero de tu firmware arrástralo a la caja "Fichero local" en QMK Toolbox, o haz click en "Abrir" y navega allí donde tengas almacenado tu fichero de firmware.
34
35### Pon tu teclado en modo DFU (Bootloader)
36
37Para poder flashear tu firmware personalizado tienes que poner tu teclado en un modo especial que permite flasheado. Cuando está en este modo no podrás teclear o utilizarlo para ninguna otra cosa. Es muy importante que no desconectes tu teclado, de lo contrario interrumpirás el proceso de flasheo mientras el firmware se está escribiendo.
38
39Diferentes teclados tienen diferentes maneras de entrar en este modo especial. Si tu PCB actualmente ejecuta QMK o TMK y no has recibido instrucciones específicas, intenta los siguientes pasos en orden:
40
41* Manten pulsadas ambas teclas shift y pulsa `Pause`
42* Manten pulsadas ambas teclas shift y pulsa `B`
43* Desconecta tu teclado, mantén pulsada la barra espaciadora y `B` al mismo tiempo, conecta tu teclado y espera un segundo antes de dejar de pulsar las teclas
44* Pulsa el botón físico `RESET` situado en el fondo de la PCB
45* Localiza los pines en la PCB etiquetados on `BOOT0` o `RESET`, puentea estos dos juntos cuando enchufes la PCB
46
47Si has tenido éxito verás un mensaje similar a este en QMK Toolbox:
48
49```
50*** Clueboard - Clueboard 66% HotSwap disconnected -- 0xC1ED:0x2390
51*** DFU device connected
52```
53
54### Flashea tu teclado
55
56Haz click en el botón `Flash` de QMK Toolbox. Verás una información de salida similar a esta:
57
58```
59*** Clueboard - Clueboard 66% HotSwap disconnected -- 0xC1ED:0x2390
60*** DFU device connected
61*** Attempting to flash, please don't remove device
62>>> dfu-programmer atmega32u4 erase --force
63 Erasing flash... Success
64 Checking memory from 0x0 to 0x6FFF... Empty.
65>>> dfu-programmer atmega32u4 flash /Users/skully/qmk_firmware/clueboard_66_hotswap_gen1_skully.hex
66 Checking memory from 0x0 to 0x55FF... Empty.
67 0% 100% Programming 0x5600 bytes...
68 [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
69 0% 100% Reading 0x7000 bytes...
70 [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
71 Validating... Success
72 0x5600 bytes written into 0x7000 bytes memory (76.79%).
73>>> dfu-programmer atmega32u4 reset
74
75*** DFU device disconnected
76*** Clueboard - Clueboard 66% HotSwap connected -- 0xC1ED:0x2390
77```
78
79## Flashea tu teclado desde la línea de comandos
80
81Lo primero que tienes que saber es qué bootloader utiliza tu teclado. Hay cuatro bootloaders pincipales que se usan habitualmente . Pro-Micro y sus clones usan CATERINA, Teensy's usa Halfkay, las placas OLKB usan QMK-DFU, y otros chips atmega32u4 usan DFU.
82
83Puedes encontrar más información sobre bootloaders en la página [Instrucciones de flasheado e información de Bootloader](flashing.md).
84
85Si sabes qué bootloader estás usando, en el momento de compilar el firmware, podrás añadir algún texto extra al comando `make` para automatizar el proceso de flasheado.
86
87### DFU
88
89Para eo bootloader DFU, cuando estés listo para compilar y flashear tu firmware, abre tu ventana de terminal y ejecuta el siguiente comando de construcción:
90
91 make <my_keyboard>:<my_keymap>:dfu
92
93Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un planck rev5, utilizarás este comando:
94
95 make planck/rev5:xyverz:dfu
96
97Una vez que finalice de compilar, deberá aparecer lo siguiente:
98
99```
100Linking: .build/planck_rev5_xyverz.elf [OK]
101Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK]
102Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK]
103Checking file size of planck_rev5_xyverz.hex
104 * File size is fine - 18574/28672
105 ```
106
107Después de llegar a este punto, el script de construcción buscará el bootloader DFU cada 5 segundos. Repetirá lo siguiente hasta que se encuentre el dispositivo o lo canceles:
108
109 dfu-programmer: no device present.
110 Error: Bootloader not found. Trying again in 5s.
111
112Una vez haya hecho esto, tendrás que reiniciar el controlador. Debería mostrar una información de salida similar a esta:
113
114```
115*** Attempting to flash, please don't remove device
116>>> dfu-programmer atmega32u4 erase --force
117 Erasing flash... Success
118 Checking memory from 0x0 to 0x6FFF... Empty.
119>>> dfu-programmer atmega32u4 flash /Users/skully/qmk_firmware/clueboard_66_hotswap_gen1_skully.hex
120 Checking memory from 0x0 to 0x55FF... Empty.
121 0% 100% Programming 0x5600 bytes...
122 [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
123 0% 100% Reading 0x7000 bytes...
124 [>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
125 Validating... Success
126 0x5600 bytes written into 0x7000 bytes memory (76.79%).
127>>> dfu-programmer atmega32u4 reset
128```
129
130?> Si tienes problemas con esto- del estilo de `dfu-programmer: no device present` - por favor consulta las [Preguntas frecuentes de construcción](faq_build.md).
131
132#### Comandos DFU
133
134Hay un número de comandos DFU que puedes usar para flashear firmware a un dispositivo DFU:
135
136* `:dfu` - Esta es la opción normal y espera hasta que un dispositivo DFU esté disponible, entonces flashea el firmware. Esperará reintentando cada 5 segundos, para ver si un dispositivo DFU ha aparecido.
137* `:dfu-ee` - Esta flashea un fichero `eep` en vez del hex normal. Esto no es lo común.
138* `:dfu-split-left` - Esta flashea el firmware normal, igual que la opción por defecto (`:dfu`). Sin embargo, también flashea el fichero EEPROM "Lado Izquierdo" para teclados divididos. _Esto es ideal para los ficheros divididos basados en Elite C._
139* `:dfu-split-right` - Esto flashea el firmware normal, igual que la opción por defecto (`:dfu`). Sin embargo, también flashea el fichero EEPROM "Lado Derecho" para teclados divididos. _Esto es ideal para los ficheros divididos basados en Elite C._
140
141
142### Caterina
143
144Para placas Arduino y sus clones (como la SparkFun ProMicro), cuando estés listo para compilar y flashear tu firmware, abre tu ventana de terminal y ejecuta el siguiente comando de construcción:
145
146 make <my_keyboard>:<my_keymap>:avrdude
147
148Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un Lets Split rev2, usarás este comando:
149
150 make lets_split/rev2:xyverz:avrdude
151
152Una vez que finalice de compilar, deberá aparecer lo siguiente:
153
154```
155Linking: .build/lets_split_rev2_xyverz.elf [OK]
156Creating load file for flashing: .build/lets_split_rev2_xyverz.hex [OK]
157Checking file size of lets_split_rev2_xyverz.hex [OK]
158 * File size is fine - 27938/28672
159Detecting USB port, reset your controller now..............
160```
161
162En este punto, reinicia la placa y entonces el script detectará el bootloader y procederá a flashear la placa. La información de salida deber ser algo similar a esto:
163
164```
165Detected controller on USB port at /dev/ttyS15
166
167Connecting to programmer: .
168Found programmer: Id = "CATERIN"; type = S
169 Software Version = 1.0; No Hardware Version given.
170Programmer supports auto addr increment.
171Programmer supports buffered memory access with buffersize=128 bytes.
172
173Programmer supports the following devices:
174 Device code: 0x44
175
176avrdude.exe: AVR device initialized and ready to accept instructions
177
178Reading | ################################################## | 100% 0.00s
179
180avrdude.exe: Device signature = 0x1e9587 (probably m32u4)
181avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
182 To disable this feature, specify the -D option.
183avrdude.exe: erasing chip
184avrdude.exe: reading input file "./.build/lets_split_rev2_xyverz.hex"
185avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex
186avrdude.exe: writing flash (27938 bytes):
187
188Writing | ################################################## | 100% 2.40s
189
190avrdude.exe: 27938 bytes of flash written
191avrdude.exe: verifying flash memory against ./.build/lets_split_rev2_xyverz.hex:
192avrdude.exe: load data flash data from input file ./.build/lets_split_rev2_xyverz.hex:
193avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex
194avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex contains 27938 bytes
195avrdude.exe: reading on-chip flash data:
196
197Reading | ################################################## | 100% 0.43s
198
199avrdude.exe: verifying ...
200avrdude.exe: 27938 bytes of flash verified
201
202avrdude.exe: safemode: Fuses OK (E:CB, H:D8, L:FF)
203
204avrdude.exe done. Thank you.
205```
206Si tienes problemas con esto, puede ser necesario que hagas esto:
207
208 sudo make <my_keyboard>:<my_keymap>:avrdude
209
210
211Adicionalmente, si quisieras flashear múltiples placas, usa el siguiente comando:
212
213 make <keyboard>:<keymap>:avrdude-loop
214
215Cuando hayas acabado de flashear placas, necesitarás pulsar Ctrl + C o cualquier combinación que esté definida en tu sistema operativo para finalizar el bucle.
216
217
218### HalfKay
219
220Para dispositivos PJRC (Teensy's), cuando estés listo para compilar y flashear tu firmware, abre tu ventana de terminal y ejecuta el siguiente comando de construcción:
221
222 make <my_keyboard>:<my_keymap>:teensy
223
224Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un Ergodox o un Ergodox EZ, usarás este comando:
225
226 make ergodox_ez:xyverz:teensy
227
228Una vez que el firmware acabe de compilar, deberá mostrar una información de salida como esta:
229
230```
231Linking: .build/ergodox_ez_xyverz.elf [OK]
232Creating load file for flashing: .build/ergodox_ez_xyverz.hex [OK]
233Checking file size of ergodox_ez_xyverz.hex [OK]
234 * File size is fine - 25584/32256
235 Teensy Loader, Command Line, Version 2.1
236Read "./.build/ergodox_ez_xyverz.hex": 25584 bytes, 79.3% usage
237Waiting for Teensy device...
238 (hint: press the reset button)
239 ```
240
241En este punto, reinicia tu placa. Una vez que lo hayas hecho, deberás ver una información de salida como esta:
242
243 ```
244 Found HalfKay Bootloader
245Read "./.build/ergodox_ez_xyverz.hex": 28532 bytes, 88.5% usage
246Programming............................................................................................................................................................................
247...................................................
248Booting
249```
250
251### BootloadHID
252
253Para placas basadas en Bootmapper Client(BMC)/bootloadHID/ATmega32A, cuando estés listo para compilar y flashear tu firmware, abre tu ventana de terminal y ejecuta el comando de construcción:
254
255 make <my_keyboard>:<my_keymap>:bootloaderHID
256
257Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un jj40, usarás esté comando:
258
259 make jj40:xyverz:bootloaderHID
260
261Una vez que el firmware acaba de compilar, mostrará una información de salida como esta:
262
263```
264Linking: .build/jj40_default.elf [OK]
265Creating load file for flashing: .build/jj40_default.hex [OK]
266Copying jj40_default.hex to qmk_firmware folder [OK]
267Checking file size of jj40_default.hex [OK]
268 * The firmware size is fine - 21920/28672 (6752 bytes free)
269```
270
271Después de llegar a este punto, el script de construcción buscará el bootloader DFU cada 5 segundos. Repetirá lo siguiente hasta que se encuentre el dispositivo o hasta que lo canceles.
272
273```
274Error opening HIDBoot device: The specified device was not found
275Trying again in 5s.
276```
277
278Una vez que lo haga, querrás reinicar el controlador. Debería entonces mostrar una información de salida similar a esta:
279
280```
281Page size = 128 (0x80)
282Device size = 32768 (0x8000); 30720 bytes remaining
283Uploading 22016 (0x5600) bytes starting at 0 (0x0)
2840x05580 ... 0x05600
285```
286
287### STM32 (ARM)
288
289Para la mayoría de placas ARM (incluyendo la Proton C, Planck Rev 6, y Preonic Rev 3), cuando estés listo para compilar y flashear tu firmware, abre tu ventana de terminal y ejecuta el siguiente comando de construcción:
290
291 make <my_keyboard>:<my_keymap>:dfu-util
292
293Por ejemplo, si tu keymap se llama "xyverz" y estás construyendo un keymap para un teclado Planck Revision 6, utilizarás este comando y a continuación reiniciarás el teclado con el bootloader (antes de que acabe de compilar):
294
295 make planck/rev6:xyverz:dfu-util
296
297Una vez que el firmware acaba de compilar, mostrará una información de salida similar a esta:
298
299```
300Linking: .build/planck_rev6_xyverz.elf [OK]
301Creating binary load file for flashing: .build/planck_rev6_xyverz.bin [OK]
302Creating load file for flashing: .build/planck_rev6_xyverz.hex [OK]
303
304Size after:
305 text data bss dec hex filename
306 0 41820 0 41820 a35c .build/planck_rev6_xyverz.hex
307
308Copying planck_rev6_xyverz.bin to qmk_firmware folder [OK]
309dfu-util 0.9
310
311Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
312Copyright 2010-2016 Tormod Volden and Stefan Schmidt
313This program is Free Software and has ABSOLUTELY NO WARRANTY
314Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
315
316Invalid DFU suffix signature
317A valid DFU suffix will be required in a future dfu-util release!!!
318Opening DFU capable USB device...
319ID 0483:df11
320Run-time device DFU version 011a
321Claiming USB DFU Interface...
322Setting Alternate Setting #0 ...
323Determining device status: state = dfuERROR, status = 10
324dfuERROR, clearing status
325Determining device status: state = dfuIDLE, status = 0
326dfuIDLE, continuing
327DFU mode device DFU version 011a
328Device returned transfer size 2048
329DfuSe interface name: "Internal Flash "
330Downloading to address = 0x08000000, size = 41824
331Download [=========================] 100% 41824 bytes
332Download done.
333File downloaded successfully
334Transitioning to dfuMANIFEST state
335```
336
337#### STM32 Commands
338
339Hay un número de comandos DFU que puedes usar para flashear firmware a un dispositivo DFU:
340
341* `:dfu-util` - El comando por defecto para flashing en dispositivos STM32.
342* `:dfu-util-wait` - Esto funciona como el comando por defecto, pero te da (configurable) 10 segundos de tiempo antes de que intente flashear el firmware. Puedes usar `TIME_DELAY=20` desde la líena de comandos para cambiar este tiempo de retardo.
343 * Eg: `make <keyboard>:<keymap>:dfu-util TIME_DELAY=5`
344* `:dfu-util-split-left` - Flashea el firmware normal, igual que la opción por defecto (`:dfu-util`). Sin embargo, también flashea el fichero EEPROM "Lado Izquierdo" para teclados divididos.
345* `:dfu-util-split-right` - Flashea el firmware normal, igual que la opción por defecto (`:dfu-util`). Sin embargo, también flashea el fichero EEPROM "Lado Derecho" para teclados divididos.
346
347## ¡Pruébalo!
348
349¡Felicidades! ¡Tu firmware personalizado ha sido programado en tu teclado!
350
351Pruébalo y asegúrate de que todo funciona de la manera que tu quieres. Hemos escrito [Testeando y depurando](newbs_testing_debugging.md) para redondear esta guía de novatos, así que pásate por allí para aprender cómo resolver problemas con tu funcionalidad personalizada.
diff --git a/docs/es/newbs_getting_started.md b/docs/es/newbs_getting_started.md
new file mode 100644
index 000000000..eb0d6d36f
--- /dev/null
+++ b/docs/es/newbs_getting_started.md
@@ -0,0 +1,103 @@
1# Introducción
2
3El teclado de tu computador tiene un procesador dentro de él, no muy distinto del que está dentro de tu ordenador. Este procesador ejecuta software que es responsable de detectar la pulsación de las teclas y enviar informes sobre el estado del teclado cuando las teclas son pulsadas y liberadas. QMK ocupa el rol de ese software. Cuando construyes un keymap personalizado , estas creando el equivalente de un programa ejecutable en tu teclado.
4
5QMK intenta poner un montón de poder en tus manos haciendo que las cosas fáciles sean fáciles, y las cosas difíciles posibles. No tienes que saber cómo programar para crear keymaps potentes — sólo tienes que seguir un conjunto simple de reglas sintácticas.
6
7# Comenzando
8
9Antes de que puedas construir keymaps, necesitarás instalar algun software y configurar tu entorno de construcción. Esto sólo hay que hacerlo una vez sin importar en cuántos teclados planeas configurar el software.
10
11Si prefieres hacerlo mediante un interfaz gráfico , por favor, considera utilizar el [Configurador QMK](https://config.qmk.fm). En ese caso dirígete a [Construyendo tu primer firmware usando la GUI](newbs_building_firmware_configurator.md).
12
13
14## Descarga el software
15
16### Editor de texto
17
18Necesitarás un programa con el que puedas editar y guardar archivos de **texto plano**, en windows puedes utilizar Notepad y en tu Linux puedes utilizar gedit. Estos dos programas son editores simples y funcionales. En macOS ten cuidado con la aplicación de edición de texto por defecto TextEdit: no guardará texto plano a menos de que se le seleccione explícitamente _Make Plain Text_ desde el menú _Format_.
19
20También puedes descargar e instalar un editor de texto dedicado como [Sublime Text](https://www.sublimetext.com/) o [VS Code](https://code.visualstudio.com/). Esta es probablemente la mejor manera independientemente de la plataforma, ya que estos programas fueron creados específicamente para editar código.
21
22?> ¿No estás seguro de qué editor de texto utilizar? Laurence Bradford escribió una [estupenda introducción](https://learntocodewith.me/programming/basics/text-editors/) al tema.
23
24### QMK Toolbox
25
26QMK Toolbox is an optional graphical program for Windows and macOS that allows you to both program and debug your custom keyboard. You will likely find it invaluable for easily flashing your keyboard and viewing debug messages that it prints.
27
28[Download the latest release here.](https://github.com/qmk/qmk_toolbox/releases/latest)
29
30* For Windows: `qmk_toolbox.exe` (portable) or `qmk_toolbox_install.exe` (installer)
31* For macOS: `QMK.Toolbox.app.zip` (portable) or `QMK.Toolbox.pkg` (installer)
32
33## Configura tu entorno
34
35Hemos intentado hacer QMK lo más fácil de configurar posible. Sólo tienes que preparar tu entorno Linux o Unix, y luego dejar que QMK
36instale el resto.
37
38?> Si no has trabajado con la línea de comandos de Linux/Unix con anterioridad, hay algunos conceptos y comandos básicos que deberías aprender. Estos recursos te enseñarán lo suficiente para poder trabajar con QMK:<br>
39[Comandos de Linux que debería saber](https://www.guru99.com/must-know-linux-commands.html)<br>
40[Algunos comandos básicos de Unix](https://www.tjhsst.edu/~dhyatt/superap/unixcmd.html)
41
42### Windows
43
44Necesitarás instalar MSYS2 y Git.
45
46* Sigue las instrucciones de instalación en la [página de MSYS2](http://www.msys2.org).
47* Cierra las terminales abiertas de MSYS2 y abre una nueva termial de MSYS2 MinGW 64-bit.
48* Instala Git ejecutando este comando: `pacman -S git`.
49
50### macOS
51
52Necesitarás instalar Homebrew. Sigue las instrucciones que encontrarás en la [página de Homebrew](https://brew.sh).
53
54Despueś de que se haya inastalado Homebrew, continúa con _Set Up QMK_. En ese paso ejecutará un script que instalará el resto de paquetes.
55
56### Linux
57
58Necesitarás instalar Git. Es bastante probable que ya lo tengas, pero si no, uno de los siguientes comandos debería instalarlo:
59
60* Debian / Ubuntu / Devuan: `apt-get install git`
61* Fedora / Red Hat / CentOS: `yum install git`
62* Arch: `pacman -S git`
63
64?> Docker es también una opción en todas las plataformas. [Haz click aquí si quieres detalles.](getting_started_build_tools.md#docker)
65
66## Configura QMK
67
68Una vez que hayas configurado tu entorno Linux/Unix, estarás listo para descargar QMK. Haremos esto utilizando Git para "clonar" el respositorio de QMK. Abre una ventana de Terminal o MSYS2 MinGW y mantenla abierta mientras sigues esta guía. Dentro de esa ventana ejecuta estos dos comandos:
69
70```shell
71git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git
72cd qmk_firmware
73```
74
75?> Si ya sabes [cómo usar GitHub](getting_started_github.md), te recomendamos en vez de eso, crees y clones tu propio fork. Si no sabes lo que significa, puedes ignorar este mensaje sin problemas.
76
77QMK viene con un script para ayudarte a configurar el resto de cosas que necesitarás. Deberías ejecutarlo introduciendo este comando:
78
79 util/qmk_install.sh
80
81## Prueba tu entorno de construcción
82
83Ahora que tu entorno de construcción de QMK está configurado, puedes construcir un firmware para tu teclado. Comienza intentado construir el keymap por defecto del teclado. Deberías ser capaz de hacerlo con un comando con este formato:
84
85 make <keyboard>:default
86
87Por ejemplo, para construir el firmware para un Clueboard 66% deberías usar:
88
89 make clueboard/66/rev3:default
90
91Cuando esté hecho, deberías tener un montón de información de salida similar a esta:
92
93```
94Linking: .build/clueboard_66_rev3_default.elf [OK]
95Creating load file for flashing: .build/clueboard_66_rev3_default.hex [OK]
96Copying clueboard_66_rev3_default.hex to qmk_firmware folder [OK]
97Checking file size of clueboard_66_rev3_default.hex [OK]
98 * The firmware size is fine - 26356/28672 (2316 bytes free)
99```
100
101# Creando tu keymap
102
103Ya estás listo para crear tu propio keymap personal! Para hacerlo continua con [Construyendo tu primer firmware](newbs_building_firmware.md).
diff --git a/docs/es/newbs_learn_more_resources.md b/docs/es/newbs_learn_more_resources.md
new file mode 100644
index 000000000..413b9ffa5
--- /dev/null
+++ b/docs/es/newbs_learn_more_resources.md
@@ -0,0 +1,15 @@
1# Recursos de aprendizaje
2
3Estos recursos procuran dar miembros nuevos en la communidad QMK un mayor entendimiento de la información proporcionada en la documentación para novatos.
4
5Recursos de Git:
6
7* [Excelente tutorial general](https://www.codecademy.com/learn/learn-git)
8* [Juego de Git para aprender usando ejemplos](https://learngitbranching.js.org/)
9* [Recursos de Git para aprender más sobre Github](getting_started_github.md)
10* [Recursos de Git dirigidos específicamente a QMK](contributing.md)
11
12
13Recursos para línea de mandatos:
14
15* [Excelente tutorial general sobre la línea de mandatos](https://www.codecademy.com/learn/learn-the-command-line)
diff --git a/docs/es/newbs_testing_debugging.md b/docs/es/newbs_testing_debugging.md
new file mode 100644
index 000000000..ef7412f15
--- /dev/null
+++ b/docs/es/newbs_testing_debugging.md
@@ -0,0 +1,99 @@
1# Testeando y depurando
2
3Una vez que hayas flasheado tu teclado con un firmware personalizado estarás listo para probarlo. Con un poco de suerte todo funcionará a la primera, pero si no es así, este documento te ayudará a averiguar qué está mal.
4
5## Probando
6
7Probar tu teclado es generalmente bastante sencillo. Persiona cada una de las teclas y asegúrate de que envía la tecla correcta. Existen incluso programas que te ayudarán a asegurarte de que no te dejas ninguna tecla sin comprobar.
8
9Nota: Estos programas no los provée ni están relacionados con QMK.
10
11* [Switch Hitter](https://elitekeyboards.com/switchhitter.php) (Sólo Windows)
12* [Keyboard Viewer](https://www.imore.com/how-use-keyboard-viewer-your-mac) (Sólo Mac)
13* [Keyboard Tester](http://www.keyboardtester.com) (Aplicación web)
14* [Keyboard Checker](http://keyboardchecker.com) (Aplicación web)
15
16## Depurando
17
18Tu teclado mostrará información de depuración si tienes `CONSOLE_ENABLE = yes` en tu `rules.mk`. Por defecto la información de salida es muy limitada, pero puedes encender el modo de depuración para incrementar la información de salida. Utiliza el keycode `DEBUG` de tu keymap, usa la característica [Comando](feature_command.md) para activar el modo depuración, o añade el siguiente código a tu keymap.
19
20```c
21void keyboard_post_init_user(void) {
22 // Customise these values to desired behaviour
23 debug_enable=true;
24 debug_matrix=true;
25 //debug_keyboard=true;
26 //debug_mouse=true;
27}
28```
29
30### Depurando con QMK Toolbox
31
32Para plataformas compatibles, [QMK Toolbox](https://github.com/qmk/qmk_toolbox) se puede usar para mostrar mensajes de depuración de tu teclado.
33
34### Depurando con hid_listen
35
36¿Prefieres una solución basada en una terminal? [hid_listen](https://www.pjrc.com/teensy/hid_listen.html), provista por PJRC, se puede usar también para mostrar mensajes de depuración. Hay binarios preconstruídos para Windows,Linux,y MacOS.
37
38<!-- FIXME: Describe the debugging messages here. -->
39
40## Enviando tus propios mensajes de depuración
41
42A veces, es útil imprimir mensajes de depuración desde tu [código personalizado](custom_quantum_functions.md). Hacerlo es bastante simple. Comienza incluyendo `print.h` al principio de tu fichero:
43
44 #include <print.h>
45
46Después de eso puedes utilzar algunas funciones print diferentes:
47
48* `print("string")`: Imprime un string simple
49* `uprintf("%s string", var)`: Imprime un string formateado
50* `dprint("string")` Imprime un string simple, pero sólo cuando el modo de depuración está activo
51* `dprintf("%s string", var)`: Imprime un string formateado, pero sólo cuando el modo de depuración está activo
52
53## Ejemplos de depuración
54
55Debajo hay una colección de ejemplos de depuración del mundo real. Para información adicional, Dirígete a [Depurando/Encontrando problemas en QMK](faq_debug.md).
56
57### ¿Que posición en la matriz tiene esta pulsación de tecla?
58
59Cuando estés portando, o intentando diagnosticar problemas en la pcb, puede ser útil saber si la pulsación de una tecla es escaneada correctamente. Para hablitar la información de registro en este escenario, añade el siguiente código al `keymap.c` de tus keymaps
60
61```c
62bool process_record_user(uint16_t keycode, keyrecord_t *record) {
63 // If console is enabled, it will print the matrix position and status of each key pressed
64#ifdef CONSOLE_ENABLE
65 uprintf("KL: kc: %u, col: %u, row: %u, pressed: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed);
66#endif
67 return true;
68}
69```
70
71Ejemplo de salida
72```text
73Waiting for device:.......
74Listening:
75KL: kc: 169, col: 0, row: 0, pressed: 1
76KL: kc: 169, col: 0, row: 0, pressed: 0
77KL: kc: 174, col: 1, row: 0, pressed: 1
78KL: kc: 174, col: 1, row: 0, pressed: 0
79KL: kc: 172, col: 2, row: 0, pressed: 1
80KL: kc: 172, col: 2, row: 0, pressed: 0
81```
82
83### ¿Cuanto tiempo tardó en escanear la pulsación de una tecla?
84
85Cuando estés probando problemas en el rendimiento, puede ser útil saber la frecuenta a la cual la matríz de pulsadores se está escaneando. Para hablitar la información de registro en este escenario, añade el siguiente código al `config.h` de tus keymaps
86
87```c
88#define DEBUG_MATRIX_SCAN_RATE
89```
90
91Ejemplo de salida
92```text
93 > matrix scan frequency: 315
94 > matrix scan frequency: 313
95 > matrix scan frequency: 316
96 > matrix scan frequency: 316
97 > matrix scan frequency: 316
98 > matrix scan frequency: 316
99```