PYWWS – RASPBIAN 4: Instalación

Segunda entrega de PYWWS, en la anterior instalamos los programas que serán necesarios mas tarde.

Antes de nada, veremos si ls raspberry tiene comunicación con la estación. Para ello ejecutamos:

Tomamos nota del ID y de la estación meteorológica, en mi caso es: 1941:8021

Creamos el directorio donde estará el programa y los datos. weather

entramos en ese directorio

La forma más fácil de instalar pywws es con el comando pip:

Actualizar pywws también es un comando de una línea:

Descargar y extraer 

Clonar el repositorio 

Paraactualizar, use git para extraercualquier cambio:

Instalar pywws 

Si ha descargado o clonado los archivos fuente de pywws, debe usar setup.py para instalarlo:

Probar la conexión de la estación meteorológica 

Ahora estás listo para probar tu instalación de pywws. Conecte la estación meteorológica (si no está conectada) y luego ejecute testweatherstation.

Si todo funciona correctamente, aparece lo siguiente:

lo mas problabe es que falle. Es un problema de permisos, apareciendo esto:

Hay varias razones por las cuales esto podría no funcionar. Lo más probable es un problema de «permisos». Esto se puede probar ejecutando el comando como root:

Si esto funciona, entonces puede permitir que su cuenta de usuario normal acceda a la estación meteorológica configurando una regla ‘udev’

Se hace creando un archivo que/etc/udev/rules.d/39-weather-station.rulescontenga lo siguiente:

Añadimos lo siguiente_

Hay que comprobar que ATTRS{idVendor}==»1941″ y ATTRS{idProduct}==»8021″ coincide con lo que leímos al principio.

Después ejecutamos el comando:

en mi caso nomreraspberry es «pi»

Desenchufo y vuelvo a conectar la conexión USB de la estación para forzar laudevaplicación de la nueva regla. Esto permite a cualquier usuario del grupoweatherstationacceder a la estación meteorológica.

volvemos a comprobar pywws-testweatherstatio

Comprobamos que responde correctamente.

Establecer el intervalo de registro de la estación meteorológica 

La estación meteorológica tiene configurado por defecto un intervalo de registro de 30 minutos. El intervalo recomendado es de 5 minutos. Para modificarlo usamos el comando setweatherstatio, para establecer el nuevo intervalo.

tarda un poco en ejecutarse.

Registrar los datos de la estación meteorológica 

Para almacenar los datos creamos el directorio data

Hay que asegurarse que tengamos la fecha y hora correctas y la zona horaria, ya que se utilizan para etiquetar los datos de la estación meteorológica. Hay que configurar NTP para sincronizar la raspberry con un ‘servidor horario’.

La primera vez que lo ejecute crea un archivo de configuración en el directorio de datos llamado ‘weather.ini’ y luego se detendrá.

Lo volemos a ejecutar . Esto puede llevar varios minutos, ya que copiará todos los datos almacenados en la memoria de la estación.

Ahora debería tener algunos archivos de datos que puede ver. Por ejemplo:

(Reemplace el año, mes y día por los que tiene datos).

Con esto, ya tenemos instalado Pywws, en el proximo capitulo vemos las opciones de configuración.

Dependencias

PYWWS – RASPBIAN 4: Dependencias

Hace unos días, un amigo mío me pidió ayuda para montar la captación de los datos, le indique que siguiera las indicaciones que tenia y me comento que no funcionaba.

Revise lo que tenia escrito y me di cuenta, que no funcionaba con Raspbian 4.

Aquí pongo como lo he instalado, primero instalaremos las dependencias para poder ejecutar PYWWS.

Actualizar el sistema

PIP

tzlocal

Proporciona información sobre su zona horaria local. Es mejor instalarlo con pip:

libusb

Instalar la última versión disponible.

Tareas flexibles de tiempo

croniter

Para realizar tareas en horas y / o fechas específicas.

python-daemon

Ejecuta el registro de pywws como un proceso de daemon UNIX adecuado.

requests

La carga a «servicios» basados en HTTP, como Weather Underground, requiere la biblioteca de solicitudes de Python:

paramiko y pycrypto

Puede usar «ftp over ssh» (sftp) para cargar archivos a su sitio web de forma segura. La carga normal solo usa los módulos estándar de Python, pero si quieres usar sftp necesitas instalar estos dos módulos

la instalación de paramiko da error, no es necesario si la subida de los archivos no es por sftp.

MQTT

Se puede usar para enviar datos meteorológicos a un agente MQTT.

Instalación

Instalando TELEGRAM

Instalación

Para instalar en Raspbian ejecutamos desde la terminal:

instalamos lo siguiente:

Ejecutamos el archivo de configuración y copilamos el programa:

da el error: configure: error: no libevent found

volvemos a ejecutar

Ejecutamos

da el error:

make: *** No rule to make target ‘tgl/scheme.tl’, needed by ‘auto/scheme.tl’. Alto.

Se ha solucionado poniendo – – recursive en:

Simplemente debemos ejecutar en la terminal:

da lo siguiente:

pi@raspberrypi:~/tg $ sudo bin/telegram-cli -k tg-server.pub -W

change_user_group: can’t find the user telegramd to switch to

Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman

Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type show_license'.

This is free software, and you are welcome to redistribute it

under certain conditions; type show_license’ for details.

Telegram-cli uses libtgl version 2.1.0

Telegram-cli includes software developed by the OpenSSL Project

for use in the OpenSSL Toolkit. (http://www.openssl.org/)

I: config dir=[/root/.telegram-cli]

[/root/.telegram-cli] created

[/root/.telegram-cli/downloads] created

> telegram-cli: tgl/mtproto-utils.c:101: BN2ull: Assertion `0′ failed.

SIGNAL received

Instalar Pywws

Instalar Git

Instalar python-dev

crear un directorio para descargar y descomprimir los ficheros de instalación

Descargar las librerías y utilidades necesarias

Descomprimir los ficheros que habíamos descargado.

Compilar e instalar Cython 0.16 (esto puede llevar un tiempo)

Editar el fichero de conflagración: setup.py

Cambiamos la linea:

a

Cambiamos la linea:

a

Copiar el fichero libudev.so.0

Descargar la ultima versión pywws http://pypi.python.org/pypi/pywws/

Conectar la estación a la Raspberry con el conector USB

Cambiamos al directorio:

Comprobamos la conexión de la estación meteorológica.

sudo python -m pywws.TestWeatherStation

Debería ver una serie de números hexadecimales si la conexión está funcionando.
Si no tiene conexión o no esta conectada:

Si esta conectada daría:
pi@raspberrypi ~/weather/pywws $ sudo python -m pywws.TestWeatherStation

Ya tenemos instalado el programa ahora falta configurarlo.

Torrent Transmission

 Instalamos el programa con el siguiente comando.

 Estaremos pendiente de que aparezca la siguiente linea:

[ ok ] Starting bittorrent daemon: transmission-daemon.

Esto nos habrá iniciado el cliente. Después hay que configurarlo a nuestro gusto. Para ello vdetendremos el programa con el siguiente comando

Estaremos pendiente de que aparezca la siguiente linea:

[ ok ] Starting bittorrent daemon: transmission-daemon.

 Esto nos habrá iniciado el cliente. Después hay que configurarlo a nuestro gusto. Para ello detendremos el programa con el siguiente comando:

 Carpetas de almacenamiento

 
Debemos utilizar el dispositivo de almacenamiento externo que hayamos instalado, nunca en la tarjeta SD. Así que vamos a crear las carpetas oportunas dentro de nuestro pendrive.
En mi caso lo tengo montado en /media/almacen , añadiremos una carpeta que se llame torrent y  dentro de esta las carpetas finish y temp. También hay que darle todos los permisos para que el  cliente torrent pueda acceder a ellas.
Los comandos son los siguientes:
 

 
De esta forma hemos creado los ficheros de almacenamiento del torrent
 

Configuración Torrent

Editaremos el archivo de configuración con el comando:
 

 
Este es el directorio donde se guardaran los archivos descargados.
 
Cambiamos:

 
por:
 

 
Si lo ponemos verdadero le indicamos que guarde las partes de los torrents descargados en una  carpeta diferente a los archivos finalizados.
“incomplete-dir-enabled”: true
 
Directorio donde se guardaran las partes de los torrents
“incomplete-dir”: “/media/almacen/torrent/temp”
 
Habilita el RPC, es decir el que aplicaciones puedan conectarse al servicio, como la propia pagina web.
“rpc-enabled”: true
 
Por defecto viene a 127.0.0.1 si lo ponemos a 0.0.0.0 indicamos que cualquiera puede conectarse.
“rpc-bind-address”: “0.0.0.0′′
 
Aqui pondremos el usuario que queramos utilizar para hacer login en la pagina WEB de gestión.
“rpc-username”: “transmission”,
 
Esta es la password del usuario por defecto que es “transmission” igual que el usuario, la contraseña esta cifrada.
“rpc-password”: “{ac385a17c99c16caa7a3f218ae7955af61bb33f2moBazqG.”
 
Esto habilita una lista de direcciones que pueden acceder mediante RPC por ejemplo la web.
“rpc-whitelist-enabled”: false,
 
Ahora salimos y guardamos con CTRL+X. A continuacción arrancamos de nuevo el programa con :
sudo /etc/init.d/transmission-daemon start
 

Acceso web

Ahora en cualquier navegador de otro ordenador introducimos la dirección ip de la raspberry :9091
en mi caso 192.168.1.50:9091
 
Nos pedira el usuario y la contraseña, en caso de tenerlos por defecto son transmission y transmission.
 
Ahora solo nos queda añadir torrent, bien sea mediante la dirección url o mediante el archivo  torrent. Una vez descargados podemos sacar el pendrive de la raspberry y pasarlo al PC o podemos copiar el archivo de la raspberry al PC mediante la red LAN.