HELP - weather Binding not working

Hi,

i am trying to get the weather binding up and running on OH 1.7 on a PI.

I have a wonderground API Key that i could access with HTTP binding easily.

My openhab config:

################################### Weather Binding ###################################
#
# The apikey for the different weather providers, at least one must be specified
# Note: Hamweather requires two apikeys: client_id=apikey, client_secret=apikey2
#weather:apikey.ForecastIo=
#weather:apikey.OpenWeatherMap=
#weather:apikey.WorldWeatherOnline=
weather:apikey.Wunderground=0bb12587d7d6xxxx
#weather:apikey.Hamweather=
#weather:apikey2.Hamweather=

# location configuration, you can specify multiple locations
weather:location.<LuBu>.latitude=48.885901
weather:location.<LuBu>.longitude=9.1633057,17
weather:location.<LuBu>.provider=Wunderground
weather:location.<LuBu>.language=de
weather:location.<LuBu>.updateInterval=5

my items:

Number		Weather_Temperature		"Temperature [%.2f °C]"	{weather="locationId=LuBu, type=temperature, property=current, scale=1" }
Number		Weather_Humidity		"Humidity [%d %%]"	{weather="locationId=LuBu, type=athmosphere, property=humidity, scale=1" }
Number		Weather_Temp_Max_0		"Today's highest temperature [%.1f °C]"	{weather="locationId=LuBu, forecast=0, type=temperature, property=max, scale=1" }
Number		Weather_Temp_Max_1		"Temperature max tomorrow [%.1f °C]"	{weather="locationId=LuBu, forecast=1, type=temperature, property=max, scale=1" }
Number		Weather_Temp_Min_0		"Today's lowest temperature [%.1f °C] "	{weather="locationId=LuBu, forecast=0, type=temperature, property=min, scale=1" }
Number		Weather_Temp_Min_1		"Temperature min tomorrow [%.1f °C]"	{weather="locationId=LuBu, forecast=1, type=temperature, property=min, scale=1" }
Number		Weather_Pressure		"Pressure [%.2f mb]"	{weather="locationId=LuBu, type=athmosphere, property=pressure, scale=1" }
Number		Weather_Precipitation		"Precip probability [%d %%]"	{weather="locationId=LuBu, type=precipitation, property=probability"}
Number		Weather_Precipitation_1		"Precip probability [%d %%]"							(All,gDashboard, Weather)					{weather="locationId=LuBu, type=precipitation, forecast=1, property=probability"}
Number		Weather_Wind_Speed		"Windspeed [%.2f kmh]"	{weather="locationId=LuBu, type=wind, property=speed"}

any idea/ help?

thanks
Karsten

Hi Karsten, try removing the “<>” from your location configuration, like so: weather:location.LuBu.latitude…

ok - did so - as well moved to a complete clean (empty openhab).

Then used Yahoo as provider instead of Wonderground that pulled Data to my OH.

Now i need to activate wonderground - which works with the APIkey and http binding easily to get data from. i am really starting to loose track of what i have to do in addtion.

anyhow - otherwize i change to another weather provider.

1 Like

my working .items config file if it helps:

Group weather

