Los servicios meteorológicos de todo el mundo siguen recogiendo información sobre la atmósfera mediante radiosondas que son lanzadas por centenares diariamente (Ver aquí).
Hasta ahora se ha visto cómo se puede hacer un seguimiento de las radiosondas y cómo se pueden localizar para su recuperación (Ver aquí)
En esta entrada vamos a ver qué podemos hacer con las radiosondas recuperadas, en concreto con las del modelo RS41 de Vaisala que es una de las mas populares y ademas son las que tengo en mi poder.
Interface de conexión XDATA de la RS41 de Vaisala
Algo que necesitaremos en cualquier caso es conocer con detalle la interface de conexión (XDATA Port de 10 pines) de la sonda RS41 de Vaisala
![]() |
| El conector que lleva es un |
|
- GND del FTDI ↔ GND de la RS41. (Tierra , común o negativo)
- TX del FTDI ↔ RX de la RS41 (Salida de datos de la sonda)
- RX del FTDI ↔ TX de la RS41 (entrada de datos de la sonda)
- Voltaje: Ojo, la RS41 funciona a 3.3V. Hya que asegúrate de que el jumper de la FT232RL esté en la posición de 3.3V (no 5V) para no quemar el microcontrolador de la sonda o el PIN correcto en la CP2102 SI quiere alimentar la sonda con sus baterias (La forma mas cómoda) desconecte este cable. NO ALIMENTE CON CABLE Y BATERIAS DE FORMA SIMULTÁNEA
Con solamente tres cables le basta para comunicarse con la sonda
REUTILIZAR
Lo primero que se nos puede ocurrir es sustituir las dos baterías AA que lleva para ponerla de nuevo en funcionamiento.
Sin embargo no es buena idea pues:
- Por programa solamente funciona un número de horas desde su lanzamiento, creemos que es 7h30 desde la explosión del globo, lo que vienen a ser uans 10h desde el lanzamiento. Esto se hace para que las transmisiones de una sonda no interfiera con la siguiente.
- Si lo consiguiera, cosa que no es el caso, cometería una ilegalidad pues no está autorizado a transmitir en la banda de 400-406 MHz y además entorpecería la labor de los servicios meteorológicos, que seguramente lo denunciarán a la Inspección Provincial de Telecomunicaciones, si es en España.
- Hay que conseguir conectarse a la sonda Vaisala RS41 ...
- ... y entrar en el menú de mantenimiento mediante el comando STwsv para acceder a los parámetros accesibles de los cuales dstacan:
- Ser(i)al no [Se conserva en los reinicios ] => cambiar el indicativo original de la baliza por otro . No ponga su indicativo de radioaficionado si no va a usar bandas de radioaficionado.
- TX (f)requency [Se conserva en los reinicios ] => Solo entre 400,00 - 405,99 MHz. Modificando los registros se pueden modificar para que TX fuera de esta banda, pero no se mantiene en los reinicios ( 433,500 MHz 0x75=0x21, 0x76=0x02 and 0x77=0x67)
- T(X) state [Se conserva en los reinicios ] => Permite ponerla de disable a enable y viceversa parar y reiniciar la radiosonda
- TX p(o)wer [Se conserva en los reinicios ] => de 0 (1 dBm) a 7 (20 dBm)
- Modificará los registros del RS-41 para establecer la frecuencia seleccionada en la banda de radioaficionado de 70 cm a través de la interfaz serie
- Intentará conectarse al punto de acceso WiFi preseleccionado. Si falla, se iniciará en modo Punto de Acceso y aceptará una conexión de cliente desde un teléfono móvil o portátil. Iniciar un servidor web para permitir:
- la selección de la frecuencia de transmisión RS-41
- los valores de los registros relacionados se calculan a partir de la frecuencia introducida
- el tiempo necesario para entrar en modo de suspensión profunda para ahorrar energía
- el SSID y la contraseña de WiFi para conectarse en el siguiente reinicio
- iniciar también un servidor Telnet que actuará como puente entre la conexión Telnet y la interfaz serie RS-41; esto permitirá modificar fácilmente otros parámetros RS-41, como el indicativo o la potencia de transmisión inicial. Estos parámetros se almacenarán en el RS-41 y sobrevivirán a los reinicios.
- Una placa de desarrollo Wemos D1 Mini (Disponible en Aliexpress)
- Un adaptador serie USB UART (TTL) para conectar el RS41 al PC
- FT232RL de FTDI (Disponible en Aliexpress)
![]() |
| OJO El pinout puede variar de un modelo a otro |
ls /dev/cu.SLAB*
- Si /dev/cu.Bluetooth-Incoming-Port, el CP2102 no está siendo reconocido.
- Si /dev/cu.usbserial-XXXX o /dev/cu.wchusbserialXXXX, si que lo reconoce
ioreg -p IOUSB -n "CP2102 USB to UART Bridge Controller" -l
- Saca un log en el que se puede analizar si llega a reconocerlo, si no lo quiere hacer a mano le pude pasar la tarea a https://gemini.google.com/
Se conecta el FT232RL sin cablear y se enciende el piloto azul (Le llega la alimentación).
WINDOWS
En Windows lo mas cómodo para trabajar con una conexión serie es usar la herramienta gratuita putty (Es una pena que no esté para macOS)
Los pasos a seguir son:
- Localizar el puerto COM asignado a la conexión USB Para ello conectar el FT232Rl a un puerto USB e ir a administrador de dispositivos y mirar puertos (COM y LPT), Por ejemplo COM10
- Configurar Putty. Para ello basta con ir al panel de y seleccionar el tipo de conexión como SERIAL y poner el puerto asignado (p.e. COM10) y ajustar la velocidad a 9600 e ir al panel de terminal marcar "Implicit LF in every CR" y "Implicit CR in every LF"
![]() |
| Configure el puerto COM, la velocidad 9600, data bits a 8, stop bits a 1, parity a None y Row contro,l XON/XOFF |
![]() |
| marcar "Implicit LF in every CR" y "Implicit CR in every LF" |
![]() |
| Selecciones Connection type:serial y OPEN |
- Abrir conexión haciendo OPEN en Putty
- Poner las baterias a la sonda y encenderla con el pulsador rojo
- Tras leer el mensaje de bienvenida de RS41 teclear
- STwsv
- Configurar las opciones
macOS
- Reconocimiento del dispositivo físico
- Desde el terminal teclear ls /dev/cu.usbserial*
- /dev/cu.usbserial-XXXXXXXXX
- Entrada en el registro
- Desde el terminal teclear system_profiler SPUSBDataType | grep -B 1 "FT232"
- Devuelve un error 2026-01-25 13:08:05.001 system_profiler[8578:316590] SPUSBDevice: IOCreatePlugInInterfaceForService failed 0xe00002be
- Prueba de eco (Loopback)
- Conexión física: Con un cablecito o jumper, se unen los pines TX y RX del FT232RL (De fabrica suele venir ya puesto).
- Desde el terminal teclear screen /dev/cu.usbserial-XXXXXXXX 9600
- Si se escribe "HOLA", debe aparecer "HOLA". Si se desconecta el puente, lo que escribas no aparecerá. Esto prueba que el conjunto macOS & FT232RL funciona
- Prueba de macOS+Drivers+FT232
- echo "TEST" > /dev/cu.usbserial-XXXXXXXX
- TEST
- Conectar TX, RX y GND del FT232 a los terminales correspondientes de la sonda RS41
- Inicializar correctamente el puerto USB-TTY del macOS
- stty -f /dev/cu.usbserial-XXXXXXXX 9600 cs8 -cstopb -parenb -crtscts
- Si lo conectamos a una salida con cat /dev/cu.usbserial-XXXXXXX veremos la salida, hasta que lo paremos con CTRl-C
- Es preferible este otro comando para que salga formateado el texto cat /dev/cu.usbserial-XXXXXXXX | tr '\r' '\n'
- Vaisala RS41 Radiosonde SW V2.05.06
Copyright (c) Vaisala Oyj 2022. All rights reserved.
Serial number: xxxxxxxx
Pressure module serial number: xxxxxxxx SW V2.03
Transmitter frequency: 403.00 MHz
Transmitter power: 7/7
Enabled TX - Al usar cat solo tenemos habilitado el canal de RX, para entrar datos en la sonda podemos usar
- SCREEN es inmediata pero la salida de nuevo está sin formatear con screen /dev/cu.usbserial-XXXXXXX 9600 y si tecleamos el comando STwsv, sale el menú pero sin formatear lo cual no es práctico, se sale con CTRL+A => K => Y
- MINICOM para lo cual hay que instalarlo con brew install minicom y una vez instalado podemos lanzar por terminal minicom -D /dev/cu.usbserial-XXXXXXX -b 9600. Con ESC+Z entramos en el Menu de ayuda
- C borra la bantalla y sale de la ayuda o ESC+c desde la pantalla
- O menu de configuración y sale de la ayuda o ESC+o desde la pantalla
- E eco en la pantalla y sale de la ayuda o ESC+w desde la pantalla, pero no es muy buena idea pues en la configuración creo que se hace un lio el menú
![]() |
| Para que la salida salga formateada ESC+U y ESC+A |
![]() |
| Menú de configuración (O ) 9600 8N1 por defecto |
![]() |
| Menú de configuración de terminal (T) |
- Tecleando muy despacio <INTRO> STwsv <INTRO> sale el menú formateado si se escribe muy despacio el comando y previamente se ha hecho ESC+U y ESC+A
- S => RH: 0.00 RHtu: 485526.22 Trh: 16.72 T: -250.70 Tref: 20.68 Tmcu: 23.18 C: 0.06 Rt: -26.16 Rts: 1015.62 Tp: -0.0182 Cp: -5.0402 Pressure: 1000.12 PressureT(NTC): 222
- q => Uref2: 547980 U: 481195 Uref1: 481114 TUref1: 133114 TU: 178788 TUref2: 193141 Tref1: 133113 T: 0 Tref2: 193140 Pref2: 419254 P: 323498 Pref1: 289172
- o => TX power (0-7) 7 >7
- X permite poner el trnasmisor en Enable y en disable, ideal para pruebas disabled
- B Baud rate (0=9600, 1=19200, 2=38400, 3=57600, 4=115200) 0 >0
- N No menú, ... que susto, volver a ponerlo pulsando N
- R Low battery capacity , PTU failure
![]() |
| No permite modificar la frecuencia a una de la banda de radioaficionados como 433,600 (430-440) tampoco en PRM 446 (446.0-446,2) |
- M (Abre un submenú)
- T con esta opción se puede cambiar directamente los registros en memoria que indican la frecuencia de trabajo saltan las limitaciones del menú para ello se usa esta calculadora aunque solamene sirve hasta el siguiente arranque, por eso hay un desarrollo que hace que se configure en cada arranque haciendo uso de un ESP32 muy simple. Las fases son , poner el TX en disable, modificar los registros y arrancarlo, de paso tambien se puede cambian el ID aunque hay que hacerlo con cuidado pues ese no se borra, para 433,500 MHz sería:
- Register number (00-7F) >75 Register value 16 >21
- Register number (00-7F) >76 Register value B0 >02
- Register number (00-7F) >77 Register value EC >67
- L launched
- Otros comandos útiles desde consola de macOS
- Si hubiese que modificar la velocidad, que no es el caso, a 38400
- stty -f /dev/cu.usbserial-XXXXX 38400
- Conectar los terminales
- screen /dev/cu.usbserial-XXXXXX 9600
- Ver datos
- cat /dev/cu.usbserial-XXXXXX
- cat /dev/cu.usbserial-XXXXXX| while read line; do echo "$(date +%H:%M:%S) $line"; done
- cat: /dev/cu.usbserial-XXXXX: Resource busy
- Se puede matar el proceso que tiene ocupado el puerto con
- lsof | grep xxxxx
- screen NNNN XXXX 5u CHR 22,3 0t88
- kill -9 NNNN
- Pese a matar el proceso no muestra información
- Si se alimenta la sonda RS41 con baterias o por cable se enciende el piloto en verde para pasar a rojo parpadeante (Error), al menos sabemos que hay esperanza
- Con macOS puede probar con herramientas como SerialTools (no me gustó nada) o CoolTerm (no me pareció de fiar), seguramente lo mejor es pasarse a Windows sabiendo que ya estamos a solo un paso de reconfigirar la sonda.
- Acceder al firmware de la RS41 y cambiar la identificación (Permanece para otros arranques)
- Cambiar la frecuencia a una de la banda de radioaficionado para la cual tenemos licencia, pero también se podria hacer para la banda de PRM (pe. 446,006)
- Register number (00-7F) >75 Register value >21
- Register number (00-7F) >76 Register value >B6
- Register number (00-7F) >77 Register value >C7
- Activar la transmisión
- Desenchufarlo del ordenador, manteniendo la batería
- Localizar el transmisor con MySOndy Go
- Recibir y decodificar la información con SDR+RTL y SDRangel
- La configuración ha sido laboriosa al hacerlo mediante el terminal de macOS , con Putty sobre Windows es mas sencillo.
![]() |
| SDR+RTL y SDRangel |
![]() |
| SDR+RTL y SDRangel |
2ª Parte con LOLIN D1 Mini V4.0.0 - WEMOS D1 MINI ESP32
- Crear o configurar un software que funcione con el modelo de radiosonda del que disponemos y compilarlo en la plataforma que usemos en LINUX se usa docker y en macOS make (Docker aunuqe se puede usar al correr en maquina virtual presenta problemas con USB). La mayoria del software es para la RS41 de Vaisala.
- Conseguir romper la protección de lectura que lleva el firmware de las radiosondas con el fin de que no pueda ser descargado y con ello quedé expuesto el código.
- Cargar el firmware en la radiosonda mediante un dispositivo como ST-Link STM8/STM32 v2 y comandos de consola o un software como STM32cubeProgramming u openocd
- Hacer que funcione
rs41rg
- pip (Emisión de pip para su localización)
- CW
- APRS 1,200 baudios
- CATS (Comunication and Telemetry System)
- HORUS V1 y V2 4FSK 100 baudios
- STM32F100: procesador que se montaba en radiosondas mas antiguas y para el que se ha hecho este desarrollo
- STM32L412: procesador que se monta en las radiosondas actuales (2026).
![]() |
| Identificación del procesador STM32L41x montado en la radiosonda que hace STC32Cubic Programmer |
![]() |
| Identificador visual del procesador montado en la radiosonda ARM STM32L412 y de la frecuencia del reloj 24 MHz |
- Si4032 mas antiguo pero que todavía monta
- Si4063 (o similar de la serie Si446x) que podria montarlo
![]() |
| Placa PCB211081C y chip de radio SI4032 |
![]() |
| Chip de radio SI4032 |
![]() |
| Chip UBX-10 series de U-Blox para GNSS (incluido GPS) y cuarzo del reloj a 26 MHz https://www.u-blox.com/en/product/ubx-m10-series |
![]() |
| Conjunto de chips HCU04 (Amplificador de RF) y otros |
Este firmware no es valido para las sondas RS41 actuales (2026), compruebe el procesador antes de utilizarlo
RS41-NFW
- El modelo de placa es el RSM424-D (Está impreso junto a la antena y el conector)
- El procesador es STM32L412 (Lo dice el programa STM32Cube Programmer)
- El chip de radio es el Si4032 (Se puede leer impreso sobre el chip)
RS41_rust
RS41HUP
RS41HUP_V2
- Identificador Morse que incluye indicativo de llamada y voltaje actual de la batería.
- Radiofrecuencia CW larga (longitud y número de repeticiones definidos por el usuario).
- Desconexión por bajo voltaje para evitar la destrucción de baterías recargables.
- Radiofrecuencia GPS cuando la batería está por debajo de un umbral definido por el usuario.
- las 2 baterías AA de 1,5V que lleva (Proporcionana una autonomia mínima de 240 minutos = 4 horas). Las Vaisala llevan de la marca Energizerde litio
- el cordón que la sujeta (Material del cordón: Polipropileno no tratado para UV,Tenacidad <115 N, Longitud del cordón 55 m)
- el paracaídas
- todo el circuito es muy compacto por lo que no se ve viable aprovechar ningun componente, ni circuito
- RS41-SG y RS41-SGP Guía del usuario
- Radiosonda RS41-SGP Hoja de datos
- RI41 Dispositivo de comprobación en tierra (Se comunica por Rfid 13.56 MHz)
- MW41 Estación terrestre DigiCORA
- Analizando el hardware de la RS41
- Radiosonde RS41 Firmware Flash
Las modificaciones, configuraciones y procedimientos descritos en este sitio pueden implicar riesgos técnicos, legales o de seguridad. El autor no se responsabiliza del mal funcionamiento de los equipos, daños permanentes, pérdida de garantía ni de posibles infracciones legales derivadas del uso de esta información.
El lector asume plena responsabilidad por cualquier acción que decida realizar basándose en el contenido de este blog.
© 2026 EA5JTT. Queda prohibida la reproducción total o parcial sin autorización expresa del autor.






.png)
.png)
.png)












.jpg)




No hay comentarios:
Publicar un comentario