diff options
Diffstat (limited to 'docs/es/newbs_flashing.md')
| -rw-r--r-- | docs/es/newbs_flashing.md | 351 |
1 files changed, 351 insertions, 0 deletions
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 | |||
| 3 | Ahora que has construido tu fichero de firmware personalizado querrás flashear tu teclado. | ||
| 4 | |||
| 5 | ## Flasheando tu teclado con QMK Toolbox | ||
| 6 | |||
| 7 | La manera más simple de flashear tu teclado sería con [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases). | ||
| 8 | |||
| 9 | De 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 | |||
| 13 | Empieza 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 | |||
| 25 | El fichero de firmware sempre sigue el siguiente formato de nombre: | ||
| 26 | |||
| 27 | <nombre_teclado>_<nombre_keymap>.{bin,hex} | ||
| 28 | |||
| 29 | Por ejemplo, un `plank/rev5` con un keymap `default` tendrá este nombre de fichero: | ||
| 30 | |||
| 31 | planck_rev5_default.hex | ||
| 32 | |||
| 33 | Una 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 | |||
| 37 | Para 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 | |||
| 39 | Diferentes 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 | |||
| 47 | Si 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 | |||
| 56 | Haz 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 | |||
| 81 | Lo 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 | |||
| 83 | Puedes encontrar más información sobre bootloaders en la página [Instrucciones de flasheado e información de Bootloader](flashing.md). | ||
| 84 | |||
| 85 | Si 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 | |||
| 89 | Para 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 | |||
| 93 | Por 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 | |||
| 97 | Una vez que finalice de compilar, deberá aparecer lo siguiente: | ||
| 98 | |||
| 99 | ``` | ||
| 100 | Linking: .build/planck_rev5_xyverz.elf [OK] | ||
| 101 | Creating load file for flashing: .build/planck_rev5_xyverz.hex [OK] | ||
| 102 | Copying planck_rev5_xyverz.hex to qmk_firmware folder [OK] | ||
| 103 | Checking file size of planck_rev5_xyverz.hex | ||
| 104 | * File size is fine - 18574/28672 | ||
| 105 | ``` | ||
| 106 | |||
| 107 | Despué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 | |||
| 112 | Una 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 | |||
| 134 | Hay 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 | |||
| 144 | Para 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 | |||
| 148 | Por 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 | |||
| 152 | Una vez que finalice de compilar, deberá aparecer lo siguiente: | ||
| 153 | |||
| 154 | ``` | ||
| 155 | Linking: .build/lets_split_rev2_xyverz.elf [OK] | ||
| 156 | Creating load file for flashing: .build/lets_split_rev2_xyverz.hex [OK] | ||
| 157 | Checking file size of lets_split_rev2_xyverz.hex [OK] | ||
| 158 | * File size is fine - 27938/28672 | ||
| 159 | Detecting USB port, reset your controller now.............. | ||
| 160 | ``` | ||
| 161 | |||
| 162 | En 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 | ``` | ||
| 165 | Detected controller on USB port at /dev/ttyS15 | ||
| 166 | |||
| 167 | Connecting to programmer: . | ||
| 168 | Found programmer: Id = "CATERIN"; type = S | ||
| 169 | Software Version = 1.0; No Hardware Version given. | ||
| 170 | Programmer supports auto addr increment. | ||
| 171 | Programmer supports buffered memory access with buffersize=128 bytes. | ||
| 172 | |||
| 173 | Programmer supports the following devices: | ||
| 174 | Device code: 0x44 | ||
| 175 | |||
| 176 | avrdude.exe: AVR device initialized and ready to accept instructions | ||
| 177 | |||
| 178 | Reading | ################################################## | 100% 0.00s | ||
| 179 | |||
| 180 | avrdude.exe: Device signature = 0x1e9587 (probably m32u4) | ||
| 181 | avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed | ||
| 182 | To disable this feature, specify the -D option. | ||
| 183 | avrdude.exe: erasing chip | ||
| 184 | avrdude.exe: reading input file "./.build/lets_split_rev2_xyverz.hex" | ||
| 185 | avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex | ||
| 186 | avrdude.exe: writing flash (27938 bytes): | ||
| 187 | |||
| 188 | Writing | ################################################## | 100% 2.40s | ||
| 189 | |||
| 190 | avrdude.exe: 27938 bytes of flash written | ||
| 191 | avrdude.exe: verifying flash memory against ./.build/lets_split_rev2_xyverz.hex: | ||
| 192 | avrdude.exe: load data flash data from input file ./.build/lets_split_rev2_xyverz.hex: | ||
| 193 | avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex auto detected as Intel Hex | ||
| 194 | avrdude.exe: input file ./.build/lets_split_rev2_xyverz.hex contains 27938 bytes | ||
| 195 | avrdude.exe: reading on-chip flash data: | ||
| 196 | |||
| 197 | Reading | ################################################## | 100% 0.43s | ||
| 198 | |||
| 199 | avrdude.exe: verifying ... | ||
| 200 | avrdude.exe: 27938 bytes of flash verified | ||
| 201 | |||
| 202 | avrdude.exe: safemode: Fuses OK (E:CB, H:D8, L:FF) | ||
| 203 | |||
| 204 | avrdude.exe done. Thank you. | ||
| 205 | ``` | ||
| 206 | Si tienes problemas con esto, puede ser necesario que hagas esto: | ||
| 207 | |||
| 208 | sudo make <my_keyboard>:<my_keymap>:avrdude | ||
| 209 | |||
| 210 | |||
| 211 | Adicionalmente, si quisieras flashear múltiples placas, usa el siguiente comando: | ||
| 212 | |||
| 213 | make <keyboard>:<keymap>:avrdude-loop | ||
| 214 | |||
| 215 | Cuando 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 | |||
| 220 | Para 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 | |||
| 224 | Por 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 | |||
| 228 | Una vez que el firmware acabe de compilar, deberá mostrar una información de salida como esta: | ||
| 229 | |||
| 230 | ``` | ||
| 231 | Linking: .build/ergodox_ez_xyverz.elf [OK] | ||
| 232 | Creating load file for flashing: .build/ergodox_ez_xyverz.hex [OK] | ||
| 233 | Checking file size of ergodox_ez_xyverz.hex [OK] | ||
| 234 | * File size is fine - 25584/32256 | ||
| 235 | Teensy Loader, Command Line, Version 2.1 | ||
| 236 | Read "./.build/ergodox_ez_xyverz.hex": 25584 bytes, 79.3% usage | ||
| 237 | Waiting for Teensy device... | ||
| 238 | (hint: press the reset button) | ||
| 239 | ``` | ||
| 240 | |||
| 241 | En 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 | ||
| 245 | Read "./.build/ergodox_ez_xyverz.hex": 28532 bytes, 88.5% usage | ||
| 246 | Programming............................................................................................................................................................................ | ||
| 247 | ................................................... | ||
| 248 | Booting | ||
| 249 | ``` | ||
| 250 | |||
| 251 | ### BootloadHID | ||
| 252 | |||
| 253 | Para 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 | |||
| 257 | Por 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 | |||
| 261 | Una vez que el firmware acaba de compilar, mostrará una información de salida como esta: | ||
| 262 | |||
| 263 | ``` | ||
| 264 | Linking: .build/jj40_default.elf [OK] | ||
| 265 | Creating load file for flashing: .build/jj40_default.hex [OK] | ||
| 266 | Copying jj40_default.hex to qmk_firmware folder [OK] | ||
| 267 | Checking file size of jj40_default.hex [OK] | ||
| 268 | * The firmware size is fine - 21920/28672 (6752 bytes free) | ||
| 269 | ``` | ||
| 270 | |||
| 271 | Despué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 | ``` | ||
| 274 | Error opening HIDBoot device: The specified device was not found | ||
| 275 | Trying again in 5s. | ||
| 276 | ``` | ||
| 277 | |||
| 278 | Una vez que lo haga, querrás reinicar el controlador. Debería entonces mostrar una información de salida similar a esta: | ||
| 279 | |||
| 280 | ``` | ||
| 281 | Page size = 128 (0x80) | ||
| 282 | Device size = 32768 (0x8000); 30720 bytes remaining | ||
| 283 | Uploading 22016 (0x5600) bytes starting at 0 (0x0) | ||
| 284 | 0x05580 ... 0x05600 | ||
| 285 | ``` | ||
| 286 | |||
| 287 | ### STM32 (ARM) | ||
| 288 | |||
| 289 | Para 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 | |||
| 293 | Por 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 | |||
| 297 | Una vez que el firmware acaba de compilar, mostrará una información de salida similar a esta: | ||
| 298 | |||
| 299 | ``` | ||
| 300 | Linking: .build/planck_rev6_xyverz.elf [OK] | ||
| 301 | Creating binary load file for flashing: .build/planck_rev6_xyverz.bin [OK] | ||
| 302 | Creating load file for flashing: .build/planck_rev6_xyverz.hex [OK] | ||
| 303 | |||
| 304 | Size after: | ||
| 305 | text data bss dec hex filename | ||
| 306 | 0 41820 0 41820 a35c .build/planck_rev6_xyverz.hex | ||
| 307 | |||
| 308 | Copying planck_rev6_xyverz.bin to qmk_firmware folder [OK] | ||
| 309 | dfu-util 0.9 | ||
| 310 | |||
| 311 | Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc. | ||
| 312 | Copyright 2010-2016 Tormod Volden and Stefan Schmidt | ||
| 313 | This program is Free Software and has ABSOLUTELY NO WARRANTY | ||
| 314 | Please report bugs to http://sourceforge.net/p/dfu-util/tickets/ | ||
| 315 | |||
| 316 | Invalid DFU suffix signature | ||
| 317 | A valid DFU suffix will be required in a future dfu-util release!!! | ||
| 318 | Opening DFU capable USB device... | ||
| 319 | ID 0483:df11 | ||
| 320 | Run-time device DFU version 011a | ||
| 321 | Claiming USB DFU Interface... | ||
| 322 | Setting Alternate Setting #0 ... | ||
| 323 | Determining device status: state = dfuERROR, status = 10 | ||
| 324 | dfuERROR, clearing status | ||
| 325 | Determining device status: state = dfuIDLE, status = 0 | ||
| 326 | dfuIDLE, continuing | ||
| 327 | DFU mode device DFU version 011a | ||
| 328 | Device returned transfer size 2048 | ||
| 329 | DfuSe interface name: "Internal Flash " | ||
| 330 | Downloading to address = 0x08000000, size = 41824 | ||
| 331 | Download [=========================] 100% 41824 bytes | ||
| 332 | Download done. | ||
| 333 | File downloaded successfully | ||
| 334 | Transitioning to dfuMANIFEST state | ||
| 335 | ``` | ||
| 336 | |||
| 337 | #### STM32 Commands | ||
| 338 | |||
| 339 | Hay 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 | |||
| 351 | Prué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. | ||
