Bueno, creo que tenemos que recapitular, porque me da la sensación que tú no sabes lo que te estamos diciendo, y nosotros no acabamos de entender lo que te pasa.
Como ya te hemos dicho, el log es la fuente de sabiduría y el que nos va a decir lo que pasa por las tripas de Weewx.
Así que, vamos por partes.
Lo primero es tener un log en condiciones. La instalación de Weewx pone el log con todo el sistema. Y eso no nos interesa.
Vamos a parar primero Weewx.
sudo /etc/init.d/weewx stop
Ahora vamos a generar un log específico para Weewx
sudo echo ":programname,startswith,\"weewx\"" /var/log/weewx.log | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null
sudo echo ":programname,startswith,\"weewx\"" \~\ | sudo tee -a /etc/rsyslog.d/99-weewx.conf > /dev/null
echo -e "/var/log/weewx.log {\n $WEELOGPER\n missingok\n rotate $WEELOGMAX\n compress\n delaycompress\n notifempty\n sharedscripts\n postrotate\n /etc/init.d/rsyslog stop\n /etc/init.d/rsyslog start\n endscript\n}" | sudo tee -a /etc/logrotate.d/weewx > /dev/null
service rsyslog restart
Ya tenemos un log preparado solo para Weewx. Este log estará en el fichero /var/log/weewx.log
Ahora, antes de hacer nada más, vamos a comprobar que Weewx se comunica con la consola de la Davis.
sudo weewxd /etc/weewx/weewx.con
Veremos como pasan los paquetes de datos:
jantoni@orangepipc:~$ sudo weewxd /etc/weewx/weewx.conf
LOOP: 2020-04-19 15:39:41 UTC (1587310781) appTemp: 65.1722540623, barometer: 29.765, cloudbase: 6433.98862952, consBatteryVoltage: 4.33, dateTime: 1587310781, dayET: 0.0, dayRain: 0.19685039375, dewpoint: 48.0148500301, extraAlarm1: 0, extraAlarm2: 0, extraAlarm3: 0, extraAlarm4: 0, extraAlarm5: 0, extraAlarm6: 0, extraAlarm7: 0, extraAlarm8: 0, forecastIcon: 7, forecastRule: 172, heatindex: 67.3, humidex: 68.7142229048, inDewpoint: 56.3623033737, inHumidity: 56.0, insideAlarm: 0, inTemp: 73.0, leafWet1: 0.0, leafWet2: 0.0, leafWet3: 0.0, leafWet4: 0.0, maxSolarRad: 566.379986785, monthET: 0.0, monthRain: 1.5275590555, outHumidity: 50.0, outsideAlarm1: 0, outsideAlarm2: 0, outTemp: 67.3, rain: None, rainAlarm: 0, rainRate: 0.0, soilLeafAlarm1: 0, soilLeafAlarm2: 0, soilLeafAlarm3: 0, soilLeafAlarm4: 0, soilMoist1: 0.0, soilMoist2: 0.0, soilMoist3: 0.0, soilMoist4: 0.0, stormRain: 0.5826771655, stormStart: 1587168000, sunrise: 1587277740, sunset: 1587326220, trendIcon: -20, txBatteryStatus: 1, usUnits: 1, windchill: 67.3, windDir: 348.0, windGust: 3.0, windGustDir: 348.0, windSpeed: 3.0, windSpeed10: 2.0, yearET: 0.0, yearRain: 2.76377952825
LOOP: 2020-04-19 15:39:41 UTC (1587310781) appTemp: 65.1722540623, barometer: 29.765, cloudbase: 6433.98862952, consBatteryVoltage: 4.33, dateTime: 1587310781, dayET: 0.0, dayRain: 0.19685039375, dewpoint: 48.0148500301, extraAlarm1: 0, extraAlarm2: 0, extraAlarm3: 0, extraAlarm4: 0, extraAlarm5: 0, extraAlarm6: 0, extraAlarm7: 0, extraAlarm8: 0, forecastIcon: 7, forecastRule: 172, heatindex: 67.3, humidex: 68.7142229048, inDewpoint: 56.3623033737, inHumidity: 56.0, insideAlarm: 0, inTemp: 73.0, leafWet1: 0.0, leafWet2: 0.0, leafWet3: 0.0, leafWet4: 0.0, maxSolarRad: 566.379986785, monthET: 0.0, monthRain: 1.5275590555, outHumidity: 50.0, outsideAlarm1: 0, outsideAlarm2: 0, outTemp: 67.3, rain: 0.0, rainAlarm: 0, rainRate: 0.0, soilLeafAlarm1: 0, soilLeafAlarm2: 0, soilLeafAlarm3: 0, soilLeafAlarm4: 0, soilMoist1: 0.0, soilMoist2: 0.0, soilMoist3: 0.0, soilMoist4: 0.0, stormRain: 0.5826771655, stormStart: 1587168000, sunrise: 1587277740, sunset: 1587326220, trendIcon: -20, txBatteryStatus: 1, usUnits: 1, windchill: 67.3, windDir: 348.0, windGust: 3.0, windGustDir: 348.0, windSpeed: 3.0, windSpeed10: 2.0, yearET: 0.0, yearRain: 2.76377952825
Como ya vemos que Weewx recibe los paquetes (LOOP) de la consola de la Davis, paramos con CTRL-C ya que esto solo nos interesa para probar.
Si no aparecen estos paquetes (LOOP) entonces tenemos un problema de comunicación.
A continuación vamos a interrogar a la consola por sus datos:
sudo wee_device /etc/weewx/weewx.conf --info
Tendremos el resultado aquí:
jantoni@orangepipc:~$ sudo wee_device /etc/weewx/weewx.conf --info
Using configuration file /etc/weewx/weewx.conf
Using Vantage driver version 3.1.1 (weewx.drivers.vantage)
Querying...
Davis Vantage EEPROM settings:
CONSOLE TYPE: Vantage Vue
CONSOLE FIRMWARE:
Date: Jul 28 2009
Version: 2.11
CONSOLE SETTINGS:
Archive interval: 300 (seconds)
Altitude: 625 (meter)
Wind cup type: large
Rain bucket type: 0.2 mm
Rain year start: 1
Onboard time: 2020-04-19 15:42:37
CONSOLE DISPLAY UNITS:
Barometer: mbar
Temperature: degree_10C
Rain: mm
Wind: km_per_hour
CONSOLE STATION INFO:
Latitude (onboard): +40.3°
Longitude (onboard): -3.5°
Use manual or auto DST? MANUAL
DST setting: OFF
Use GMT offset or zone code? ZONE_CODE
Time zone code: 21
GMT offset: N/A
Temperature logging: LAST
Retransmit channel: OFF (0)
TRANSMITTERS:
Channel Receive Repeater Type
1 active none iss
2 active none (N/A)
3 active none (N/A)
4 active none (N/A)
5 active none (N/A)
6 active none (N/A)
7 active none (N/A)
8 active none (N/A)
RECEPTION STATS:
Total packets received: 20805
Total packets missed: 1065
Number of resynchronizations: 3
Longest good stretch: 2259
Number of CRC errors: 12
BAROMETER CALIBRATION DATA:
Current barometer reading: 29.766 inHg
Altitude: 2051 feet
Dew point: 49 F
Virtual temperature: 60 F
Humidity correction factor: 2.9
Correction ratio: 1.076
Correction constant: +0.000 inHg
Gain: 0.000
Offset: -28.000
OFFSETS:
Wind direction: +0 deg
Inside Temperature: +0.0 F
Inside Humidity: +0 %
Outside Temperature: +0.0 F
Outside Humidity: +0 %
Puede que a ti te salga un poco diferente, ya que yo uso una Davis Vue, pero sin datalogger.
Una vez que vemos que todo está en orden, tenemos que decidir por el tema de la antigua base de datos de Wview.
Yo, personalmente, la copiaría a Weewx
Para copiarla tan solo tienes que hacer:
sudo cp /directorioorigen/ficheroorigen /var/lib/weewx/weewx.sdb
Ahora solo queda arrancar Weewx, pero antes vamos a abrir una nueva consola de Linux para ver el log.
Abrimos una nueva consola y tecleamos
sudo tail -f /var/log/weewx/log
y arrancamos, en la otra consola Linux, Weewx
sudo /etc/init.d/weewx start
Si el driver y la configuración de Weewx no tiene problemas críticos, aparecerá esto
jantoni@orangepipc:~$ sudo /etc/init.d/weewx start
[ ok ] Starting weewx (via systemctl): weewx.service.
jantoni@orangepipc:~$
Que nos indica que el servidor Weewx ha arrancado y se ha puesto a currar.
Y, en la ventana, o consola Linux del log, nos aparecerá algo como esto:
jantoni@orangepipc:~$ sudo tail -f /var/log/weewx.log
[sudo] password for jantoni:
Apr 19 15:43:16 localhost weewx[14421]: engine: Initializing weewx version 3.9.2
Apr 19 15:43:16 localhost weewx[14421]: engine: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
Apr 19 15:43:16 localhost weewx[14421]: engine: Platform Linux-5.4.20-sunxi-armv7l-with-debian-10.3
Apr 19 15:43:16 localhost weewx[14421]: engine: Locale is 'LC_CTYPE=es_ES.UTF-8;LC_NUMERIC=es_ES.UTF-8;LC_TIME=es_ES.UTF-8;LC_COLLATE=es_ES.UTF-8;LC_MONETARY=es_ES.UTF-8;LC_MESSAGES=en_US.UTF-8;LC_PAPER=es_ES.UTF-8;LC_NAME=es_ES.UTF-8;LC_ADDRESS=es_ES.UTF-8;LC_TELEPHONE=es_ES.UTF-8;LC_MEASUREMENT=es_ES.UTF-8;LC_IDENTIFICATION=es_ES.UTF-8'
Apr 19 15:43:16 localhost weewx[14421]: engine: pid file is /var/run/weewx.pid
Apr 19 15:43:16 localhost weewx[14411]: Starting weewx weather system: weewx.
Apr 19 15:43:16 localhost weewx[14425]: engine: Using configuration file /etc/weewx/weewx.conf
Apr 19 15:43:16 localhost weewx[14425]: engine: Loading station type Vantage (weewx.drivers.vantage)
Apr 19 15:43:16 localhost weewx[14425]: engine: StdConvert target unit is 0x1
Apr 19 15:43:16 localhost weewx[14425]: wxcalculate: The following values will be calculated: barometer=prefer_hardware, windchill=prefer_hardware, dewpoint=prefer_hardware, appTemp=prefer_hardware, rainRate=prefer_hardware, windrun=prefer_hardware, heatindex=prefer_hardware, maxSolarRad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware, inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, cloudbase=prefer_hardware
Apr 19 15:43:16 localhost weewx[14425]: wxcalculate: The following algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS
Apr 19 15:43:16 localhost weewx[14425]: engine: Archive will use data binding wx_binding
Apr 19 15:43:16 localhost weewx[14425]: engine: Record generation will be attempted in 'software'
Apr 19 15:43:16 localhost weewx[14425]: engine: Using archive interval of 300 seconds (software record generation)
Apr 19 15:43:16 localhost weewx[14425]: engine: Using binding 'wx_binding' to database 'weewx.sdb'
Apr 19 15:43:16 localhost weewx[14425]: manager: Starting backfill of daily summaries
Apr 19 15:43:16 localhost weewx[14425]: restx: StationRegistry: Station will be registered.
Apr 19 15:43:16 localhost weewx[14425]: restx: Wunderground-RF: Data for station IMADRIDR2 will be posted
Apr 19 15:43:16 localhost weewx[14425]: restx: PWSWeather: Data for station JANTONI will be posted
Apr 19 15:43:16 localhost weewx[14425]: restx: CWOP: Data for station EA4TN will be posted
Apr 19 15:43:16 localhost weewx[14425]: restx: WOW: Data for station 454086484 will be posted
Apr 19 15:43:16 localhost weewx[14425]: restx: AWEKAS: Data will be uploaded for user jantoni
Apr 19 15:43:16 localhost weewx[14425]: restx: WeatherCloud: service version is 0.11
Apr 19 15:43:16 localhost weewx[14425]: restx: WeatherCloud: Data will be uploaded for id=f3ae348cde14312d
Apr 19 15:43:16 localhost weewx[14425]: restx: Windy: version is 0.6
Apr 19 15:43:16 localhost weewx[14425]: restx: Windy: Data will be uploaded to https://stations.windy.com/pws/update
Apr 19 15:43:16 localhost weewx[14425]: engine: Starting up weewx version 3.9.2
Apr 19 15:43:16 localhost weewx[14425]: engine: Clock error is 3.09 seconds (positive is fast)
Apr 19 15:43:17 localhost weewx[14425]: engine: Starting main packet loop.
Apr 19 15:45:15 localhost weewx[14425]: manager: Added record 2020-04-19 15:45:00 UTC (1587311100) to database 'weewx.sdb'
Apr 19 15:45:15 localhost weewx[14425]: manager: Added record 2020-04-19 15:45:00 UTC (1587311100) to daily summary in 'weewx.sdb'
Apr 19 15:45:16 localhost weewx[14425]: restx: StationRegistry: Published record 2020-04-19 15:45:00 UTC (1587311100)
Apr 19 15:45:16 localhost weewx[14425]: restx: WeatherCloud: Published record 2020-04-19 15:45:00 UTC (1587311100)
Apr 19 15:45:20 localhost weewx[14425]: cheetahgenerator: Generated 10 files for report SeasonsReport in 5.21 seconds
Apr 19 15:45:22 localhost weewx[14425]: imagegenerator: Generated 14 images for SeasonsReport in 1.55 seconds
Apr 19 15:45:22 localhost weewx[14425]: copygenerator: copied 5 files to /var/www/html/weewx/davis1
Apr 19 15:45:22 localhost weewx[14425]: Belchertown Extension: version 1.0.1
Apr 19 15:45:33 localhost weewx[14425]: cheetahgenerator: Generated 11 files for report Belchertown in 10.63 seconds
Apr 19 15:45:33 localhost weewx[14425]: copygenerator: copied 31 files to /var/www/html/weewx
Apr 19 15:45:47 localhost weewx[14425]: ftpgenerator: ftp'd 77 files in 12.00 seconds
Bien. Paremos un momento.
Si es la primera vez que se ejecuta Weewx con la base de datos antigua. El proceso va a tardar bastante tiempo. Bastante.
Esto es debido a que Weewx, a partir de la versión 3.6 o 3.7 cambio la base de datos. Mientras que Wview mantiene 2 bases de datos, la de los registros y la de máximas y mínimas, Weewx ahora solo mantiene 1 base de datos.
La base de datos mantiene dos tablas, la de los registros y la de máximas y mínimas.
Como recordarás, En Wview, si querías rehacer la base de datos de máximas y mínimas, tan solo la tenías que borrar y, al reiniciar Wview, este se encargaba de volver a crear dicha base de datos.
Pues este proceso es idéntico en Weewx, salvo que lo hace todo dentro de la misma base de datos (con 2 tablas) en lugar de 2 bases de datos con 1 tabla cada uno.
Este proceso tarda un tiempo y puedes ver como todo "se congela".
Una vez que todo empieza a funcionar, verás como discurre el log de una forma similar a la indicada anteriormente.
Y cada vez que se genere un registro verás algo como esto:
Apr 19 15:45:15 localhost weewx[14425]: manager: Added record 2020-04-19 15:45:00 UTC (1587311100) to database 'weewx.sdb'
Apr 19 15:45:15 localhost weewx[14425]: manager: Added record 2020-04-19 15:45:00 UTC (1587311100) to daily summary in 'weewx.sdb'
Que nos indica que Weewx ha añadido un registro a la base de datos de registro y a la de máximas y mínimas. Fíjate en las fechas.....es superimportante si estás registrando problemas con la base de datos. Esto es así, porque si el último registro que tiene Weewx en la base de datos es
POSTERIOR al momento actual (por problemas del reloj), no va a incorporar nuevos registros hasta que se pase esa fecha y hora incorrecta.
Es uno de los principales escollos con Weewx, aunque es algo normal, y que ya ocurría con Wview. De lo contrario, la base de datos quedaría absolutamente inservible a la mínima de cambio.
Recomiendo quitar el falso reloj de la Raspberry Pi,
SIEMPREApr 19 15:45:20 localhost weewx[14425]: cheetahgenerator: Generated 10 files for report SeasonsReport in 5.21 seconds
Apr 19 15:45:22 localhost weewx[14425]: imagegenerator: Generated 14 images for SeasonsReport in 1.55 seconds
Apr 19 15:45:22 localhost weewx[14425]: copygenerator: copied 5 files to /var/www/html/weewx/davis1
Apr 19 15:45:22 localhost weewx[14425]: Belchertown Extension: version 1.0.1
Apr 19 15:45:33 localhost weewx[14425]: cheetahgenerator: Generated 11 files for report Belchertown in 10.63 seconds
Apr 19 15:45:33 localhost weewx[14425]: copygenerator: copied 31 files to /var/www/html/weewx
Apr 19 15:45:47 localhost weewx[14425]: ftpgenerator: ftp'd 77 files in 12.00 seconds
Aquí tienes información que nos dice que, el generador de gráficos ha generado XX gráficos para el skin SeasonS, el que instala por defecto Weewx, y XX gráficos para el Skin Belchertown.
Todos los gráficos e informes NOAA son grabados en los directorios indicados,
AUNQUE NO HAYA SERVIDOR WEB.
Por último, en mi caso, el skin FTP se encarga de subirlos a mi web.