3.- Instalación y ajuste del remoteRotator

Finalmente en esta tercera fase vamos a explicar cómo subir el programa remoteRotator, su configuración y cómo hacer de una forma simple que arranque o pare. Por supuesto, quizás lo más importante y es que al reiniciarse el S.O. el remoteRotator se arranque automáticamente.

Programa remoteRotator

Podemos descargar el programa desde el repositorio de Tobi DH1TW:

https://github.com/dh1tw/remoteRotator/releases

De los diferentes binarios disponibles, el que nos interesa para la Raspberry Pi es la versión para linux-arm.

Por ejemplo para la versión 0.4.1 el binario sería: remoteRotator-v0.4.1-linux-arm.tar.gz

Tenemos muchas formas de poner el binario del remoteRotator en la RsPi, unos seguramente optarán por descargarlo al PC y ya desde éste, subirlo por medio de un FTP a la RsPi. Mediante estos dos pasos, tendrías ya el fichero subido. Pero si quieres hacerlo directamente desde la RsPi hay un comando que nos lo permite y es usando el comando wget y a continuación el enlace al fichero del repositorio, por ejemplo para esa versión 0.4.1 el comando completo sería:

wget https://github.com/dh1tw/remoteRotator/releases/download/0.4.1/remoteRotator-v0.4.1-linux-arm.tar.gz

Como el fichero es un fichero con la extensión tar.gz (similar a los ZIP de windows)  lo vamos a descomprimir mediante el comando:

sudo tar -xvzf remoteRotator-v0.4.1-linux-arm.tar.gz

Con esto ya tenemos el binario en la RsPi aunque seguramente en la carpeta raiz o /home/pi. El fichero descomprimido tendrá el nombre remoteRotator. Vamos a copiar ahora el programa a la carpeta /usr/local/sbin que es donde habitualmente se dejaría, para ello podemos usar el programa mc (midnight commander que ya habíamos instalado en el paso 2) o bien mediante el comando:

sudo cp remoteRotator /usr/local/sbin/

Con esto ya tenemos el programa listo para poder ser ejecutado.

Fichero de Configuración

El programa remoteRotator se puede ejecutar mediante linea de comando con todas las opciones pero seguramente sea más práctico tener un fichero de configuración y ejecutar el programa indicándole la ubicación del fichero de configuración. Puedes ver todas las opciones disponibles mediante el comando de ayuda -h por ejemplo:

/usr/local/sbin/remoteRotator -h

o bien para obtener la ayuda de las opciones para el modo server lan  (son 2 de las opciones que vamos a usar) sería:

/usr/local/sbin/remoteRotator server lan -h

Como dije anteriormente me parece más práctico tener un fichero de configuración con todas sus opciones que ejecutar el programa con todas las opciones en linea de comando, luego he dejado en este enlace (https://ea4tx.com/wp-content/uploads/files/ars1.toml) un ejemplo del que yo uso. Se puede bajar mediante el comando

wget https://ea4tx.com/wp-content/uploads/files/ars1.toml

Y puesto que lo habitual es que los ficheros de configuración suelen estar en la carpeta /etc lo copiamos en esa carpeta.

sudo cp ars1.toml /etc/

Si editamos el fichero (podemos usar el editor nano o bien mediante el Midnight Commander – comando mc) vamos a personalizar algunos de los parámetros de la configuración.

En nuestro caso empleamos el puerto serie que es el ttyACM0 (por defecto será el que se emplee para el primer ARS-USB). Como todos los dispositivos están disponibles en la carpeta /dev y los ARS son vistos como puertos del tipo ttyACMx (donde x puede ser 0 para el primero, 1 para el segundo ARS, etc) mediante el comando:

ls /dev/ttyACM*

Sacamos la relación de los que están presentes. Recuerda que en este caso tienes que tener ya encendido el ARS-USB y conectado a cualquiera de los puertos USB de la RsPi. Antes de continuar para hacer que el programa arranque automaticamente como un servicio, lo mejor es comprobar manualmente el arranque y ver que funciona. Para ello si ya has editado el fichero de configuración con tus personalizaciones, ejecuta el programa a mano mediante el comando:

/usr/local/sbin/remoteRotator server lan --config /etc/ars1.toml

Si el programa arranca bien, podrás ya abrir un navegador e indicar la dirección y puerto web del programa, por ejemplo: 192.168.1.11:7071 Nota: Recuerda que si al ejecutar el programa te da un error de permisos, puede ser porque el usuario no tenga permiso de acceso al puerto serie. En el paso 2 se explicó cómo puedes agregar un usuario al grupo dialout. O bien ejecuta el programa como root anteponiendo la palabra sudo al comando. Ejemplo:

sudo /usr/local/sbin/remoteRotator server lan --config /etc/ars1.toml

Si el programa funciona ahora, revisa los permisos para el usuario con el que te has logeado (seguramente usaste el usuario pi)

Sistema de arranque

Para que al encender la Raspberry Pi  se ejecute automáticamente el programa, vamos a utilizar SystemD. Para ello dejaremos en la carpeta /etc/systemd/system un fichero como por ejemplo ars1.system En este fichero se indica el path donde se encuentra el programa, sus opciones de arranque, cuenta de usuario con el que se ejecuta, etc Puedes bajar este fichero desde mi sitio mediante el comando:

sudo wget https://ea4tx.com/wp-content/uploads/files/ars1.service

Este fichero lo vamos a copiar en la carpeta /etc/systemd/system luego el comando será:

sudo cp ars1 /etc/systemd/system/

En principio este fichero que has bajado y copiado a la carpeta /etc/systemd/system lo puedes dejar tal cual sin tener que cambiar nada en él. Ahora ya solo nos queda añadir este servicio ars1 en el gestor systemd, luego ejecutamos el comando:

sudo systemctl enable ars1.service

Con esto ya al reiniciarse la RsPi, este servicio será ejecutado automáticamente. También se puede arrancar o parar manualmente, para ello el comando de arranque sería:

sudo service ars1 start

o bien para parar:

sudo service ars1 stop

Con todo esto, ya debiéramos de tener el programa remoteRotator en ejecución, luego ya podríamos arrancar un navegador en nuestro PC y conectarnos a la URL de la Raspberry Pi con el puerto 7071 (es el puerto por defecto definido en el fichero ars1.toml para la web)

O bien abrir el ARSVCOM, configurar que el rotor es “Remote TCP/IP” y en su configuración indicar la IP y puerto TCP usado por la Raspberry Pi (p.e. 192.168.1.11 y puerto 6001)  

Show Buttons
Hide Buttons