Number   HumidityWU          "Humidity [%d %%]"                             <humidity>       (weather)       {weather="locationId=home, type=atmosphere, property=humidity"}
Number   Pressure_Inches     "Pressure [%.2f in]"                           <climate>        (weather)       {weather="locationId=home, type=atmosphere, property=pressure, unit=inches"}
String   Condition           "Condition [%s]"                               <sun_clouds>     (weather)       {weather="locationId=home, type=condition, property=text"}
DateTime LastUpdate          "Last update [%1$td.%1$tm.%1$tY %1$tH:%1$tM]"  <text>                           {weather="locationId=home, type=condition, property=lastUpdate"}
Number   Temperature_F       "Temperature [%.2f °F]"                        <temperature>    (temp,weather)  {weather="locationId=home, type=temperature, property=current, unit=fahrenheit"}
Number   Temp_Feel_F         "Temperature feel [%.2f °F]"                   <temperature>    (temp,weather)  {weather="locationId=home, type=temperature, property=feel, unit=fahrenheit"}
Number   Temp_Dewpoint_F     "Dewpoint [%.2f °F]"                           <temperature>    (weather)       {weather="locationId=home, type=temperature, property=dewpoint, unit=fahrenheit"}
String   Temp_MinMax_F         "Min/Max [%s °F]"                                               (weather)       {weather="locationId=home, type=temperature, property=minMax, unit=fahrenheit"}
Number   Wind_Speed_Mph      "Windspeed [%.2f mph]"                         <wind>           (weather)       {weather="locationId=home, type=wind, property=speed, unit=mph"}
String   Wind_Direction      "Wind direction [%s]"                          <wind>           (weather)       {weather="locationId=home, type=wind, property=direction"}
Number   Wind_Degree         "Wind degree [%.0f °]"                         <wind>           (weather)       {weather="locationId=home, type=wind, property=degree"}
Number   Wind_Gust_Mph       "Wind gust [%.2f mph]"                         <wind>           (weather)       {weather="locationId=home, type=wind, property=gust, unit=mph"}
Number   Rain                "Rain [%.2f mm/h]"                             <water>          (weather)       {weather="locationId=home, type=precipitation, property=rain"}
Number   Rain_Inches         "Rain [%.2f in/h]"                             <water>          (weather)       {weather="locationId=home, type=precipitation, property=rain, unit=inches"}
Number   UV_Index            "UV Index"                                     <sun>            (ALL,weather)   {weather="locationId=home, type=atmosphere, property=uvIndex, scale=0"}

Whilst on the subject, I don’t suppose anyone has any example items and html files using the weather binding to display icons? I’ve tried using the example html items in the weather-data download, but without success…

thanks!

I made the experience that not all data items delivered by the weather service are mapped to openhab binding types and properties. The documentation is poor in this part - you have to have a look into the code to see what is mapped on which type and property.

I use WorldWeatherOnline and had to extend the binding in some cases. I found too that some data is only available by additionally specifying “forecast=0” which is the forecast for the current day.

Hope it helps - Robert

@dan12345, here is what I’ve done.

I am using the Weather binding and pulling data from Yahoo. I also have a Webview with a compact summary of current conditions and the forecast. I’m using Yahoo’s condition icons in the sitemap. I also save temp and humidity values and present some charts in the sitemap.

I’m using Yahoo but the instructions purport to work with Wunderground, though the condition IDs might be different.

First I followed the instructions here to download and rename the weather condition icons for OH’s use and for making the map for the condition codes. However, these instructions have your item pull the data from Yahoo directly through the HTTP binding and applying an XSLT transform rather than getting the data through the Weather binding so I don’t use the transform. I use these icons for Condition_Id in my sitemap.

I am using rrd4j for persistence and charting, saving the charted items once a minute.

I can’t remember where I saw this example (maybe in the demo?) but I have some charts I use to see the weather, humidity, and pressure with a switch to move between three different charting periods (last hour, last day, last week).

Finally, I used the instructions at the bottom of the Weather Binding’s wiki page to create the webview of the current and next two days of the forecast. I customized it somewhat for my own purposes.

Here is my binding config:

# No API key when using Yahoo
weather:location.home.name=Home
weather:location.home.latitude=XX.XXXXXX
weather:location.home.longitude=XXX.XXXXXX
weather:location.home.provider=Yahoo
weather:location.home.language=en
weather:location.home.updateInterval=10

Items:

String      Condition_Id    "Weather is [MAP(yahoo_weather_code.map):%s]"   { weather="locationId=home, type=condition, property=id" }

Number          Weather_Temperature     "Outside Temperature [%.0f] °F" <temperature>   { weather="locationId=home, type=temperature, property=current, unit=fahrenheit" }
Number          Weather_Humidity        "Outside Humidity [%d%%]"               <temperature>   { weather="locationId=home, type=athmosphere, property=humidity" }
Number          Weather_Pressure        "Barometric Pressure [%.2f in]" <temperature>   { weather="locationId=home, type=athmosphere, property=pressure, unit=inches" }
Number          Weather_Pressure_Chart_Period   "Chart Period"
Number          Weather_Temp_Min        "Today's Minimum [%.0f] °F"     <temperature>   
Number          Weather_Temp_Max        "Today's Maximum [%.0f] °F"     <temperature>   
Number          Weather_Chart_Period             "Chart Period"
DateTime        Weather_LastUpdate "Last Update [%1$ta %1$tr]"          <clock>
Number          Weather_Humidity_Chart_Period   "Chart Period"

