Meteoclimatic
Software => WeeWX => Mensaje iniciado por: dtalens en 11 de Febrero de 2021, 17:57:21
-
Hola,
Tengo un problema con weexx y el skin "Belchertown". Desde la web para weewx me da error cuando intento poner las variables "wh25batt"/"wh25_battery" o "wh65batt/wh65_battey", de hecho no las encuentra.
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** Traceback (most recent call last):
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** File "/usr/share/weewx/weewx/cheetahgenerator.py", line 324, in gen>
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** unicode_string = compiled_template.respond()
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** File "_etc_weewx_skins_Belchertown_about_index_html_tmpl.py", line >
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** File "/usr/lib/python3/dist-packages/Cheetah/Template.py", line 170>
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** self._CHEETAH__cheetahIncludes[_includeID].respond(trans)
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** File "_etc_weewx_skins_Belchertown_about_inc.py", line 117, in resp>
de febr. 11 17:09:34 minipc python3[686874]: weewx[686874] ERROR weewx.cheetahgenerator: **** NameMapper.NotFound: cannot find 'wh25batt'
Utilizo interceptor con la versión que tiene mapeadas las dos variables, lo he consultado directamente en el interceptor.py:
'wh25batt': 'wh25_battery',
'wh26batt': 'wh26_battery',
'wh40batt': 'wh40_battery',
'wh65batt': 'wh65_battery',
Como he de modificar el archivo *****.inc para que reconozca la variable?
Saludos,
-
Hola dtalens
Esas variables serán propiedades como las demás de current así que en la plantilla de skin que las pongas pon $current.wh25batt
Si no fuesen de current serían de la estación ($station.wh25batt)
-
QUe schema usas?
-
Hola jantoni y jmviper,
Supongo que el genérico que sale en weewx.conf: schema = schemas.wview_extended.schema
(eso no lo he tocado nunca).
La solución propuesta por jmviper no me funciona. Al indicar $station.xxxxxx me da error y si pongo $current.xxxxxx no da error pero no indica ningún valor, solo indica ?'wh25batt'?.
Gracias,
Saludos
-
Vale, el esquema es correcto.
El WH25, no existe, que yo sepa......y se utiliza, que yo sepa, para el sensor WH32b, que es el sensor que utilizan algunas consolas. Aunque a veces seguir la pista de la nomenclatura de los sensores es un infierno, pues FO puede nombrarlo,de un modo y Ecowitt de otro.
Así que la pregunta, ¿qué sensor es al que quieres controlar la batería?
¿Has ejecutado el driver directamente para ver si está esa variable en el raw?
-
Os paso la salida del debug:
~$ sudo PYTHONPATH=/usr/share/weewx python3 -m user.interceptor --port=8111 --debug
identifiers: {'sensor_type': None, 'sensor_id': None, 'bridge_id': None}
raw data: PASSKEY=XXXX&stationtype=WH2650A_V1.6.3&dateutc=2021-02-12+08:38:01&tempinf=64.8&humidityin=57&baromrelin=30.023&baromabsin=29.707&tempf=65.8&humidity=53&winddir=241&windspeedmph=6.93&windgustmph=11.41&maxdailygust=17.22&solarradiation=51.50&uv=0&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.012&yearlyrainin=0.012&totalrainin=0.012&wh65batt=0&wh25batt=0&freq=868M&model=WH2650
decode failed for humidity '53': could not convert string to float: ''
raw packet: {'dateTime': 1613119082, 'usUnits': 17, 'winddir..': None, 'dateTime..': 1613119082, 'usUnits..': 17}
mapped packet: {'dateTime': 1613119082, 'usUnits': 17}
Como podéis ver aparecen dos sensores con estado 0 que es OK. Por lo que puedo deducir el wh25batt es el estado de la bateria del sensor de la temperatura-humedad-presión interior y el wh65 es el estado de la bateria de la estación. De todas manera no estoy seguro cual es cual.
En ecowitt.net aparecen los dos sensores:
(https://i.postimg.cc/TyY7mx9V/image.png) (https://postimg.cc/TyY7mx9V)
Me gustaria poder poner en la web el estado de la bateria de la estación.
-
Mira a ver si weewx está grabando esos valores en su base de datos, por eso te dijo jantoni de mirar el schema. Si no están weewx no pondrá datos en $current de esos valores.
-
Habrá que mirar el driver interceptor y el mapa, de sensores.
La verdad es que no lo he hecho nunca, y solo tuve necesidad de tocar el driver una vez.
Además habría que descargarlo con git y no bajando el archivo.
Si se baja el archivo, lo hace la versión 0.53
Para bajar el último hay que hacerlo con git desde Linux.
La verdad es que con GitHub me vuelvo gilipollas, no acabo de entenderlo bien.
-
O mejor, prueba el driver GW1000
Puse el enclave por aquí, el otro día, a ver, lo busco
https://github.com/gjr80/weewx-gw1000
Yo, en cuanto pueda, me cambiaré a este driver
Ah...sí, te funciona con GW1000 y WH2650
-
Hola jantoni,
Estoy probando el driver gw1000 y parece que funcione bien, mejor que el interceptor. plau2
En el repositorio del driver hay una adaptació del "sensors.inc" para el skin "Seasons" en el cual haciendo algunas modificaciones te indica estadado de bateria entre otros.
https://github.com/gjr80/weewx-gw1000/wiki/Adapting-the-Seasons-skin-to-display-battery-states (https://github.com/gjr80/weewx-gw1000/wiki/Adapting-the-Seasons-skin-to-display-battery-states)
Ahora me queda adaptar la salida del sensor, ya que es binario 0 o 1 para el skin que uso.
Saludos!
-
apla3
A ver si me pongo yo a migrar de interceptor a gw1000
Pero es que ya quiero hacer más cambios
Pasar de Weewx 3.9 a 4.4
Cambiar sistema de instalación de paquete Debian a Setup.py.......esto es un cambio mayor y tendría que readaptar meteowee.
Manejar 4 estaciones con la raspi zero w.....a ver si puede.......GW1000, WH2650, Davis Vue, Ventus Honeywell.
-
Al final tengo configurado el envio de datos a meteoclimatic (también a WU, ecowitt.net y weathercloud) desde la consola wifi así no dependo del servidor. Después envio a través de WeeWX a mqtt para mi home assistant (la idea que tengo es utilizarlo para la web también), a windy, a awekas y pwsweather.
Saludos,
-
Pues mira.....lo del mqtt, aunque yo no le encuentre utilidad, me dio por intentar configurarlo y nunca lo conseguí.
Me pareció un lio tremendo con Belchertown :D :D :D :D :D :D :D :D
Un manual necesito, ja ja ja ja
-
Hola,
Aprovecho el hilo para comentar un problema que tengo con la visualización de datos con el skin Belchertown. Como ya comente en otro hilo, el índice UV a veces se dispara sin razón sin que haya un aumento de la radiación en las estaciones Fine Offset.
Ahora la cosa es más extraña, ahora me sale un valor de 14 solo en los récords o estadísticas, no sale en ningun otro sitio. He mirado la base de datos, gráficos y en todas las redes que publico datos y los valores son normales.
(https://i.postimg.cc/VNmzZ4vh/image.png)
He probado con borrar "index.html" de la sección de los récords pero se queda igual. ¿Como borro el dato de la web?
Me autorespondo: sudo wee_database --rebuild-daily --date=2021-02-21
y solucionado.
-
No se si te servirá de ayuda pero tengo Belchertown y lo único que te puedo asegurar es que lee de la base de datos weewx.sdb. No se de donde exactamente ese valor. Yo ya borre unos cuantos records raros heredados de la base de datos de la anterior PCE FWS-20 de años anteriores.
-
Hola miguelru,
He ojeado tu página y veo que tienes en tus récords también un máximo de 14 de indice UV el dia 13 de febrero y un valor extremadamente alto de radiación 2368 W/m2 el dia 15 de febrero. Solo borrando el valor erróneo de la base de datos no es suficiente, hay que volver a reconstruir los datos del dia entero.
sudo wee_database --rebuild-daily --date=2021-02-13
sudo wee_database --rebuild-daily --date=2021-02-15
La verdad no se si hay otra forma de hacerlo pero a mi me ha funcionado.
Saludos,
Revisando más datos veo que tienes un máximo de radiación de 18035 W/m2 que veo que es un valor imposible y encima ese dia tienes el récord de intensidad de lluvia. Creo que el sensor radiación/UV en la nuestras estaciones a veces se vuelve loco, habrá que estar pendiente.
-
En el weewx.conf de weewx hay una sección para no tener en cuenta esos valores pasados de madre:
[StdQC]
[[MinMax]]
barometer = 26, 32.5, inHg
pressure = 24, 34.5, inHg
outTemp = -40, 120, degree_F
inTemp = 10, 120, degree_F
outHumidity = 0, 100
inHumidity = 0, 100
windSpeed = 0, 120, mile_per_hour
rain = 0, 10, inch
Le añadimos:
UV = 0, 13
radiation = 0, 1500
Por lo menos con esas dos líneas no quedarán grabados esos valores imposibles.
-
Gracias jmviper, ahora hago los cambios en weewx.
Creo que ya se ha comentado que las estaciones Fine offset tipo ecowitt GW1000 y similares no llevan sensor de radiación al uso, sino que llevan un sensor de iluminación con el cual posteriormente se extrapolan los valores de radiación y UV.
El autor del driver gw1000 para weewx lo explica aquí: https://github.com/gjr80/weewx-gw1000/wiki/Understanding-GW1000-radiation-fields (https://github.com/gjr80/weewx-gw1000/wiki/Understanding-GW1000-radiation-fields)
Saludos,
-
Hola miguelru,
He ojeado tu página y veo que tienes en tus récords también un máximo de 14 de indice UV el dia 13 de febrero y un valor extremadamente alto de radiación 2368 W/m2 el dia 15 de febrero. Solo borrando el valor erróneo de la base de datos no es suficiente, hay que volver a reconstruir los datos del dia entero.
sudo wee_database --rebuild-daily --date=2021-02-13
sudo wee_database --rebuild-daily --date=2021-02-15
La verdad no se si hay otra forma de hacerlo pero a mi me ha funcionado.
Saludos,
Revisando más datos veo que tienes un máximo de radiación de 18035 W/m2 que veo que es un valor imposible y encima ese dia tienes el récord de intensidad de lluvia. Creo que el sensor radiación/UV en la nuestras estaciones a veces se vuelve loco, habrá que estar pendiente.
Si ya lo vi. Pero no he tenido tiempo de ponerme a editarlo.
Pondré los limites en weewx.conf como dice jmviper y posiblemente elimine la variable de UV dada la poca fiabilidad en estas estaciones FineOffsett.
-
Ya he corregido estos dos últimos registros pero tengo varios más en años anteriores del 2016 al 2018.
Teniendo en cuenta que las bases de datos no son mi fuerte, intentare corregirla poco a poco.
-
Cuidado con la reconstrucción de bases de datos.
Las inconsistencias suelen aflorar......motivo.....los redondeos, salvo que tengas la base de datos en métrica.
Por experiencia hablo.