Raspberry for dummys - SATNOGS

SatNOGS es un proyecto de estación terrestre para la recepción de señales de satélite, en código abierto, que necesita del siguiente hardware para funcionar:

  • Una placa con microcontrolador Raspberry
  • Un sintonizador SDR
  • Una antena
  • Para la instalación necesitará un ordenador personal conectado a Internet con lector de de tarjetas SD, después funciona la estación de forma autónoma

Es un proyecto muy completopor lo que necesitará paciencia y tiempo para comprender completamente su funcionamiento y así obtener su maximo provecho.

Caracteristicas de la SatNOGS

Bandas de frecuencias

  • VHF 135-148 MHz
  • UHF  400-470 MHz

Modulaciones

 

Monitorización del estado del sistema

https://status.libre.space/ 

 


Modos RF

 

Instalación de una SatNOGS

Para poner en marcha una estación SatNOGS debemos seguir los siguientes pasos:

  • Dar de alta la estación en la web de SatNOGS. Es importante poner de forma correcta las coordenadas geográficas para el calculo de los pases de los satélites y las bandas de frecuencia de la antena para calcular que satélites podria recibir la estación.
Hay dos bandas 135-148 MHz (VHF) y 400-470 MHz (UHF), puede elegirse una o las dos

  • Disponer de una Raspberry mínimo modelo 3,  un SDR USB (SDR-RTL o compatibles) y una antena, siendo las turnstile las mas aconsejables.

  • Para instalar el software de satnoGS en la Raspberry debemos
    • Descargar desde Internet a un ordenador (no importa el Sistema Operativo que tenga, ni la potencia) la última versión disponible de SatNOGS de Gibtlab. Se trata de un fichero que se llama artifact.zip (915 MB) y que contiene la imagen y el código SHA256 que permite comprobar la integridad de la imagen una vez descargada y descomprimida (Un unzip open source es 7-Z), al descomprimir el fichero se crea en la carpeta llamada deploy, descomprimiento (Unzip) de nuevo el zip de la imagen obtenemos finalmente el fichero de la imagen 3,86 GB
    • Comprobar el SHA ejecutando en el directorio donde estan la imagen y el ficehro con el codigo SHA
      • En linux ejecutando => sha256sum -c sha256sums 
      • En windows  ejecutando => certutil -hashfile <nombre-del-archivo> sha256
      • En MacOS consultar este tutorial
    • Una imagen nos permite al copiarla tener el sistema operativo con todo el software necesario para que funcione SatNOGS instalado en la Rapberry. Para ello lo copiamos o hacemos "Flasing" la tarjeta de memoria SD de la Raspberry (Minimo 16 GB) desde su ordenador (puede necesitar un lector de tarjetas SD  USB) con la imagen para ello descargue la ultiam versión del programa Raspberry Pi IMager de su sistema operativo (1.8.5 en 12/2024) y ejecute el programa. Hay que elegir SO "user cutom" seleccionando el directorio donde tiene la imagen descargada y descomprimida. En este punto se puede configurar  ya la contraseña del usuario, la red wifi, el teclado, el uso horario lo cual le ayudará en la configuración posterior. El programa primero escribirá y después en una segunda pasada verificará la imagen creada en la memoria SD
Pantalla de Raspberry Pi imager


  • Para configurar y arrancar la SatNOGS, tras una larga lista de mensajes le pasará el control en la línea de comandos (No se asuste, anes todos los ordenadores funcionaban con línea de comandos, un sistema autónomo no precisa de un interface de escritorio gráfico, bienvenido al pasado):
    • Inserte la memoria SD en la Raspberry y enciendela
    • Configure el resto de opciones de la Rasberry ejecutando (entre ellas compruebe que SSH está activo):
      •  sudo raspi-config
    • Rearranque la Raspberry con el comando
      •  reboot
    • AHora hay que averiguar la dirección ip asignada a la raspberry, lo hacemos con el comando:
      • ip address
    • La IP también la podemos conocer en remoto con una utilidad como ipscanner
    • Desde el ordenador nos conectarnos con SSH desde un terminal (MacOS) o la línea de comandos (Windows) o con una aplicación como Putty, si tuvieramos en la Raspberry un escritorio gráfico nos conectariamos con VNC pero no es el caso:
      • Desde terminal hacemos
        • ssh <user>@<ip>
      • Si todo va bien nos aparece el siguiente mensaje: The authenticity of host '192.168.1.135 (192.168.1.135)' can't be established. ECDSA key fingerprint is SHA256:... Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '192.168.1.135' (ECDSA) to the list of known hosts.
    • Instalar SatNOGS con los siguientes comandos
        • sudo apt update
        • sudo apt upgrade
        • sudo satnogs-setup 
Si todo va bien saldrá el menú de configuración
    • Configurar las opciones básicas de  SatNOGS  
      • SATNOGS_API_TOKEN: en esta entrada debemos copiar y pegrar la API-Key que se nos facilita cuando nos damos de alta sign-on en https://network.satnogs.org/
      • SATNOGS_SOAPY_RX_DEVICE: en esta entrada para RTL-SDR y compatibles debemos escribir driver=rtlsdr 
      • SATNOGS_ANTENNA para RTL-SDR  y compatibles es RX 
      • SATNOGS_RX_SAMP_RATE  para RTL-SDR  y compatibles es recomendable 2.048e6
      • SATNOGS_RF_GAIN para RTL-SDR  y compatibles es recomendable  32.8  (Pero es una opción obsoleta que ya no aparece en el menu, asíe s que nada)
      • SATNOGS_STATION_ELEV altura en m sobre el nivel del mar ala que se encontrará la antena de la estación que estamos configurando
      • SATNOGS_STATION_ID: ID cuando se crea la estacion en la web
      • SATNOGS_STATION_LAT latitud geográfica en grados con decimales  en  la que se encontrará  la estación que estamos configurando (este dato si no lo conece lo facilita Google Maps)
      • SATNOGS_STATION_LON longitud geográfica en grados con decimales  en  la que se encontrará  la estación que estamos configurando (este dato si no lo conece lo facilita Google Maps)