DateTime Weather_Forecast_Day_1 "[%1$tA]" { weather="locationId=home, forecast=1, type=condition, property=observationTime" }
DateTime Weather_Forecast_Day_2 "[%1$tA]" { weather="locationId=home, forecast=2, type=condition, property=observationTime" }

Number Weather_Temp_Min_1 "Tomorrow's Minimum [%.0f] °F" <temperature> { weather="locationId=home, forecast=1, type=temperature, property=min, unit=fahrenheit" }
Number Weather_Temp_Max_1 "Tomorrow's Minimum [%.0f] °F" <temperature> { weather="locationId=home, forecast=1, type=temperature, property=max, unit=fahrenheit" }
Number Weather_Temp_Min_2 "Tomorrow's Minimum [%.0f] °F" <temperature> { weather="locationId=home, forecast=2, type=temperature, property=min, unit=fahrenheit" }
Number Weather_Temp_Max_2 "Tomorrow's Minimum [%.0f] °F" <temperature> { weather="locationId=home, forecast=2, type=temperature, property=max, unit=fahrenheit" }

Rules:

import org.openhab.core.library.types.*

rule "Update max and min temperatures"
when
        Item Weather_Temperature changed or
        Time cron "1 0 0 * * ?" or
        System started
then
        val startOfDay = now.toDateMidnight
        if(Weather_Temperature != null) {
        postUpdate(Weather_Temp_Max, Weather_Temperature.maximumSince(startOfDay).state)
        postUpdate(Weather_Temp_Min, Weather_Temperature.minimumSince(startOfDay).state)
    }
end

rule "Records last weather update time"
when
  Item Weather_Temperature received update
then
  postUpdate(Weather_LastUpdate, new DateTimeType())
end

Sitemap:

