[SOLVED] Weather1 1.13.0 not working with newer providers - All Bindings either 2.4.0 or 1.13.0

Tags: #<Tag:0x00007faed7e96708>

Hi,

I wanted to add a new provider to my weather binding (weather1) and picked ApiXU as in the documentation.
My log files returned, they couldnt find the provider ApiXU.
I tested an older provider (ForecastIO) - it worked.
So i found out all my bindings are either 2.4.0 or the ones which end with “1” are 1.13.0.
I’m a bit confused, that in the online documentation of the binding “weather1” it seems in the upper right corner there is a version “2.4” etc?
So I feel that I have trouble with newer provider (Weatherbit wasnt found as well) so I guess my binding - or even all ending with 1 - are outdated?!

Paper UI > Configuration > System > AddOn-Management
ENABLED Access Remote Repository
DISABLED Include Legacy 1.x Bindings

These Addons are shown 1.13.0 (I wrote them down from Paper UI)
action-telegram
binding-expire1,fritzboxtr0641,http1,weather1,wol1
persistence-mysql

All other used items are 2.4.0

I also did just reinstall all bindings through addons.cfg.

weather1 indicates it is an OpenHAB 1 binding that is no longer being developed. All binding names ending in 1 are deprecated & outdated.

Currently I am experimenting with the new DarkSky (formerly ForecastIO) binding that is in the latest snapshots. I am running ir manually installed on 2.5M1 though.

This isn’t entirely correct. If you look at the openhab-addons repo you will still see a lot of activity involving the 1.x version bindings.

These are bindings that were originally written for openHAB 1.x. OH 2.x retains support for 1.x bindings but that was only ever intended to be a stop gap until the bindings could be rewritten in the 2.x architecture. If you have a choice between a 1.x binding and a2.x binding, you are better off choosing a 2.x binding. The Weather 1 binding has largely been replaced by individual 2.x bindings (OpenWeatherMap, DarkSky, etc).

Weather 1 binding was never meant to be comprehensive. Even when it was the only choice there were many weather providers it never supported. And each provider in OH 2 gets it’s own binding. If you have a provider that you want to have support for in OH 2, you need to create a new binding for that provider.

I see no way of replicating a lol similar to weather1 with the bindings. I have been trying different things with one of them since I miss that from Home Assistant

ok, I see there seem to be a newer Version of my OH 1-Binding out there.
So which is the best way to update OH-1 Binding since PaperUI and config-file gets me older Version. I guess I have to get the .jar-file somewhere?

These are the regarding LOG-Files testing API XU

2019-07-12 22:46:21.251 [WARN ] [eather.internal.common.WeatherConfig] - Provider with name 'ApiXU' not found. Check openhab.cfg.
2019-07-12 22:46:21.260 [ERROR] [org.apache.felix.configadmin        ] - [org.osgi.service.cm.ManagedService, org.osgi.service.event.EventHandler, id=508, bundle=253/mvn:org.openhab.binding/org.openhab.binding.weather/1.13.0]: Updating property weather of configuration org.openhab.weather caused a problem: Provider with name 'ApiXU' not found. Check openhab.cfg.
org.osgi.service.cm.ConfigurationException: weather : Provider with name 'ApiXU' not found. Check openhab.cfg.
	at org.openhab.binding.weather.internal.common.WeatherConfig.getProviderName(WeatherConfig.java:218) ~[?:?]
	at org.openhab.binding.weather.internal.common.WeatherConfig.parseApiKey(WeatherConfig.java:179) ~[?:?]
	at org.openhab.binding.weather.internal.common.WeatherConfig.parse(WeatherConfig.java:88) ~[?:?]
	at org.openhab.binding.weather.internal.bus.WeatherBinding.updated(WeatherBinding.java:82) ~[?:?]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker$1.run(ManagedServiceTracker.java:177) ~[9:org.apache.felix.configadmin:1.9.4]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:173) ~[9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1389) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread$1.run(UpdateThread.java:126) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread$1.run(UpdateThread.java:123) [9:org.apache.felix.configadmin:1.9.4]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:122) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:105) [9:org.apache.felix.configadmin:1.9.4]
	at java.lang.Thread.run(Thread.java:748) [?:?]

And Weatherbit, I added some more debug with karaf

2019-07-13 13:04:00.266 [DEBUG] [org.openhab.binding.weather         ] - BundleEvent INSTALLED - org.openhab.binding.weather
2019-07-13 13:04:01.387 [DEBUG] [org.openhab.binding.weather         ] - BundleEvent RESOLVED - org.openhab.binding.weather
2019-07-13 13:04:01.521 [DEBUG] [org.openhab.binding.weather         ] - BundleEvent STARTING - org.openhab.binding.weather
2019-07-13 13:04:01.556 [DEBUG] [eather.internal.bus.WeatherActivator] - Weather binding has been started.
2019-07-13 13:04:01.669 [DEBUG] [org.openhab.binding.weather         ] - ServiceEvent REGISTERED - {org.osgi.service.cm.ManagedService, org.osgi.service.event.EventHandler}={service.id=436, service.bundleid=253, service.scope=bundle, event.topics=openhab/command/*, service.pid=org.openhab.weather, component.name=org.openhab.binding.weather, component.id=273} - org.openhab.binding.weather
2019-07-13 13:04:02.014 [WARN ] [eather.internal.common.WeatherConfig] - Provider with name 'Weatherbit' not found. Check openhab.cfg.
2019-07-13 13:04:02.021 [ERROR] [org.apache.felix.configadmin        ] - [org.osgi.service.cm.ManagedService, org.osgi.service.event.EventHandler, id=436, bundle=253/mvn:org.openhab.binding/org.openhab.binding.weather/1.13.0]: Updating property weather of configuration org.openhab.weather caused a problem: Provider with name 'Weatherbit' not found. Check openhab.cfg.
org.osgi.service.cm.ConfigurationException: weather : Provider with name 'Weatherbit' not found. Check openhab.cfg.
	at org.openhab.binding.weather.internal.common.WeatherConfig.getProviderName(WeatherConfig.java:218) ~[?:?]
	at org.openhab.binding.weather.internal.common.WeatherConfig.parseApiKey(WeatherConfig.java:179) ~[?:?]
	at org.openhab.binding.weather.internal.common.WeatherConfig.parse(WeatherConfig.java:88) ~[?:?]
	at org.openhab.binding.weather.internal.bus.WeatherBinding.updated(WeatherBinding.java:82) ~[?:?]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker$1.run(ManagedServiceTracker.java:177) ~[9:org.apache.felix.configadmin:1.9.4]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:173) ~[9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.provide(ConfigurationManager.java:1102) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.run(ConfigurationManager.java:1058) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread$1.run(UpdateThread.java:126) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread$1.run(UpdateThread.java:123) [9:org.apache.felix.configadmin:1.9.4]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
	at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:122) [9:org.apache.felix.configadmin:1.9.4]
	at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:105) [9:org.apache.felix.configadmin:1.9.4]
	at java.lang.Thread.run(Thread.java:748) [?:?]

I think the latest snapshot can be found at

https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.weather/1.14.0-SNAPSHOT/

1 Like

Thanks! My binding works now with ApiXU and Weatherbit.

Still not sure why it won’t pull latest version of OH1 Binding with PaperUI but since OH1 is legacy it would matter less in future.

The version of the bindings and of OH core move forward in lock step. When you use openHAB 2.4, you will only see 2.4 and 1.12 version bindings in PaperUI.