Meteoclimatic
Software => WeeWX => Mensaje iniciado por: jantoni en 20 de Agosto de 2016, 13:31:10
-
Este puede ser un buen comienzo para la instalación de Weewx Meteoclimatizada
Recordad que la Orenge Pi One tiene un precio de 10-11 euros puesta en casa.
Descarga de imagen:
http://mirror.igorpecovnik.com/Armbian_5.14_Orangepione_Debian_jessie_3.4.112.7z
En este caso es un Jessie server. Por tanto no tendremos escritorio, solo consola.
Lo grabamos en la tarjeta de memoria:
jantoni@Vostro:~/Escritorio/Orange$ sudo dd if=Armbian_5.14_Orangepione_Debian_jessie_3.4.112.raw of=/dev/sdc bs=1M
Nos aseguramos que no quede nada por escribir en la cache de nuestro PC
jantoni@Vostro:~/Escritorio/Orange$ sudo sync
Extraemos la tarjeta y arrancamos.
Según la página web, el primer arranque tardará unos 3 minutos.
http://www.armbian.com/orange-pi-one/
First boot takes longer (around 3min) than usual (20s) because it updates package list, regenerates SSH keys and expand partition to fit your SD card. It might reboot one time automatically. Second boot also take little longer (around 3min) because it creates 128MB emergency swap space
Arrancamos y esperamos
Al cabo de un tiempo vemos que en el router aparece un nuevo dispositivo que ha solicitado dirección DHCP
Ataquemos
ssh root@192.168.0.101
Usuario: root
Password: 1234
Nos pide que cambiemos la clave
Y a continuación nos pide que generemos un usuario que no sea root
Creamos, por ejemplo meteo
Nos pide la clave para "meteo"
A continuación nos pide que modifiquemos la resolución de pantalla.....como voy a trabajar con la consola, me da un poco igual. Otro día probamos el sistema de escritorio....tengo que comprar un adaptador HDMI VGA
Ahora, bueno luego, probaremos la instalación automatizada
-
Bueno....antes de irma a la ducha y a comer, miro cosas básicas....que tenga servidor ntp para poner la hora, el sistema de log, etc
root@orangepione:/var# ls /etc/init.d
alsa-utils checkroot.sh halt kbd motd networking README sendsigs udev
armhwinfo console-setup haveged keyboard-setup mountall-bootclean.sh ntp reboot single udev-finish
bootlogs cpufrequtils hddtemp keymap.sh mountall.sh procps resize2fs skeleton umountfs
bootmisc.sh cron hdparm killprocs mountdevsubfs.sh rc rmnologin ssh umountnfs.sh
brcm40183-patch dbus hostapd kmod mountkernfs.sh rc.local rsync sudo umountroot
checkfs.sh fake-hwclock hostname.sh lirc mountnfs-bootclean.sh rcS rsyslog sysfsutils unattended-upgrades
checkroot-bootclean.sh firstrun hwclock.sh loadcpufreq mountnfs.sh rc.usbsrvd screen-cleanup sysstat urandom
Tenemos lo que necesitamos, ntp, rsyslog, etc, etc
-
Bueno....mientras me ponen la sopa, pues me he ido al ordenador que tengo en el salón y desde donde os controlo a todos ;D ;D ;D y he realizado la instalación con el script actual.
Cero problemas de instalación y weewx se ha quedado funcionando con la Ventus W831.
Toca luego ver que hay que corregir....sobre todo ver los directorios, ya que la versión instalada es la 3.50
-
Perfecto, se han generado las primeras páginas y puede acceder perfectamente
http://ip/weewx
De momento todo bien.
-
Bien.....este es el código del script en el momento inicial:
#!/bin/bash
sudo apt-get update
sudo apt-get upgrade --yes
cd ~
wget http://www.weewx.com/downloads/weewx_3.5.0-1_all.deb
sudo apt-get install --yes libjbig0 liblcms2-2 libtiff5 libwebp5 libwebpdemux1 libwebpmux1 python-cheetah python-configobj python-imaging python-pil python-serial python-six python-usb apache2 php5 php5-sqlite libapache2-mod-php5
dpkg -i wee*.deb
ln -s /var/www/weewx /var/www/html/weewx
swapoff --all
apt-get purge --yes fake-hwclock dphys-swapfile
echo ":programname,startswith,\"weewx\"" /var/log/weewx.log | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null
echo ":programname,startswith,\"weewx\"" \~\ | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null
echo -e "/var/log/weewx.log {\n weekly\n missingok\n rotate 52\n compress\n delaycompress\n notifempty\n create 644 syslog adm\n sharedscripts\n postrotate\n reload rsyslog > /dev/null 2>&1\n endscript\n}" | sudo tee -a /etc/logrotate.d/weewx > /dev/null
sudo service rsyslog restart
-
Peticiones del oyente:
- Programar envío a Meteoclimatic (codigo estación, SIG y plantilla). Incorporar rutina de envío a Meteoclimatic por PHP
- Incorporar un skin "oficial". A la espera de que alguien presente sus propuestas de skin.
- ????
-
El script en desarrollo estará en este enlace:
https://drive.google.com/file/d/0B3z9VwkcZjjWdWlRdktHbWZNOWc/view?usp=sharing
Insisto, en desarrollo.
El actual y vigente, probado y requeteprobado está en http://forum.meteoclimatic.net/index.php/topic,510.msg3479.html#msg3479
Podemos ir incorporando todo lo que queramos.....yo de momento, espero un libro de bash para empezar a programar scripts......lo que he hecho hasta ahora son chapucillas.
Esto está abierto a todos los que quieran participar. Si alguien con una raspberry quiera ir probando, mejor que mejor, yo no puedo, de momento, probar en raspberry pi y en otras plataformas.
El que esté interesado, que me mande un MP para darle acceso a la edición del script.
-
Bueno jantoni yo me animo cuando me llegue la Orange Pi PC a ser conejillo de Indias ;D ;D
Mientras ya iré poniéndome al día con todo esto que es nuevo para mí.
Como sabes mi intención es hacer funcionar un sensor de temperatura DS18B20 con la Orange Pi y si puede ser con Weewx.
A ver si la gente se anima en todo este proyecto y podemos hacer cosas interesantes con estos bichos y estaciones o sensores sueltos.
saludos
-
Como ya te dije, el tema de ese sensor debe hacerse mediante el GPIO y algún script que lo lea para pasarlo a Weewx.
No recuerdo los enlaces que te pasé, pero si te vas a poner a ello, te animo a que abras un hilo para ir poniendo la evolución.
Yo de momento, voy a trompicones con el bash. No lo he usado nunca y me parece que el inventor debía ser disléxico porque es lo menos intuitivo que he visto en mi vida.
De momento, en plan chapuza, he conseguido que el script baje una plantilla de Weewx para Meteoclimatic y la rellene con los datos de la estación.
Cada línea me cuesta media hora de trabajo y búsqueda en Google
-
De momento, esto es el parto que he hecho:
#!/bin/bash
# Preguntar por codigo estacion Meteoclimatic
echo "Por favor, introduzca el código de estación en Meteoclimatic (ejemplo ESMAD2800000028522A): "
read estacion_cod
echo "Has introducido" $estacion_cod
estacion_cod="*COD=$estacion_cod"
# Preguntar por el SIG de la estacion en Meteoclimatic
echo "Por favor, introduzca el SIG facilitado por Meteoclimatic (ejemplo ESMAD2800000028522A): "
read estacion_sig
echo "Has introducido" $estacion_sig
estacion_sig="*SIG=$estacion_sig"
# Descargar una plantilla de algún sitio
wget http://www.googledrive.com/host/0B3z9VwkcZjjWaHNFQzNBUmZCRHc
mv 0B3z9VwkcZjjWaHNFQzNBUmZCRHc weewx_plantilla
# Editar la plantilla con los datos incorporados anteriormente
cat weewx_plantilla | sed "s/*COD=/$estacion_cod/g" > weewx_plantilla1
cat weewx_plantilla1 | sed "s/*SIG=/$estacion_sig/g" > weewx_plantilla
rm -f weewx_plantilla1
#
# Descargar skin Meteoclimatic
#
# Descomprimir skin en /etc/weewx/skins/Standard/
#
# Descargar rutina de envío de datos a Meteoclimatic
#
# Configuración de la rutina con los datos introducidos
#
# Modificar /etc/crontab para envío de datos con la rutina
#
# Se podría automatizar la descarga de la última versión?????? Ahora hay que modificar el script con la version a descargar
#
#
# COPIAR EL SCRIPT YA PROBADO PARA LA INSTALACION DE WEEWX.
#
#
#
# Una vez instalado Weewx hay que modificar /etc/weewx/skins/Standard/skin.conf para generar la plantilla
#
# Modificar tanto en skin.conf como en weewx.conf la unidades de visualización para que aparezcan kmph y mm
#
# Modificar en skin.conf la linea con las direcciones del viento por la siguiente
# directions = N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW, N
# Con ello conseguimos que cuando el viento sea 0 no nos aparece N/A en la dirección y aparente que no haya viento
#
# Sin mas cuestiones que ver en el skin hasta que no haya un skin para publicar
Se irán ocurriendo más cosas.....a vosotros también, claro....pero que tengan que ver con Meteoclimatic....no con otras redes
-
Buenas tardes jantoni.
Creo que quizás quede más claro que la quinta línea en vez de como está:
echo "Por favor, introduzca el SIG facilitado por Meteoclimatic (ejemplo ESMAD2800000028522A): "
la redactaras de esta otra manera:
echo "Por favor, introduzca el SIG facilitado por Meteoclimatic (código alfanumérico de 32 caracteres): "
o algo parecido.
Siento poder aportar solo esto, es poco.
Saludos.
-
Ok....si....estamos en preliminares....gracias....lo cambio, aunque solo en mi script....cuando haga algún avace importante, ya lo iré publicando
-
He pensado que esta puede ser una buena copia de seguridad.....me doy mucho miedo....y cuando me pongo a borrar, no tengo rival....
Hoy un par de cosillas más....he subido la utilidad de linux a un dropbox, porque bajarla de meteoclimatic me está costando con wget.....se descomprime.....y poco más....mañana a configurar la rutina de subida
#!/bin/bash
# Preguntar por codigo estacion Meteoclimatic
echo "Por favor, introduzca el código de estación en Meteoclimatic (ejemplo ESMAD2800000028522A): "
read estacion_cod
echo "Has introducido" $estacion_cod
estacion_cod="*COD=$estacion_cod"
# Preguntar por el SIG de la estacion en Meteoclimatic
echo "Por favor, introduzca el SIG facilitado por Meteoclimatic (código alfanumérico de 32 caracteres): "
read estacion_sig
echo "Has introducido" $estacion_sig
estacion_sig="*SIG=$estacion_sig"
# Descargar una plantilla de algún sitio
wget http://www.googledrive.com/host/0B3z9VwkcZjjWaHNFQzNBUmZCRHc
mv 0B3z9VwkcZjjWaHNFQzNBUmZCRHc weewx_plantilla
# Editar la plantilla con los datos incorporados anteriormente
cat weewx_plantilla | sed "s/*COD=/$estacion_cod/g" > weewx_plantilla1
cat weewx_plantilla1 | sed "s/*SIG=/$estacion_sig/g" > weewx_plantilla
rm -f weewx_plantilla1
#
# Descargar skin Meteoclimatic
#
# Descomprimir skin en /etc/weewx/skins/Standard/
#
# Descargar rutina de envío de datos a Meteoclimatic
sudo mkdir /root/meteoclimatic
sudo wget https://www.dropbox.com/s/fdih49waio5f9p4/star_meteoclimatic_linux.tar.gz -O /root/meteoclimatic/star_meteoclimatic_linux.tar.gz
# Descomprimir la rutina de envio en /root/meteoclimatic
sudo tar -xvzf /root/meteoclimatic/star_meteoclimatic_linux.tar.gz -C /root/meteoclimatic
# Configuración de la rutina con los datos introducidos
# Modificar /etc/crontab para envío de datos con la rutina
#
# Se podría automatizar la descarga de la última versión?????? Ahora hay que modificar el script con la version a descargar
#
#
# COPIAR EL SCRIPT YA PROBADO PARA LA INSTALACION DE WEEWX.
#
#
#
# Una vez instalado Weewx hay que modificar /etc/weewx/skins/Standard/skin.conf para generar la plantilla
#
# Modificar tanto en skin.conf como en weewx.conf la unidades de visualización para que aparezcan kmph y mm
#
# Modificar en skin.conf la linea con las direcciones del viento por la siguiente
# directions = N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW, N
# Con ello conseguimos que cuando el viento sea 0 no nos aparece N/A en la dirección y aparente que no haya viento
#
# Sin mas cuestiones que ver en el skin hasta que no haya un skin para publicar