Autor Tema: Enviar datos directamente sin otros programas  (Leído 258 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado adonis28850

  • Newbie
  • *
  • Estación: EcoWitt WS90
Enviar datos directamente sin otros programas
« en: 12 de Marzo de 2026, 22:03:40 »
Buenas,

Me he comprado un EcoWitt WS90 pero sin Gateway ni nada, ya que quería tener una buena excusa para trastear con Golang (trabajo en IT pero no de programador, aunque me defiendo para mis cosillas).

El caso es que he escrito un programa que lea los datos que manda la estación, los procese/almacene, y permita visualizarlos a traves de un panel web sencillito pero bastante resultón.

Me gustaría poder mandar los datos a MeteoClimatic, pero sin usar otra aplicación como he visto que se suele hacer, y me preguntaba si existe alguna plantilla genérica o documentación de la API para poder mandar datos directamente desde mi programa.

P.D.; si hay interés, no me importaría compartir link a GitHub con la aplicación, aunque aún está en fase beta diría, pero ya llevo una semanita usándola y aunque quedan cosas que pulir, va bastante bien.

Saludos

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #1 en: 13 de Marzo de 2026, 09:12:33 »
Buenos días.

Si no usas pasarela ni consola con esa WS90, entonces:

- O es un modelo con RS485/Modbus
- O es un modelo con interface SDI
- O es un modelo con interface Shelly
- O recibes los datos con un receptor de radio, estilo RTL433

Todos estos dispositivos son muy minoritarios en Meteoclimatic tanto por lo poco preciso del sensor de precipitación, como por lo poco conocidos de esos interfaces, más dirigidos al mundo industrial, salvo el de Shelly claramente enfocados a personas con experiencia en la automatización (como Home Assistant)

Dicho esto, no hay ningún problema en lo que dices. De hecho, ya hay varias rutinas publicadas por usuarios para enviar datos mediante Home Assistant y creo recordar que algo se hizo hace tiempo con pinchos USB RTL433

Documentación:

- En la Wiki tienes publicado la plantilla estándar de Meteoclimatic, busca por plantilla en la FAQ o en el Glosario
- Las aPI no están documentadas. Podrías usar el formato del Protocolo Ecowitt o el protocolo Wunderground y enviarlos tal como se indica en https://api.m11c.net
- El protocolo Ecowitt está documentado en la web de Ecowitt
- El protocolo Wunderground en la de Weather Underground. Al protocolo estándar tendrías que añadir la precipitación mensual y anual, que no se incluye en el protocolo estándar Wunderground.
- Para enviar datos, puedes basarte en las rutinas que hay publicadas en este foro tanto para Windows como para Linux, todas ellas apoyadas en CURL
- El envío con protocolo Ecowitt, siempre en formato POST
- El envío con protocolo Wunderground, siempre en formato GET
- El envío con plantilla estándar puedes verlo en las diferentes rutinas publicadas.

En un futuro cercano está previsto hacer la migración de Rainbow (la actual versión de Meteoclimatic) a Alba (la que está en desarrollo). En Alba se documentará la API estándar Meteoclimatic, que servirá tanto para enviar datos de las estaciones como para capturar datos almacenados en Meteoclimatic de las mismas.
« Última modificación: 13 de Marzo de 2026, 09:21:25 por jantoni »

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #2 en: 13 de Marzo de 2026, 09:19:00 »
No obstante, te recalco que el uso sería muy minoritario.

Esto es por lo dicho anteriormente. El bloque WS90 fue recibido con mucho entusiasmo, pero dados los problemas de precisión del pluviómetro háptico, los usuarios se han decantado por soluciones como los bloques WS69/WH65, tener los sensores separados, o incluso teniendo el WS90 utilizar un pluviómetro tradicional como el WH40 para lo que necesitas una pasarela o consola (salvo que te pelees con un RTL433)

Una pena ya que el WS90 es un dispositivo excelente.....yo tengo 2 *+* *+* *+* *+* *+* *+*

Pero si te metes en este mundillo, no disponer de una pasarela o consola, es una limitación muy grande

Desconectado adonis28850

  • Newbie
  • *
  • Estación: EcoWitt WS90
Re:Enviar datos directamente sin otros programas
« Respuesta #3 en: 13 de Marzo de 2026, 10:45:33 »
Buenas @jantoni, muchas gracias por la respuesta tan detallada!

Efectivamente, ahora mismo tengo el WS90 en el jardín y dentro de casa en un MiniPc un receptor RTL-SDR que con ayuda de RTL_443 lee los datos del WS90 y yo ya con mi app los proceso. Yo tengo el chiringuito montado en un cluster local Kubernetes, pero al final la app está echa en Go (3 componentes: "ingestor" que procesa la salida de RTL_443, "core" que procesa y muestra los datos, y una base de datos Postgres donde se almacena todo en un par de tablas) así que se podría instalar fácilmente en cualquier entorno.

El tema de precisión, yo vivo en zona rural y mi inquietud meteorológica viene principalmente dada por llevar un seguimiento más o menos razonable de factores climáticos (sobre todo lluvia) que afectan a huerta, olivos, frutales, etc. Es decir, en mi caso personal no me supone mucho problema si ha llovido por ejemplo 22.35mm y el chisme me marce 20 o 25. He de decir, que desde que lo tengo (una semana y algo) ha llovido un par de veces, y comparándolo con un pluviómetro manual de plástico de los chinos la lluvia registrada ha sido muy similar, veremos cuando llueva algo más qué tal se porta.

Echaré un vistacillo a la documentación que comentas, y a ver si apaño el código para que pueda mandar los datos usando la manera que me parezca más sencilla y estandard.

El tema de comentas de no tener pasarela y la limitación que supone, al final lo que estoy intentando hacer es evitar el gasto extra y apañarme yo una jajaja. Como digo, la app está todavía en Beta, pero creo que cumple bastante bien el apaño, y al almacenar todas las lecturas del WS90 en una DB al final si se necesitan análisis más detallados se podría hacer sin problema. Adjunto un par de capturas.

Saludos

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #4 en: 13 de Marzo de 2026, 11:36:26 »
En cuanto a la pasarela o consola.

El problema del WS90 es que envía los datos de precipitación de una manera....."extraña". No envía datos de "he registrado tanta precipitación". Tampoco he profundizado en el tema, pero recuerdo haber leído que es la consola o pasarela la que interpreta los datos y los "convierte" a precipitación real.

En cuanto al protocolo, te diría, como consejo:

- Protocolo Wunderground
- Envío con GET a api.m11c.net



« Última modificación: 13 de Marzo de 2026, 11:39:58 por jantoni »

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #5 en: 13 de Marzo de 2026, 11:47:29 »
Aquí te dejo un ejemplo de Query con protocolo Wunderground modificado

Código: [Seleccionar]
https://api.m11c.net/v2/wu?ID=ESMAD2800000028576Z*W&PASSWORD=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&tempf=xx.x&windspeedmph=xx.x&winddir=xx&baromin=xx.xx&absbaromin=xx.xx&humidity=xx&solarradiation=xx&UV=xx&dailyrainin=xx.xx&monthlyrainin=xx.xx&yearlyrainin=xx.xx&softwaretype=Test_test_test

Passowrd es la apikey que verás en la ficha de tu estación en meteoclimatic

Todos los valores en unidades imperiales (es el protocolo Wunderground), en Alba se admitirán imperiales y métricas

monthlyrainin y yearlyrainin son añadidos al protocolo Wunderground estándar por Ecowitt en sus consolas.

Ojo a los decimales.....algunos valores necesitan 2 decimales para su correcta conversión al sistema métrico.

Si prefieres mandarlo por POST te puedo orientar....tan solo usar dos cabeceras con el código de estación y el apikey y luego el resto de datos con urlencode.....pero cambian las etiquetas.

« Última modificación: 13 de Marzo de 2026, 11:49:44 por jantoni »

Desconectado adonis28850

  • Newbie
  • *
  • Estación: EcoWitt WS90
Re:Enviar datos directamente sin otros programas
« Respuesta #6 en: 13 de Marzo de 2026, 15:34:09 »
En cuanto a la pasarela o consola.

El problema del WS90 es que envía los datos de precipitación de una manera....."extraña". No envía datos de "he registrado tanta precipitación". Tampoco he profundizado en el tema, pero recuerdo haber leído que es la consola o pasarela la que interpreta los datos y los "convierte" a precipitación real.

En cuanto al protocolo, te diría, como consejo:

- Protocolo Wunderground
- Envío con GET a api.m11c.net

Si, al final la labor de la consola/pasarela es todo software y es lo que estoy intentando hacer yo a mi manera. El tema de la precipitación al principio me despistó, pero resulta que es acumulativa, desde que lo enciendes hasta que o bien lo reseteas, o llega a un límite muy alto, simplemente va añadiendo según va lloviendo, entonces tienes que guardar datos para ir calculando la diferencia y así mostrar lo que va lloviendo. Una vez que entiendes como funciona no es mucho problema programarlo.

Venga, gracias por los consejos, a ver cuando saco un par de ratos y miro el tema de mandar datos!

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #7 en: 13 de Marzo de 2026, 19:23:07 »
Tú mismo.

Pero el pluviómetro no funciona como tú crees.

Los ajustes de precipitación, en función de la intensidad de la precipitación, se hacen en la consola o pasarela, no en el sensor.

O estamos perdidos los que tenemos un WS90 y llevamos meses o años intentando calibrarlos.

El tema de la precipitación de la WS90 es un tema recursivo en cualquier foro de meteorología.

¿Que obtienes datos? Bien. Pero cuando tengas una tromba de agua lo verás....todo se vuelve loco y hay que hacer ajustes a nivel consola o pasarela, porque cuando la precipitación es muy fuerte, por ejemplo en una tormenta, y las gotas son hermosas, golpean en el sensor y al golpear se rompen y el sensor detecta las diferentes gotas producidas por la rotura como precipitación adicional.

Por eso, ese pluviómetro solo funciona decentemente con precipitaciones moderadas.

Si el motivo de usar un RTL433 es por entretenimiento y aprovechar un cacharro que ya tenías, genial.

De lo contrario, pues no. Una pasarela básica como un GW1100 está ahora mismo por 30 euros +- y un RTL433 no sé como estarán ahora, pero en su día recuerdo que por los 15 euros.....más un dispositivo como un Arduino, o un ESP32 para controlarlos, más fuentes de alimentación, etc.

Bueno, ya nos contarás tus avances.

Por cierto....¿y la presión? No la he visto en las fotos que has enviado.

Desconectado adonis28850

  • Newbie
  • *
  • Estación: EcoWitt WS90
Re:Enviar datos directamente sin otros programas
« Respuesta #8 en: 14 de Marzo de 2026, 00:09:04 »
Buenas,

Pues si, el motivo principal es cacharrear jajaja. Como te decía, llevo seguimiento del tema meteorológico (sobre todo lluvias) por el tema del campo, por eso con poquita cosa y aproximaciones más o menos decentes me vale.

El tema de calibrar la Ecowitt WS90, como comentas, parece ser necesario. Viendo las instrucciones del bicho, vi que tiene para el tema del agua 5 niveles de ajuste, y leyendo un poco esto es lo que a nivel genérico se recomienda como punto de partida:

Citar
| Parameter | Rain Rate Range | Description | Recommended Approach |
|-----------|----------------|-------------|----------------------|
| **Piezo Rain1** | < 4 mm/h | Light rain/drizzle | **Keep at 1.0** unless consistently produces same results |
| **Piezo Rain2** | < 10 mm/h | Light to moderate rain | Adjust based on reference data |
| **Piezo Rain3** | < 30 mm/h | Moderate rain | Adjust based on reference data |
| **Piezo Rain4** | < 60 mm/h | Heavy rain | Adjust based on reference data |
| **Piezo Rain5** | > 60 mm/h | Very heavy rain | Adjust based on reference data |

Lo tengo en la lista del TODO para implementar esta funccionalidad en la consola web y poder calibrar el tema de la lluvia. Al final, si no me equivoco que puede ser que lo haga por supuesto, todo lo que hacen las pasarelas es procesar los datos en crudo que le vienen del WS90, por lo tanto con un poco de tiempo y de prueba- error lo mismo puede hacer uno mismo por su cuenta.
Dicho esto, desde que lo tengo aún no ha habido episodios de lluvia intensa, así que estaré pendiente para poder ver qué tal se porta e ir ajustando todo poco a poco.

El tema de la presión.. me viene al pelo que lo menciones. He sacado un ratillo para mirar la documentación de la Wiki, y veo que se necesita. El tema es que el EcoWitt WS90 no tiene un sensor de serie. He leido alternativas y una opción puede ser usar la API de Open-Meteo usando mis coordinadas para obtener la presión absoluta, y mandar ese valor?

Un par de dudas en el ejemplo que has puesto de GET para mandar datos usando el protocolo Wunderground:

- Campos obligatorios/opcionales?
- El ejemplo que pones usa https, pero he dado de alta una nueva estación y al ir a https://api.m11c.net/api-setup/ me dice que use puerto 80?


Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #9 en: 14 de Marzo de 2026, 00:36:51 »
Los datos de presión deben ser medidos por un sensor en la estación.

Datos de otras fuentes no son admitidos.

Citar
Campos obligatorios/opcionales?

En la wiki tienes detallado los campos obligatorios.

Citar
El ejemplo que pones usa https, pero he dado de alta una nueva estación y al ir a https://api.m11c.net/api-setup/ me dice que use puerto 80?

https://api.m11c.net es el gestor, usa HTTPS (como interface con el "humano")

Cuando las estaciones envían datos hay que hacerlo por el puerto 80. Las consolas Ecowitt y las que envían datos por Wunderground no pueden usar HTTPS, siempre usan HTTP

Y volviendo a la presión, si tu estación no la mide no podrás enviar datos a Meteoclimatic. Tendrás que comprar un WN32P  para usar como sensor de temperatura interior y sensor de presión (ojo con la P de la referencia). Pero para eso miraría una pasarela barata.

Desconectado luisgil

  • Newbie
  • *
  • Estación: Lugo - Aeródromo de Rozas
Re:Enviar datos directamente sin otros programas
« Respuesta #10 en: 14 de Marzo de 2026, 10:00:30 »
Consejo de usuario de WS90 (yo también tengo dos de ellas): olvida la calibración de la lluvia.

Yo me hice una Excel para calcular medias ponderadas de precipitación por tramos de intensidad y compararlas con la precipitación medida por un sensor clásico de balancín (de Davis), y después de casi 30 eventos de lluvia las desviaciones estándar de esas medias son tan disparatadas, por arriba y por abajo, que hacen que sea absolutamente inútil la calibración. En un episodio puedes necesitar un factor x1.5, en el siguiente te pide x-2.3... 

Compra y lee datos de un WH40H y no perderás el tiempo.

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #11 en: 14 de Marzo de 2026, 10:20:23 »
Siguiendo con el tema de presión.....le daba vueltas a la cabeza.....

No acabo de entender.....

El bloque WS90 lleva incluido un sensor de presión en su interior, y los datos se transmiten hacia las consolas/pasarelas, aunque son despreciados por ellas, al llevar todas incluidas un sensor de presión

Esto es así por economía de escala.....los bloques de sensores WS90 con interface MODBUS y SDI, así como los Shelly, son el mismo bloque de sensores y llevan el sensor incluido.

Hay mucha documentación en la red sobre tratar los datos de WS90 con RTL y aprovechar el sensor barométrico.

Como insisto.....todo vale en el entretenimiento y en el cacharreo, pero tienes soluciones plenamente confiables como Weewx que tienen drivers para RTL433, pudiendo usar los datos del WS90, bien directamente desde el RTL433 (no lo he probado nunca *+* *+* *+* ) o bien enviando los datos del RTL433 a un servidor MQTT y capturarlos en Weewx con el driver para MQTT

Y vuelvo a insistir, el WS90 tiene un sensor barométrico en el interior del bloque de sensores y es accesible capturando los datos.

Desconectado jantoni

  • Hero Member
  • *****
    • meteorivas.es
  • Estación: ESMAD2800000028522A Rivas-Vaciamadrid
Re:Enviar datos directamente sin otros programas
« Respuesta #12 en: 14 de Marzo de 2026, 10:22:55 »
Compra y lee datos de un WH40H y no perderás el tiempo.

Eso sí.....el WS90 es genial para usar la indicación de "raining"

Puedes activar una alarma en Home Assistant o similares.

Desconectado luisgil

  • Newbie
  • *
  • Estación: Lugo - Aeródromo de Rozas
Re:Enviar datos directamente sin otros programas
« Respuesta #13 en: 14 de Marzo de 2026, 10:49:52 »
Compra y lee datos de un WH40H y no perderás el tiempo.

Eso sí.....el WS90 es genial para usar la indicación de "raining"

Puedes activar una alarma en Home Assistant o similares.

Que va, ni eso. Yo he tenido días de veintitantos litros en Lugo y el piezo no ha marcado nada. como para fiarte...

Desconectado luisgil

  • Newbie
  • *
  • Estación: Lugo - Aeródromo de Rozas
Re:Enviar datos directamente sin otros programas
« Respuesta #14 en: 14 de Marzo de 2026, 12:09:29 »
Y el caso es que el que tengo en Asturias no pierde agua, es completamente coherente con el radar y con los valores vecinos. Sin embargo el de Lugo he estado a punto de darle la patada.