openHAB 3.0 Milestone 1 discussion

OK how do we know whats in and whats out? (can you point me to somewhere that it a tutorial for OH3 and mosquito?)

That should be very easy to find as google will give you many guides. This thread is not for discussing or helping things other than openhab 3, open new threads for other topics.

Openhabian can install it for you if u use it.

I only know as it has been posted on this forum for the past 6 months at least. The moquette broker has had zero development and fixes for the past two years. Mosquito is the standard broker that everyone uses and has plenty of fixes done for it.

I get lost in the concept of equipment.
In my bedroom are 3 knx lamellas-rollershutters.
On the one hand I want to control each of them - so each could be seen as “Equipment” with 2 channels (position and angle).
On the other hand I want to control the angles and positions as group - so from the point of view of the room, the bedroom could have 3 equipments: Light, Heating, Blinds

I assume this is a very common setting - so I’m not asking for an individual solution but a best practice in the sense of openhab terminology with things-equipment-items-groups…

The original Brick Scheme has the concept of zone

I assume you have read the OpenHAB concepts sections on the website. OpenHAB 3 is coming with many major changes.

Things represent physical devices. The best practice is usually to create them within the UI rather than trying to use text files.

Items can belong to multiple groups. Some people have groups per location. Some also group to make simultaneous control of multiple items easier. Whether you use text files or do this within the UI is a personal prefers. Stay far away from Simple Mode though.

You can add additional non-semantic groups for all the angle and position items. See this diagram at Getting Started with OH3: rewriting the tutorial - 6. Model your home with Items & link Channels

In general you can organize groups as you see fit like you did in OH2, the model is just an additional hierarchy of regular groups and items which just happen to be tagged to give them additional meaning

Location > Sub-location > Equipment > Sub-equipment > Point

Hi Yannick,
is the semantic tagging used for anything else than HABot and automatic generation of pages/cards?

Means: Will it be leveraged for Alexa/Google semantic as well or will this still be needed in addition?

One of the goals was to try to do just that - have a common ontology that could be mapped to Google’s or Amazon’s. But it has not happened yet (perhaps one day!) so you still have to configure the Alexa/Google metadata separately.

4 Likes

Thanks Hafniumzinc, I have an early version of OH3 running but I guess I couldn’t see WOL in network binding… should of consulted the docs.:slight_smile:

WOL will turn my TV on but I need exec binding to turn TV off. Will the permissions issue remain with the exec binding?

S

1 Like

Now.
It’s available for testing in the master branch. Let us know about issues you hit via GitHub.

2 Likes

I am having issues getting jython to work.
I append to start.sh the EXTRA_JAVA_OPTS and then see the following in the log:

 bundle org.openhab.core.automation.module.script:3.0.0.M1 (134)[org.openhab.core.automation.module.script.internal.provider.ScriptModuleTypeProvider(80)] : The setScriptEngineFactory method has thrown an exception
java.lang.NoClassDefFoundError: javax/script/ScriptEngineFactory
......

Have others gotten this to work in this milestone?

AFAIK it is incompatible so don’t bother trying for the time being.

Hey @mstormi - Thanks!

Do you know if its a Java 11 thing, a Jython 2.72 thing or an OpenHab 3.0 thing? Or a mixture of all of them :slight_smile:

a mix of 2 & 3

Hi guys, after upgrading to the newest openHAB I’ve experienced some problems with installing openweathermap binding. I attach the logs from the console. Does anyone meet with a similar problem?

2020-10-28 18:43:01.469 [WARN ] [pache.cxf.jaxrs.sse.SseEventSinkImpl] - Prematurely completing the AsyncContext due to error encountered: org.eclipse.jetty.io.EofException
2020-10-28 18:43:01.623 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler@56f11ba2': org/openhab/core/cache/ByteArrayFileCache
java.lang.NoClassDefFoundError: org/openhab/core/cache/ByteArrayFileCache
        at org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection.<clinit>(OpenWeatherMapConnection.java:92) ~[?:?]
        at org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler.initialize(OpenWeatherMapAPIHandler.java:106) ~[?:?]
        at jdk.internal.reflect.GeneratedMethodAccessor69.invoke(Unknown Source) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [bundleFile:?]
        at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: java.lang.ClassNotFoundException: org.openhab.core.cache.ByteArrayFileCache cannot be found by org.openhab.binding.openweathermap_3.0.0.202010280343
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:433) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[org.eclipse.osgi-3.12.100.jar:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]
        ... 11 more
2020-10-28 18:43:01.631 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred while initializing handler of thing 'openweathermap:weather-api:api': org/openhab/core/cache/ByteArrayFileCache
java.lang.NoClassDefFoundError: org/openhab/core/cache/ByteArrayFileCache
        at org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection.<clinit>(OpenWeatherMapConnection.java:92) ~[?:?]
        at org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler.initialize(OpenWeatherMapAPIHandler.java:106) ~[?:?]
        at jdk.internal.reflect.GeneratedMethodAccessor69.invoke(Unknown Source) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [bundleFile:?]
        at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]
Caused by: java.lang.ClassNotFoundException: org.openhab.core.cache.ByteArrayFileCache cannot be found by org.openhab.binding.openweathermap_3.0.0.202010280343
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:433) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[org.eclipse.osgi-3.12.100.jar:?]
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[org.eclipse.osgi-3.12.100.jar:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?]
        ... 11 more

after restarting this now is thrown:

2020-10-28 19:11:15.058 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler@514e43db': Could not initialize class org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection
java.lang.NoClassDefFoundError: Could not initialize class org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection
        at org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler.initialize(OpenWeatherMapAPIHandler.java:106) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [bundleFile:?]
        at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]
2020-10-28 19:11:15.062 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred while initializing handler of thing 'openweathermap:weather-api:api': Could not initialize class org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection
java.lang.NoClassDefFoundError: Could not initialize class org.openhab.binding.openweathermap.internal.connection.OpenWeatherMapConnection
        at org.openhab.binding.openweathermap.internal.handler.OpenWeatherMapAPIHandler.initialize(OpenWeatherMapAPIHandler.java:106) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
        at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
        at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
        at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [bundleFile:?]
        at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:834) [?:?]

Caused by: java.lang.ClassNotFoundException: org.openhab.core.cache.ByteArrayFileCache cannot be found by org.openhab.binding.openweathermap_3.0.0.202010280343

These exceptions are probably the result of mixing newer incompatible SNAPSHOT add-ons with the older 3.0.0.M1 release @Mistral.

1 Like

Good on ya… I never managed to make any sense out of these lengthy error messages :slight_smile:

Could you please be more specific? I’m curious to hear what your reasoning is. @wborn seems to indicate that this is a Java thing…

But since the Jython jar is typically added to the classpath using EXTRA_JAVA_OPTS and not by being added to $OPENHAB_RUNTIME/lib/ext, it seems to me that there would be something more to it. I’m curious what the cause is, but this is very low in my backlog.

That is pretty hefty change. Shouldn’t that be mentioned prominently in the release notes and announcement?

4 Likes

There had been many posts saying that morquette is no longer maintained and buggy, so recommendation was to use mosquitto. I remember this before openHAB 2.5 was released…

5 Likes