In English? Here!
Intentando actualizar el firmware de mi USDR+ Red Corners (¿a quíen se le habrá ocurrido primero identificarlo así?), desaparecí el bootloader y no volvió a arrancar.
Anteriormente había cambiado el encoder rotativo, pues este control se dañó al poco tiempo de recibido el transceptor, pero su reemplazo subía las frecuencias al girar en sentido antihorario y las bajaba al girar en sentido horario, al revés de lo deseable.
Otro error era que desde fábrica nunca apagó la pantalla aunque el parámetro 10.1 de la configuración se estableciera en OFF.
Después de 3 horas intentando cargar el bootloader sin éxito, descubrí que la secuencia era bastante fácil, se necesita:
- Arduino Nano (o Arduino Uno).
- 6 Cables con conectores para conectar el USDR+ al Arduino.
- IDE de Arduino https://www.arduino.cc/en/software , yo instalé la última version 2.3.2
- Avrdudess https://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/ version 2.11
- Firmware 4.00d, mil gracias GW8RDI por tan buen trabajo!: https://github.com/GW8RDI/uSDXOpen/blob/main/usdxREDCORNERS.ino
Los pasos que hice fueron estos:
- Conectar el Arduino a la computadora mediante su cable USB.
- En Arduino IDE:
- Seleccionar Archivo – Ejemplos – Arduino ISP. Cargará un sketch de ejemplo.
- En el menú Herramientas, seleccionar la placa «Arduino Uno» o «Arduino Nano» (con el procesador «ATmega328P»), el puerto y programador «Arduino como ISP».
- Subir el sketch de ejemplo al Nano mediante Programa – Subir!
- Desconectar el Arduino de la pc y conectarlo al USDR+ Red Corners, mediante sus 6 pines interiores (ver abajo) . Hay que retirar la pantalla para acceder al conector. El USDR+ permanece apagado.
- Volver a conectar el Arduino Nano a la pc, los Leds del trasceptor se encenderán.
- Seguimos en Arduino IDE:
- Abrir el firmware 4.00d descargado usdxREDCORNERS.ino), IDE indicará que creará un directorio, aceptarlo.
- Personalizar el firmware en las líneas del indicativo MY_CALLSIGN y MY_CALLSIGN_PADDED, están después de la línea 170.
- Mi encoder incrementaba la frecuencia en sentido antihorario, en lugar de bajarla, la solución es comentar //#define SWAP_ROTARY (por la línea 192).
- Probar la compilación desde el menú Programa – Verificar/Compilar
- Ir al menú Programa – Exportar Binarios Compilados. Se guardará con extensión .hex en el mismo directorio que se creó automáticamente cuando se abrió el firmware.
- Abrir Avrdudess y configurarlo así:
- Programador: Atmel AVR ISP
- Port: el mismo que funcionó al subir el ejemplo al Arduino desde Arduino IDE
- Baud rate: 19200
- MCU: ATmega328P
- Flash: La ruta al archivo exportado por el Arduino IDE con extensión .hex, usar el que incluye el bootloader, lo indica en su nombre.
- Marcar la casilla Borrar Flash y Eprom
- Fuses: L es 0xFF, H es 0xD6 y E es 0xFD, no olvidar marcar la casilla Set fuses
- Click en Programar!
Si todo fue bien, los Led del USDR+ Red Corners parpaderán entre rojo y verde unos segundos y luego quedarán en verde. Desconectar el USB del Arduino Nano y los cables del USDR+ Red Corners. Reponer la pantalla y encender.
Después de comprobar que el uSDR+ encendió, apagarlo y reiniciar con la configuración por default (manteniendo presionado el botón MENU mientras se enciende).

La conexión entre USDR+ y Arduino Nano es esta:
- VCC -> 5V
- MOSI -> D11
- GND -> GND
- MISO -> D12
- SCK -> D13
- RST -> D10
Si usas Arduino Uno, las conexiones son estas:
- VCC -> 2
- MOSI -> 4
- GND -> 6
- MISO -> 1
- SCK -> 3
- RST -> 5

