Issue with ForecastIo precipitation accuracy


I’ve been using the ForecastIo weather binding for a while now to open and close a window. As it suddenly poured with rain today in London I checked what % probability I was getting and was surprised it was as low as 10%

So I looked at ForecastIo’s API directly for my location and it agreed with me - 100% chance of rain. So why does Openhab not see the same?

I’ve gone through my configuration and I can’t see an issue.

(Location and api key redacted)
My location and the ForecastIo call is:<lat, long>?units=si&lang=en&exclude=hourly,flags

My config is

Now if I compare logs with ForecastIo’s API directly I see:

ForecastIo direct:
latitude: ,
longitude: ,
timezone: “Europe/London”,
offset: 1,
currently: {
time: 1460049193,
summary: “Mostly Cloudy”,
icon: “partly-cloudy-day”,
nearestStormDistance: 5,
nearestStormBearing: 34,
precipIntensity: 0,
precipProbability: 0,
temperature: 9.88,
apparentTemperature: 7.21,
dewPoint: 4.86,
humidity: 0.71,
windSpeed: 5.66,
windBearing: 306,
visibility: 16.09,
cloudCover: 0.6,
pressure: 1009.65,
ozone: 368.97

Openhab logs

18:13:16.788 [DEBUG] [.w.i.p.AbstractWeatherProvider:75 ] - FORECASTIO[ForecastIo]: Weather[Temperature[current=9.88,min=,max=,feel=9.126933524688546,dewpoint=4.86],Atmosphere[humidity=71,visibility=16.09,pressure=1009.65,pressureTrend=down,ozone=368,uvIndex=],Clouds[percent=60],Condition[text=Mostly Cloudy,lastUpdate=Thu Apr 07 18:13:16 BST 2016,observationTime=Thu Apr 07 19:13:00 BST 2016,id=,icon=partly-cloudy-day,commonId=partly-cloudy-day],Precipitation[rain=0.5664,snow=0.0,probability=2,total=],Wind[speed=20.375999983699202,direction=NW,degree=306,gust=,chill=],Station[name=,id=,latitude=,longitude=],]

Many properties are the same - temperature, wind direction etc.

However probability of rain is incorrect - at the time I took this, it is given as 2% whilst ForecastIO has it as 0%. That difference is of course minor, but earlier in the day I had differences of 80%

I’ve looked through the source code but I can’t quite follow how this Json is parsed - that’s my lack of understanding, not a comment on code clarity!

I’m using the weather binding v1.8.2

Anyone got any ideas why I’m getting bad data?

Many thanks,