Opcioens de configuración avanzada de SatNOGS que en principio no hay que modificar las que vienen por defecto

Al salir de la configuración aparecen mensajes pues termina la instalacion 


Para comprobar que todo va bien ejecutar systemctl status satnogs-client Si todo va bien vera esto en el terminal


Si todo va bien vera esto en el la dashboard web 

journalctl -f -u satnogs-client.service

  • Siempre puede por SSH y WiFi acceder a la Raspberry para
    • Configurarla  
      • sudo satnogs-setup 
    • Comprobar el funcionamiento de la estación 
      • systemctl status satnogs-client 
      • journalctl -f -u satnogs-client.service
Log del cliente de SatNOGS en el que se observa  que se ha localizado el SDR


    • Actualizar sofware
      • sudo apt update
      • sudo apt upgrade
    • Rearrancarla 
      • rebot
  • Una vez instalado y comprobado que funciona correctamente puede  borrar el software descargado


Operando una SatNOGS

El sistema funciona de la siguiente forma . Primero  recibe los datos para la recepción de un satélite desde el servidor de SatNOGS y despues de su pase se reenvian los resultados al servidor para su procesado y visualización. 

La diferencia con TinyGS es que la programación no se hace de forma automática sino de forma manual. Para ello en nuestro panel de control de la web en el apartado  "Future Passes" se deben seleccionar los satelites que se quiere que la estación reciba para ser enviados a nuestra  estación



En la pantalla vemos el nombre del satélite, en verde el inicio del pase (AOS) con su hora (UTC)  y azimut en grados (tambien en la representación polar - polar plot) y en rojo el final (LOS) con su hora y sua zimut. Entre ambos azimuts o direcciones tenermos la elevación. A la derecha el botón "schedule" nos permtie programarla


Pantalla para seleccionar (Schedule) la programación para la observaciónd e un satélite (Nos paprece tambien la banda de frecuencias)

Información que tenemos de la observación programada ("Observation was scheduled successfully")


Desde el panel de control podemos comprobar en la opción "Status log" si nuestra estación está activa sin necesidad de conectarnos por SSH

Resultado de las observaciones (waterfall, audio, data): azul (sin pena ni gloria), naranja (se ha recibido parte de las transmisiones), verde (Se ha recibido la totalidd de las transmisiones.
Unknow: El estado "Desconocido" significa que el algoritmo no pudo determinar automáticamente cómo calificar la observación. En este caso, el usuario debe brindar comentarios verificando los artefactos de la observación.

Waterfall o espectro , del cual se duda si hay señal o no y solicita el sistema que  confirmemos este punto. Si confirmamos que no hay señal el sistema pasa la observación de "unknow" a "bad" "Waterfall is vetted succesfully as "Without Signal" and observation status changed to "Bad" Ver mas en https://wiki.satnogs.org/Operation#Rating_observations

Audio para que podamos analizar su contenido

Datos, que en este caso al ser un satélite NOAA debería ser la imagen de la tierra pero que es ruido


De unn determinado satélite, en este caso la ISS, podemos obtener las estadisticas de las recepciones, y acceder a la base de datos apra obtener mas información sobre sus características https://db.satnogs.org/satellite/25544


En el scheduler es posible conocer las estaciones que han programado una determinada observación (No le encuentro mayor utilidad para un usurio)



Consejos prácticos a la hora de programar una recepción:

  • La hora de inicio  debe ser al menos 5' mas tarde que la actual (Supongo que es un margen para asegurar que se envian las ordenes a la raspberry de nuestra estación)
  • La elevación debe ser superior a por ejemplo 10º que asegure un tiempo suficiente de recepción y un nivel de señal mínimo 
  • Parece que hay un numero máximo de estaciones que pueden observar el pase de un satélite desde una zona determinada (logico pues los recursos no son infinitos) 

    • En cualquiera de los casos si no es posible progrmarlo el sistema nos dirá que "Satellite is always below horizon or no free observation time available on visible stations". (El satélite está siempre debajo del horizonte o no hay tiempo libre de observación disponible en las estaciones visibles)

  • Si mantiene la pantalla abierta haga periodicamente "Re-calculated futures passes" 
  • Para una determinada observación de un satélite seleccione la banda y modo de recepción que desea en caso de que tenga varios modos activos.

 

Observe que apra un determinado pase de un satelite puede seleccionar la frecuencia y modo de recepción si este tiene varias transmisioens activas

 

 

Referencias


    Comentarios

    Entradas populares de este blog

    SDR - Software Defined Radio - IIIb: Receptores RSP o MSI (MSI3001: MSI2500 + MSI001)

    Antena exterior logarítmica UHF/VHF : Metronic 425010 - Ia Características

    ESP32 LoRa for dummys - Inicio