Dutch precipitation forecast based on buienradar.nl

@gpgekko that is strange!

Looking at your errors, it seems the buienradar library was not installed…

from buienradar.buienradar import STATIONNAME
ImportError: No module named 'buienradar'

I did not yet upgrade myself… so did not see this myself

Can you check to see, if the module gets installed during HA startup, or if you see an error when it is trying to do so?

It should try to install buienradar=0.4

OK; i upgraded to 0.47 as well

I explicitly deleted the buienradar external lib before upgrading HA to 0.47; It was added / installed again as soon as I started it.
I also noticed the error, but the sensor component worked as expected
The weather component, did not work as it did b efore the update; I traced that back to this, can you see if this change works for you as well ? (weather/buienradar.py in method async_setup_platform)

change:

 data.schedule_update(1)

into

 yield from data.schedule_update(1)

Can you try that?

The sensor component works for me now as well. I suppose I was just to impatient, I waited a minute or two before I posted but nothing appeared. When I looked this morning however, there was data.

Regarding the weather component, I will try that this afternoon and get back to you.

Thanks for the help!

The sensor will do its first update/fetch earliest one minute after start of HA.

However, in the period 00:00-00:45 (NL time) no weatherstations are shown in the buienradar xml data; in that period the data will not update as well…

I tried the weather component fix and I think that did the trick, no more errors! However, funny thing, if I go to check the entity state, it is listed as weather.br_unknown_station. It does have a correct weather state though, so I guess it’s just a naming thing?

I checked as well; you are right: it shows as weather.br_unknown_station IF you do not specify a name for the weather component in the configuration…
If no name is specified, the weather component tries to specify its name as “br_[stationname]”; however, at the moment the sensor is created, no data has been fetched yet, so the stationname is unknown at that moment in time. As soon as data is fetched, the name gets updated, however the sensor was already created and its entity name defined…

If you specify the name of the component in the configuration, it will reflect that in the entity name:

weather:
  - platform: buienradar
    name: buienradar
    latitude: 51.65
    longitude: 5.70
    forecast: True

a config as shown above, will show up as:

Does buienradar also include the UV index? Or can you generate that via other means?

Just i changed my configuration.yaml

Get the following erros:

2017-06-21 15:30:25 INFO (MainThread) [homeassistant.loader] Loaded weather.buienradar from homeassistant.components.weather.buienradar
2017-06-21 15:30:25 INFO (MainThread) [homeassistant.components.weather] Setting up weather.buienradar
  File "/usr/local/lib/python3.4/dist-packages/homeassistant/components/weatherbuienradar.py", line 83, in condition
  File "/usr/local/lib/python3.4/dist-packages/homeassistant/components/sensor/buienradar.py", line 275, in condition
    from buienradar.buienradar import SYMBOL
ImportError: No module named 'buienradar'

What goes wrong.
My configuration.yaml:

weather:
  - platform: buienradar
    name: Buienradar
    forecast: True

Running on 0.47 Homeassistant

Conradh

Please try this fix, should solve it (see one of the posts above…)
Will become part of next release…

nope; no UV in their data (at least not the source i found)
They do have irradiance (W/m2), though

but that is not the same…

I had some rain ‘right now’ but should precipitation not be showing something then?

As a note, darksky has recently added UV to their api, which might be sufficient for just using only that.

If you just want to see the uv index; you could try this:

camera:
  - platform: generic
    name: UV Index
    still_image_url: 'http://www.rivm.nl/images/uvgif/UVI_NL.png'

That will show the current data from rivm for the uv index:

yes it shoudl show something…
However it all depends on the data for the selected weatherstation (voorschiten) in your case.

In my case, I had to force the buienradar sensor to not use the nearest station, since it was way closer to sea than I am, which has a big influence on temperature, etc. So I forced it to use lopik for me. Of course, if it rains right now, it should show precipitation, but it all depends on teh data you get from the selected weatherstation (if it does not rain there, it will show no rain, even though it rains outside with you)

This is my current precipitation, though (lopik):

Thats indeed a nice option too, but i would like to have it as a number. That way you can somewhat determine the intensity of the sun. Which i could use to trigger my sunscreen. “UV index 1” with 20 degrees means that it won’t really heat up my house through the windows, if this goes to 5+ it will at 20 degrees, something like that. I am also trying to just use difference inside and outside too. (and to be alerted when i have to use sunscreen for the kids if they go to school)

Changed my station to “Schiphol” lets see if i can see some precipitation. Is there a easy way to see which station is the closest?

I used this to see all stations:
https://www.buienradar.nl/nederland/weerbericht/weergrafieken/

Was trying to find a map of the weather stations… unable to find it.
closest I found: https://www.buienradar.nl/nederland/weerbericht/weerstations

Hi

I updated the documentation of the weather component; if you check the component documentation you can see why this is and what you could do to change this behavior

Your “and this:” is empty, but indeed that is where i checked, but i don’t know “all” the places, hence a graph would be nice, but i’ve taken “Schiphol” to test, since that must surely have rain meters.

2017-06-25 20:35:42 ERROR (MainThread) [homeassistant.loader] Error loading homeassistant.components.weather.buienradar. Make sure all dependencies are installed
Traceback (most recent call last):
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/loader.py", line 141, in get_component
    module = importlib.import_module(path)
  File "/usr/lib/python3.4/importlib/__init__.py", line 109, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 2254, in _gcd_import
  File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
  File "<frozen importlib._bootstrap>", line 2226, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1200, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1129, in _exec
  File "<frozen importlib._bootstrap>", line 1471, in exec_module
  File "<frozen importlib._bootstrap>", line 321, in _call_with_frames_removed
  File "/srv/homeassistant/lib/python3.4/site-packages/homeassistant/components/weather/buienradar.py", line 16, in <module>
    from homeassistant.components.sensor.buienradar import (
ImportError: cannot import name 'BrData'
2017-06-25 20:35:42 ERROR (MainThread) [homeassistant.loader] Unable to find component weather.buienradar

anyone any suggestion

My solution uses the GPS data which is very accurate. Maybe you could extend your platform to include this data too?