Reading from ecowitt cloud

172 views
Skip to first unread message

mihec

unread,
Mar 11, 2025, 7:34:18 AM3/11/25
to weewx-user
Hi,
there is an ecowitt station which is installed at remote location. I cannot put the raspberry pi to the same network as the ecowitt console is.
I thought to have a weewx service running at home and reading data from the ecowitt cloud through their API. Is there a driver or solution for this developed yet?

If not, I could do it in a separate script and generate a text file with weather data. How should I configure weewx not to use a real hardware but only read and log from the text file? I have little knowledge how to read additional sensors to the same database but not complete weather data set.

Thank you.

Rainer Lang

unread,
Mar 11, 2025, 5:41:30 PM3/11/25
to weewx...@googlegroups.com

Why make it so complicated ?
every Ecowitt console has the option to post the sensor data to a
customized server address - locally or remotely.
Have your remote console post its data to your local server (e.g. your
RaspberryPi) and have weewx process the data with the help of the
Interceptor driver.
Details you can find in the WiKi
https://meshka.eu/Ecowitt/dokuwiki/doku.php?id=start#weewx
These are the two standard weewx options:
locally:  Ecowitt local API driver (provided the console supports the
binary or http local API, not all do)
remotely: Customized server option and Interceptor driver
I catch the data of a remote Ecowitt station (1,300 km away) that way.

Rather than trying to extract data posted to the ecowitt cloud with a
5-minute averaged resolution, you can receive the data via the
Customized Server option evry 8 seconds (if wanted and configured) and
choose your own weewx archiving interval. Of course you can also do the
Ecowitt Cloud data retrieval which as far as I am aware should be
possible with the to-be-released Ecowitt local API driver version 7.0.

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/weewx-user/67d9556a-f850-4643-a393-e442fcf5ab52n%40googlegroups.com.
Message has been deleted

mihec

unread,
Mar 21, 2025, 12:15:49 PM3/21/25
to weewx-user
Thanks for your reply. I know about that option, but it is a bit more complicated for my setup. Instead, I have used great weewx documentation and examples and customized the FileParse example driver which reads from the file. I could extend it to get data from the ecowitt cloud directly but for now it does exactly what I need.

There is one more question though. All except the rain values are easy to log and present. I don't know how to log and then present the rain. From the ecowitt cloud I can read rainrate, daily rain, weekly, monthly and yearly rain. Shall I log all these to the weewx.sdb?
I took a look at the gw1000 driver but my python knowledge is not sufficient to understand it.

Thank you.

torek, 11. marec 2025 ob 22:41:30 UTC+1 je oseba Rainer Lang napisala:
Message has been deleted

mihec

unread,
Mar 26, 2025, 4:12:54 PM3/26/25
to weewx-user
I hope it is OK to continue in this topic. As I said, the logging from file works OK. However, I have a question related to rain logging.
From Ecowitt cloud, I get variables that report: rain_rate, rain_hourly, rain_daily, rain_weekly, rain_monthly and rain_yearly.
I do log all of them into new columns in the database.
I would like to use the built-in 'rain' column so my reports are using that values. For this purpose, I created a simple loop, that calculates the rain delta from current to previous observation. Then, I use the delta to log it into 'rain' column.

Comparing the $day.rain.sum with the $current.rainDay (this is custom which I read from the cloud), they are different. The 'rain' is always higher than 'rainDay'.

I am lost where to look for the issue. I think about these possible causes:
* The script which reads from the cloud runs through cron at exactly the same time. Could it be that through time, the weewx's reading drifts a little in time and reads old data?
* I don't understand how to actually log the rain.

I do take care of proper units, that is for sure OK. One more thing I could try is to read the datetime of latest cloud data (it is in the json response). My question is: can I use that datetime to report it in the weewx's database or does weewx use the recent datetime when it writes to the database?
More questions: with my new columns (rainDay, rainMonth, etc.) I cannot limit the decimal places for html display. I used various options from the weewx docs but none worked. Do these new columns have to be formatted as floats or doubles, or?

I appreciate your hints and advise.


petek, 21. marec 2025 ob 17:15:49 UTC+1 je oseba mihec napisala:
Reply all
Reply to author
Forward
0 new messages