WindGuru.cz UPLOAD API

Hi everyone.
I have a NETATMO running with anemometer at my home. Want to donate my data to WindGuru. They have exposed a HTTP GET API to send data.
Q1: Has anyone done this before and willing to share setup.
Q2: How to generate MD5 on a fly when building a URL

Any help would be much appreciated

If you already use (or don’t mind using) AppDaemon this should be pretty easy.

Installing AppDemon … Just to do MD5 hash… I think its an overkill. I dont have any kind of automation so far

@supernial, did you manage to find a suitable solution for this? I want to upload also my data to WindGuru, and I am facing the same issue.
Using AppDeamon looks like an overkill.

Yep. Im PRO in WindGuru since 2020 for donating my data. I run WeeWX on RPi3 and I believe I donate to 2 different sites with WeeWX

Thanks for your feedback.

I have implemented this with one command_line sensor. This is my solution if anyone is interested:

sensor:
  - platform: command_line
    name: Weather Station Windguru Upload
    command: >-
      SALT=$(date +%Y%m%d%H%M%S) &&
      HASH=$(echo -n "${SALT}YourStationUIDYourStationPassword" | md5sum | cut -d' ' -f1) &&
      curl -s "http://www.windguru.cz/upload/api.php?uid=YourStationUID&salt=${SALT}&hash=${HASH}&wind_avg={{ states('sensor.weather_station_wind_speed')|float / 1.852|round()  }}&wind_max={{ states('sensor.weather_station_wind_gust')|float / 1.852|round() }}&wind_direction={{ states('sensor.weather_station_wind_direction') }}&temperature={{ states('sensor.weather_station_outdoor_temperature') }}&rh={{ states('sensor.weather_station_humidity') }}&mslp={{ states('sensor.weather_station_relative_pressure') }}&precip={{ states('sensor.weather_station_rain_rate') }}"
    scan_interval: 60
3 Likes

Thank you for your great code. Only thing for other people to note is that the command_line platform has been updated and needs to follow a new format. Just the first two lines (and indentation) need to be changed and the format has been updated in the HA documentation.