Frame label="Weather" {
    Text item=Condition_Id icon="yahoo_weather" {
        Frame {
            Text item=Weather_LastUpdate visibility=[Weather_LastUpdate>30] valuecolor=[Weather_LastUpdate>120="orange", Weather_LastUpdate>300="red"]
            Text item=Weather_Temperature valuecolor=[Weather_LastUpdate=="Uninitialized"="lightgray",Weather_LastUpdate>90="lightgray",>77="orange",>60="green",>40="aqua",<=40="blue"]{
            Frame {
                Text item=Weather_Temp_Max valuecolor=[>77="orange",>60="green",>40="aqua",<=40="blue"]
                Text item=Weather_Temp_Min valuecolor=[>77="orange",>60="green",>40="aqua]",<=40="blue"]
            }
            Frame {
                Switch item=Weather_Chart_Period label="Period" mappings=[0="Hour", 1="Day", 2="Week"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Temperature,Weather_Temp_Max,Weather_Temp_Min&period=h" refresh=6000 visibility=[Weather_Chart_Period==0, Weather_Chart_Period=="Uninitialized"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Temperature,Weather_Temp_Max,Weather_Temp_Min&period=D" refresh=30000 visibility=[Weather_Chart_Period==1]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Temperature,Weather_Temp_Max,Weather_Temp_Min&period=W" refresh=30000 visibility=[Weather_Chart_Period==2]
              }
         }
        Text item=Weather_Humidity {
            Frame {
                Switch item=Weather_Humidity_Chart_Period label="Period" mappings=[0="Hour", 1="Day", 2="Week"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Humidity&period=h" refresh=6000 visibility=[Weather_Humidity_Chart_Period==0, Weather_Humidity_Chart_Period=="Uninitialized"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Humidity&period=D" refresh=30000 visibility=[Weather_Humidity_Chart_Period==1]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Humidity&period=W" refresh=30000 visibility=[Weather_Humidity_Chart_Period==2]
            }
        }
        Text item=Weather_Pressure {
            Frame {
                Switch item=Weather_Pressure_Chart_Period label="Period" mappings=[0="Hour", 1="Day", 2="Week"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Pressure&period=h" refresh=6000 visibility=[Weather_Pressure_Chart_Period==0, Weather_Pressure_Chart_Period=="Uninitialized"]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Pressure&period=D" refresh=30000 visibility=[Weather_Pressure_Chart_Period==1]
                Image url="http://localhost:8080/rrdchart.png?items=Weather_Pressure&period=W" refresh=30000 visibility=[Weather_Pressure_Chart_Period==2]
             }
         }
         Webview url="/weather?locationId=home&layout=example&iconset=colorful" height=7
     }
 }

Webview HTML:

<!DOCTYPE html>
<html>
<head>
        <meta http-equiv="Content-type" CONTENT="text/html; charset=utf-8">
        <link rel="stylesheet" type="text/css" href="weather-data/layouts/example.css" />
        <script type="text/javascript" src="weather-data/layouts/example.js"></script>
</head>

<body id="weather-body" onload="formatIframe()">
        <div id="weather-location-name">${config:name}, ${item:Weather_LastUpdate} Sunrise: ${item:Sunrise_Time} / Sunset: ${item:Sunset_Time}</div>

        <table id="weather-table">
                <tr>
                        <td rowspan="2"><img id="weather-icon" src="weather-data/images/${param:iconset}/${weather:condition.commonId}.png"/></td>
                        <td id="weather-temp">${item:Weather_Temperature.state}</td>
                        <td id="weather-temp-sign">°F</td>
                </tr>
                <tr>
                        <td colspan="2">
                                <table id="weather-table-details">
                                        <tr>
                                                <td>Humidity:</td>
                                                <td>${weather:atmosphere.humidity}%</td>
                                        </tr>
                                        <tr>
                                                <td>Pressure:</td>
                                                <td>${item:Weather_Pressure}</td>
                                        </tr>
                                </table>
                        </td>
                </tr>
        </table>

        <table id="weather-forecast-table">
                <tr>
                        <td>Today</td>
                        <td>${item:Weather_Forecast_Day_1}</td>
                        <td>${item:Weather_Forecast_Day_2}</td>
                </tr>
                <tr>
                        <td><img src="weather-data/images/${param:iconset}/${forecast(0):condition.commonId}.png"/></td>
                        <td><img src="weather-data/images/${param:iconset}/${forecast(1):condition.commonId}.png"/></td>
                        <td><img src="weather-data/images/${param:iconset}/${forecast(2):condition.commonId}.png"/></td>
                </tr>
                <tr>
                        <td class="temp-max">${item:Weather_Temp_Min} °F</td>
                        <td class="temp-max">${item:Weather_Temp_Min_1} °F</td>
                        <td class="temp-max">${item:Weather_Temp_Min_2} °F</td>
                </tr>
                <tr>
                        <td class="temp-min">${item:Weather_Temp_Max} °F</td>
                        <td class="temp-min">${item:Weather_Temp_Max_1} °F</td>
                        <td class="temp-min">${item:Weather_Temp_Max_2} °F</td>
                </tr>
        </table>

</body>

</html>

What it looks like:

etc.

Hope this helps.

Rich

EDIT: Fixed an error in the openhab.cfg section. I needed to have:

weather.location.home.provider=Yahoo
weather.location.home.language=en

not

weather.location.provider=Yahoo
weather.location.language=en
5 Likes

thanks - really appreciate you taking the time. I will have a go!

Dan

Nice work!
Could you please tell me where do the html file need to be copied?
The yahoo links needs to be modified?
Thanks.

Read the Weather Binding’s wiki page. Everything is explained there.

Hi Rich,

This is great, thanks for sharing; it’s always good to see someone’s actual working setup.

I’ve copied your example, but seem to be having problems.

  1. In designer, and the line:
val startOfDay = now.toDateMidnight

the toDateMidnight text is shown as strikethrough text
2) The values recorded are always the same as the actual temperature, I’ve added some logging:

logInfo("weather - ", "Time: " + startOfDay)
postUpdate(Weather_Temp_Max, Weather_Temperature.maximumSince(startOfDay).state)
logInfo("weather - ", "Max: " + Weather_Temperature.maximumSince(startOfDay).state)
postUpdate(Weather_Temp_Min, Weather_Temperature.minimumSince(startOfDay).state)
logInfo("weather - ", "Min: " + Weather_Temperature.minimumSince(startOfDay).state)

the corresponding log file entry shows:

2015-10-12 22:31:31 - Weather_Temperature state updated to 8.40
2015-10-12 22:31:31 - Weather_LastUpdate state updated to 2015-10-12T22:31:31
2015-10-12 22:31:31 - Weather_Temp_Max state updated to 8.40
2015-10-12 22:31:31 - Weather_Temp_Min state updated to 8.40

I’m really running out of ideas in what I’m doing wrong!

Cheers
James

Yes, if you hover over that line it will say that the toDateMidnight is deprecated which means that while it works for now, it may not be there at the next update. I’ve not spent the time to go back and figure out the alternative way to calculate it. For now it should work.

What persistence are you using? If you are using rrd4j, are you using an every minute strategy for these items? What is being logged out to your openhab.log?

Hi Rick,

Am trying to understand the weather binding and using your example as a template. Do you mind sharing your map file?

Also I think you are missing a closing bracket in the sitemap code.

Thanks

yahoo_weather_code.map

-=Unknown
0=Tornado
1=Tropical Storm
2=Hurricane
3=Severe Thunderstorms
4=Thunderstorms
5=Mixed Rain and Snow
6=mixed Rain and Sleet
7=mixed Snow and Sleet
8=Freezing Drizzle
9=Drizzle
10=Freezing Rain
11=Showers
12=Showers
13=Snow Flurries
14=Light Snow Showers
15=Blowing Snow
16=Snow
17=Hail
18=Sleet
19=Dust
20=Foggy
21=Haze
22=Smoky
23=Blustery
24=Windy
25=Cold
26=Cloudy
27=Mostly Cloudy (Night)
28=Mostly Cloudy (Day)
29=Partly Cloudy (Night)
30=Partly Cloudy (Day)
31=Clear (Night)
32=Sunny
33=Fair (Night)
34=Fair (Day)
35=Mixed Rain and Hail
36=Hot
37=Isolated Thunderstorms
38=Scattered Thunderstorms
39=Scattered Thunderstorms
40=Scattered Showers
41=Heavy Snow
42=Scattered Snow Showers
43=Heavy Snow
44=Partly Cloudy
45=Thundershowers
46=Snow Showers
47=Isolated Thundershowers

I don’t think so. I just did a quick hand count and they seem matchup. I copied and pasted the sitemap in from my working copy so it should work.

I am starting with the basics.

as per the binding instructions i updated the config file.

copies and modified the items from the wiki page and updated the sitemap but no data is being pulled in.

log

2015-10-13 11:48:24.923 [INFO ] [.o.core.internal.CoreActivator] - openHAB runtime has been started (v1.7.1).
2015-10-13 11:48:30.246 [INFO ] [o.o.i.s.i.DiscoveryServiceImpl] - mDNS service has been started
2015-10-13 11:48:30.415 [INFO ] [o.o.i.s.i.DiscoveryServiceImpl] - Service Discovery initialization completed.
2015-10-13 11:48:38.385 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘default.sitemap’
2015-10-13 11:48:39.508 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘logging.persist’
2015-10-13 11:48:39.605 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘exec.persist’
2015-10-13 11:48:40.128 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘rrd4j.persist’
2015-10-13 11:48:40.172 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘db4o.persist’
2015-10-13 11:48:40.437 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘demo.script’
2015-10-13 11:48:40.945 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘default.items’
2015-10-13 11:48:41.214 [INFO ] [penhab.io.rest.RESTApplication] - Started REST API at /rest
2015-10-13 11:48:50.556 [INFO ] [.o.u.w.i.servlet.WebAppServlet] - Started Classic UI at /openhab.app
2015-10-13 11:48:58.235 [INFO ] [.o.io.habmin.HABminApplication] - Started HABmin REST API at /services/habmin
2015-10-13 11:49:01.432 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘demo.rules’
2015-10-13 11:49:02.307 [INFO ] [c.internal.ModelRepositoryImpl] - Loading model ‘default.rules’
2015-10-13 11:49:08.767 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:08.769 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:08.771 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:08.841 [INFO ] [.z.internal.ZWaveActiveBinding] - Update config, port = /dev/ttyAMA0
2015-10-13 11:49:08.842 [INFO ] [.z.internal.ZWaveActiveBinding] - Update config, healtime = 2
2015-10-13 11:49:08.852 [INFO ] [.service.AbstractActiveService] - ZWave Refresh Service has been started
2015-10-13 11:49:08.957 [INFO ] [b.z.i.protocol.ZWaveController] - Starting Z-Wave controller
2015-10-13 11:49:08.959 [INFO ] [b.z.i.protocol.ZWaveController] - Z-Wave timeout is set to 5000ms. Soft reset is false.
2015-10-13 11:49:08.960 [INFO ] [b.z.i.protocol.ZWaveController] - Connecting to serial port /dev/ttyAMA0
2015-10-13 11:49:08.975 [INFO ] [.service.AbstractActiveService] - HTTP Refresh Service has been started
2015-10-13 11:49:10.982 [INFO ] [.service.AbstractActiveService] - XBMC Refresh Service has been started
2015-10-13 11:49:13.099 [INFO ] [b.z.i.protocol.ZWaveController] - Serial port is initialized
2015-10-13 11:49:13.266 [INFO ] [.service.AbstractActiveService] - NTP Refresh Service has been started
2015-10-13 11:49:13.426 [INFO ] [.service.AbstractActiveService] - Nest Refresh Service has been started
2015-10-13 11:49:13.562 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:13.564 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:13.566 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:16.237 [WARN ] [ApplicationCommandMessageClass] - NODE 5: Not initialized yet, ignoring message.
2015-10-13 11:49:16.267 [WARN ] [ApplicationCommandMessageClass] - NODE 5: Not initialized yet, ignoring message.
2015-10-13 11:49:16.310 [ERROR] [eController$ZWaveReceiveThread] - Protocol error (CAN), resending
2015-10-13 11:49:16.316 [WARN ] [ApplicationCommandMessageClass] - NODE 5: Not initialized yet, ignoring message.
2015-10-13 11:49:16.569 [ERROR] [eController$ZWaveReceiveThread] - Protocol error (CAN), resending
2015-10-13 11:49:16.574 [WARN ] [ApplicationCommandMessageClass] - NODE 5: Not initialized yet, ignoring message.
2015-10-13 11:49:16.852 [INFO ] [rialApiGetInitDataMessageClass] - NODE 1: Node found
2015-10-13 11:49:16.853 [INFO ] [rialApiGetInitDataMessageClass] - NODE 2: Node found
2015-10-13 11:49:16.854 [INFO ] [rialApiGetInitDataMessageClass] - NODE 3: Node found
2015-10-13 11:49:16.855 [INFO ] [rialApiGetInitDataMessageClass] - NODE 5: Node found
2015-10-13 11:49:16.855 [INFO ] [rialApiGetInitDataMessageClass] - NODE 6: Node found
2015-10-13 11:49:16.856 [INFO ] [rialApiGetInitDataMessageClass] - NODE 7: Node found
2015-10-13 11:49:16.857 [INFO ] [rialApiGetInitDataMessageClass] - ZWave Controller using Controller API
2015-10-13 11:49:16.858 [INFO ] [rialApiGetInitDataMessageClass] - ZWave Controller is Primary Controller
2015-10-13 11:49:16.859 [INFO ] [rialApiGetInitDataMessageClass] - ------------Number of Nodes Found Registered to ZWave Controller------------
2015-10-13 11:49:16.860 [INFO ] [rialApiGetInitDataMessageClass] - # Nodes = 6
2015-10-13 11:49:16.861 [INFO ] [rialApiGetInitDataMessageClass] - ----------------------------------------------------------------------------
2015-10-13 11:49:17.823 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class SWITCH_ALL
2015-10-13 11:49:17.942 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 6: Unsupported command class SWITCH_ALL
2015-10-13 11:49:18.032 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 7: Unsupported command class SCENE_ACTUATOR_CONF
2015-10-13 11:49:18.034 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 7: Unsupported command class SWITCH_ALL
2015-10-13 11:49:18.491 [WARN ] [i.p.s.IsFailedNodeMessageClass] - NODE 5: Is currently marked as failed by the controller!
2015-10-13 11:49:18.909 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:18.912 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:18.913 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:19.422 [WARN ] [.z.internal.ZWaveActiveBinding] - NODE 7: No item bound for event, endpoint = 0, command class = SWITCH_BINARY, value = 0, ignoring.
2015-10-13 11:49:22.723 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:22.725 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:22.726 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:27.052 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:27.054 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:27.055 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:33.777 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:33.779 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:33.780 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:36.992 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:36.993 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:36.994 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:40.991 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:40.993 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:40.994 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:42.813 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:42.814 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:42.815 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:46.842 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:46.843 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group
2015-10-13 11:49:46.844 [ERROR] [o.u.i.items.ItemUIRegistryImpl] - Cannot retrieve item gC for widget org.openhab.model.sitemap.Group

config file

weather:location.home.name=MyHome
weather:location.home.latitude=latitude here
weather:location.home.longitude=longitude here
weather:location.home.provider=Yahoo
weather:location.home.language=en
weather:location.home.updateInterval=10

items

String Condition “Condition [%s]” {weather=“locationId=home, type=condition, property=text”}
DateTime LastUpdate “Last update [%1$td.%1$tm.%1$tY %1$tH:%1$tM]” {weather=“locationId=home, type=condition, property=lastUpdate”}

// precipitation
Number Rain_Inches “Rain [%.2f in/h]” (WeatherYahoo) {weather=“locationId=home, type=precipitation, property=rain, unit=inches”}
Number Snow_Inches “Snow [%.2f in/h]” (WeatherYahoo) {weather=“locationId=home, type=precipitation, property=snow, unit=inches”}
Number Precip_Probability “Precip probability [%d %%]” (WeatherYahoo) {weather=“locationId=home, type=precipitation, property=probability”}

Number Temperature “Temperature [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=current”}
Number Temp_Feel “Temperature feel [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=feel”}
Number Temp_Dewpoint “Dewpoint [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=dewpoint”}

// min and max values only available in forecasts
Number Temp_Min “Temperature min [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=min”}
Number Temp_Max “Temperature max [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=max”}
String Temp_MinMax “Min/Max [%s °C]” (WeatherYahoo) {weather=“locationId=home, type=temperature, property=minMax”}

// wind
Number Wind_Speed “Windspeed [%.2f km/h]” (WeatherYahoo) {weather=“locationId=home, type=wind, property=speed”}
Number Wind_Chill “Wind chill [%.2f °C]” (WeatherYahoo) {weather=“locationId=home, type=wind, property=chill”}
Number Clouds “Clouds [%.0f %%]” (WeatherYahoo) {weather=“locationId=home, type=clouds, property=percent”}

// atmosphere
Number Humidity “Humidity [%d %%]” (WeatherYahoo) {weather=“locationId=home, type=atmosphere, property=humidity”}
Number Visibility “Visibility [%.2f km]” (WeatherYahoo) {weather=“locationId=home, type=atmosphere, property=visibility”}
Number Pressure “Pressure [%.2f mb]” (WeatherYahoo) {weather=“locationId=home, type=atmosphere, property=pressure”}
Number Ozone “Ozone [%d ppm]” (WeatherYahoo) {weather=“locationId=home, type=atmosphere, property=ozone”}
Number UV_Index “UV Index” (WeatherYahoo) {weather=“locationId=home, type=atmosphere, property=uvIndex, scale=0”}

sitemap

Frame label=“Weather” {
Text item=Condition
Text item=LastUpdate
Group item=WeatherYahoo
}

Do you have org.openhab.binding.weather-1.7.1.jar in your addons folder?

The logs indicate that the binding is not running.

this is embarrasing.

it is running now. Since I was running the demo I assumed it was already there.

thanks again.

Thanks Rich,

The alternative to toDateMidnight is withTimeAtStartOfDay.

I’m not sure it’s significant, but the minimumSInce and maximumSince methods show as red in designer?

The openhab.log shows the following output:

2015-10-13 19:47:38.706 [INFO ] [penhab.model.script.weather - ] - Time: 2015-10-13T00:00:00.000+01:00
2015-10-13 19:47:38.744 [INFO ] [penhab.model.script.weather - ] - Max: 10.10
2015-10-13 19:47:38.767 [INFO ] [penhab.model.script.weather - ] - Min: 10.10

Which correspond to the entries in the .rules file in my earlier post.

There is nothing appearing for the persistance (influxdb) in the openhab.log files, I’ve added the following to logback.xml:

<logger name="org.openhab.persistence.influxdb" level="DEBUG">
        <appender-ref ref="FILE" />
</logger>

Cheers
James

Thanks for the alternative.

When I see nothing at all in the log files my first thing to check if is that the jar file is in addons. There should be at heart one line in the log saying it worked out had an error.

Also, make sure you did everything that the wiki page says to do to set it up. I think you have to install influxdb separately and configure the connection in openHAB.cfg.

Hi Rich,

I’m happy that persistence is working - I’m getting data into influx, and graphs via grafana (see attached).

James