openhab / openhab-addons

Add-ons for openHAB
https://www.openhab.org/
Eclipse Public License 2.0
1.9k stars 3.59k forks source link

[GroheOndus] Grohe Sense Thing missing channels #3898

Closed vzorglub closed 5 years ago

vzorglub commented 6 years ago

Expected Behavior

The Grohe Sense reports Temperature, Battery, Humidity and Water/Flood These channels are not available. The channels available are for the Grohe Sense Gard

Possible Solution

Please add the channels for Battery, Humidity and Water/Flood for the Grohe Sense (Battery powered) The battery channel is not required for the Grohe Sense+ (Mains powered)

@FlorianSW , Would that be possible, I am happy to send you the device for testing if required

vzorglub commented 6 years ago

Also the temperature channel is throwing an error:

2018-09-09 09:39:54.468 [.ItemChannelLinkAddedEvent] - Link 'Toilet_ThermostatAmbientTemp-groheondus:appliance:c4a2ccb4-0906-4470-b021-c8ee0ace85e7:temperature' has been added.
==> /var/log/openhab2/openhab.log <==
2018-09-09 09:39:55.146 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occurred while informing handler: null

java.lang.NullPointerException: null
    at org.eclipse.smarthome.core.library.types.QuantityType.<init>(QuantityType.java:104) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.updateChannel(GroheOndusApplianceHandler.java:134) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.channelLinked(GroheOndusApplianceHandler.java:95) ~[?:?]
    at org.eclipse.smarthome.core.thing.link.ThingLinkManager.lambda$0(ThingLinkManager.java:300) ~[?:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
FlorianSW commented 6 years ago

Hi,

thanks for opening the issue :) I extracted the teamperature NPE to another issue (see #3900), as well as the thing initialization error you mentioned in the PR #3696 to #3899.

It's totally possible, that the device model returned from the API is different from the Grohe Sense guard device, which would explain these errors. However, in the account I used to develop this binding, only the sense guard was available, so in order to get this thing developed correctly, I would need an GROHE account, which has at least one SENSE device available (no need to send the actual device to someone).

If you would be ok with sharing your account with me as long as the thing is developed (it could take some days based on my availability :/) that would be awesome! In this case, could you change the password of your account to something new randomly created, safe password and send it to me via e-mail: florian.schmidt.stargatewissen@gmail.com

Once the thing is finished, you should change the password back to what it was before, or even better to something newly secure and randomly created one :)

vzorglub commented 6 years ago
as long as the thing is developed

How do I send you the thing? I'll be happy to send you the account details

FlorianSW commented 6 years ago

How do I send you the thing?

No need to send me the actual device, I only need the data from the API, which I would be able to access whith the account credentials :)

I'll be happy to send you the account details

Awesome! Thanks :)

vzorglub commented 6 years ago

I can't find the password settings in the android app so I have sent an email to Grohe This is one of the worst designed app I have ever seen and it's almost 100MB!! What's wrong with them??

FlorianSW commented 6 years ago

I can't find the password settings in the android app

On the main screen (before selecting a house or a device) there's a hamburger menu at the bottom left (an icon with 3 lines). Pressing it opens a popup where you should see "settings". There you can (at the very top) select "Change password". That's at least at the latest version I've installed :P

This is one of the worst designed app I have ever seen and it's almost 100MB!!

Apart from that, I need to say, that the API GROHE designed there is very good from my point of view. They're strictly following REST principals, so that without knowing much about their implementation, it was pretty easy to navigate through the api and getting the different information, very positive! I would love to have more of these APIs and I'm wondering why they're not officially making this API public and documented somewhere how to talk to it. There's nothing they need to fear about, I think, it's a nice api :) (This, however, is just my technical point of view, think about why this binding exists, not because this app is very intuitive :P)

vzorglub commented 6 years ago

Never mind I found it. Not very intuitive... I have sent you the email with the details after changing the password.

FlorianSW commented 6 years ago

Got it, I'll work on it now :)

FlorianSW commented 6 years ago

@vzorglub A test version of the binding (which should add support for the SENSE) can be found here: https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.groheondus/2.4.0-SNAPSHOT/

Please see the updated README in PR #3902 :)

vzorglub commented 6 years ago

Thanks!!! That was fast and it works for the temperature and humidity channels However, this sensor is designed as a flood sensor, generally to be placed on the floor to detect leaks and floods. Could you add that channel, please? It's the most important one on this sensor! If you want me to trigger it, we will need to synchronize somehow. Also did you find a battery channel?

FlorianSW commented 6 years ago

However, this sensor is designed as a flood sensor, generally to be placed on the floor to detect leaks and floods.

So, the sense sends you a notification once a leak is detected, right? This is a bit problematic (the SENSE guard as a similar functionality with the additional "turn the water supply off" feature). The problem is, that the notification interface is Firebase Cloud Messaging, which is a background service in the android app (there's a similar service for iOS). There's no way (or at least none I know) to get this working in a pure java only server application, as there needs to be a permanent connection to a firebase server in order to "receive" notifications.

However, the API exposes a notifications endpoint, which would look like: https://idp-apigw.cloud.grohe.com/v2/iot/locations/{locationId}/rooms/[roomId}/appliances/{applianceId}/notifications When called with an appropriate set of credentials it will return something like that:

[
    {
        "id": "notificationId",
        "category": 20,
        "is_read": true,
        "timestamp": "notificationDate",
        "type": 31,
        "threshold_quantity": "no",
        "threshold_type": "no"
    }
]

So, there're some problems:

I could think about a shorter-intervalled request (say, 1 minute) which is for this endpoint only (all other data will still be pulled every 15 minutes by default) requesting the last notification. If there's a change, there could be some channels (like last_notification_timestamp, last_notifiation_category and last_notification_type) which get's changed once the 1-minute interval request gets a new notification. Then, openHAB rules can be used to "trigger" on this change and, e.g., send a broadcast notification to registered android and iOS devices (when openHAB-cloud is setup). However, I'm not sure, what performance implications that has when one binding issues one request every 30 sedonds or even 1 minute (to get as close to the leak time as possible), @kaikreuzer can you say something about that? :)

Also did you find a battery channel?

No, is there some data in the app?

martinvw commented 6 years ago

Note that the nest binding also uses a fire base implementation, I suppose @wborn could help you out if needed Op zo 9 sep. 2018 om 20:07 schreef Florian notifications@github.com

However, this sensor is designed as a flood sensor, generally to be placed on the floor to detect leaks and floods.

So, the sense sends you a notification once a leak is detected, right? This is a bit problematic (the SENSE guard as a similar functionality with the additional "turn the water supply off" feature). The problem is, that the notification interface is Firebase Cloud Messaging, which is a background service in the android app (there's a similar service for iOS). There's no way (or at least none I know) to get this working in a pure java only server application, as there needs to be a permanent connection to a firebase server in order to "receive" notifications.

However, the API exposes a notifications endpoint, which would look like:

https://idp-apigw.cloud.grohe.com/v2/iot/locations/{locationId}/rooms/[roomId}/appliances/{applianceId}/notifications When called with an appropriate set of credentials it will return something like that:

[ { "id": "notificationId", "category": 20, "is_read": true, "timestamp": "notificationDate", "type": 31, "threshold_quantity": "no", "threshold_type": "no" } ]

So, there're some problems:

  • I've no idea what the types and catgeories means, however there are most likely some references somewhere in the de-compiled app code
  • This is a pull, instead of a push, that means, that openHAB would need to issue a request to this endpoint to see if there're new notifications

I could think about a shorter-intervalled request (say, 1 minute) which is for this endpoint only (all other data will still be pulled every 15 minutes by default) requesting the last notification. If there's a change, there could be some channels (like last_notification_timestamp, last_notifiation_category and last_notification_type) which get's changed once the 1-minute interval request gets a new notification. Then, openHAB rules can be used to "trigger" on this change and, e.g., send a broadcast notification to registered android and iOS devices (when openHAB-cloud is setup). However, I'm not sure, what performance implications that has when one binding issues one request every 30 sedonds or even 1 minute (to get as close to the leak time as possible), @kaikreuzer https://github.com/kaikreuzer can you say something about that? :)

Also did you find a battery channel?

No, is there some data in the app?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/3898#issuecomment-419733842, or mute the thread https://github.com/notifications/unsubscribe-auth/ACgO_9IxZBDDq_-2w4NPLfVTAWIfF3Rlks5uZVjsgaJpZM4WgMqz .

FlorianSW commented 6 years ago

@martinvw Great, thanks for the info :) I'll take a look into it and see how this can be done here, too :)

Also did you find a battery channel?

Looking into the api again, there's actually an endpoint which returns some status information, I'm working on getting that into the PR, too :)

wborn commented 6 years ago

Note that the nest binding also uses a fire base implementation

Nest has Firebase support but it's no longer recommended.

The Nest binding doesn't use Firebase it uses:

vzorglub commented 6 years ago

Maybe the flooded state is hidden in there

On Sun, 9 Sep 2018, 20:32 Florian, notifications@github.com wrote:

@martinvw https://github.com/martinvw Great, thanks for the info :) I'll take a look into it and see how this can be done here, too :)

Also did you find a battery channel?

Looking into the api again, there's actually an endpoint which returns some status information, I'm working on getting that into the PR, too :)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/3898#issuecomment-419739148, or mute the thread https://github.com/notifications/unsubscribe-auth/ASmb4CjkSt3op01TtdYCqJYsmvSW1kYPks5uZWy2gaJpZM4WgMqz .

martinvw commented 6 years ago

I thought that the stream of data was firebase, thanks for correcting me @wborn

FlorianSW commented 6 years ago

Maybe the flooded state is hidden in there

Most likely not. The only types the app recognizes from this data is:

vzorglub commented 6 years ago

Meh......

On Mon, 10 Sep 2018, 17:03 Florian, notifications@github.com wrote:

Maybe the flooded state is hidden in there

Most likely not. The only types the app recognizes from this data is:

  • battery
  • connection (whatever that means)
  • update_available

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/3898#issuecomment-419966367, or mute the thread https://github.com/notifications/unsubscribe-auth/ASmb4JWrZvctMUhJItBg4G9nTXaLLOCTks5uZo09gaJpZM4WgMqz .

vzorglub commented 6 years ago

Just restarted OH I get this WARNING:

==> /var/log/openhab2/events.log <==
2018-09-10 22:17:31.920 [hingStatusInfoChangedEvent] - 'groheondus:account:f363244b' changed from UNKNOWN to ONLINE
2018-09-10 22:17:31.926 [hingStatusInfoChangedEvent] - 'groheondus:sense:c4a2ccb4-0906-4470-b021-c8ee0ace85e7' changed from OFFLINE (BRIDGE_OFFLINE): No initialized OndusService available from bridge. to ONLINE
==> /var/log/openhab2/openhab.log <==
2018-09-10 22:17:31.933 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: 
java.lang.ClassCastException: org.openhab.binding.groheondus.internal.handler.GroheOndusSenseHandler cannot be cast to org.openhab.binding.groheondus.internal.handler.GroheOndusSenseGuardHandler
    at org.openhab.binding.groheondus.internal.handler.GroheOndusAccountHandler.lambda$1(GroheOndusAccountHandler.java:73) ~[?:?]
    at java.util.ArrayList.forEach(ArrayList.java:1257) ~[?:?]
    at java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1080) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusAccountHandler.lambda$0(GroheOndusAccountHandler.java:72) ~[?:?]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
FlorianSW commented 6 years ago

Can you show me the configuration of your things (with anonymized username, password and IDs)?

vzorglub commented 6 years ago

Hi, Florian, what do you mean exactly I have configured in the PaperUI image

image

image

FlorianSW commented 6 years ago

Oops, my fault, sorry :/ Should be fixed in the latest commit (give it some time to be built by the CI).

vzorglub commented 6 years ago

Hello Florian, Did that commit ever got built?

FlorianSW commented 6 years ago

Should've been built, yes, see: https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.groheondus/2.4.0-SNAPSHOT/

vzorglub commented 6 years ago

Still no Humidity channel and I get this error:


2018-09-29 20:22:44.142 [ERROR] [ome.core.thing.internal.ThingManager]
- Exception occurred while initializing handler of thing
'groheondus:appliance:c4a2ccb4-0906-4470-b021-c8ee0ace85e7': null

java.lang.NullPointerException: null

    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120)
~[?:?]

    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75)
~[?:?]

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]

    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]

    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153)
[101:org.eclipse.smarthome.core:0.10.0.201809271800]

    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53)
[101:org.eclipse.smarthome.core:0.10.0.201809271800]

    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
[?:?]

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
[?:?]

    at java.lang.Thread.run(Thread.java:748) [?:?]

On Sat, 29 Sep 2018 at 18:56, Florian notifications@github.com wrote:

Should've been built, yes, see: https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.groheondus/2.4.0-SNAPSHOT/

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/3898#issuecomment-425663869, or mute the thread https://github.com/notifications/unsubscribe-auth/ASmb4LzGpaKe7Cce_4w0r_S0x_C4sjNcks5uf7RkgaJpZM4WgMqz .

FlorianSW commented 6 years ago

Ok, I pushed some new commits, let's see if these are getting built correctly :) Sorry for the inconvenience!

vzorglub commented 6 years ago

Today's build after deleting the existing thing and adding a "new" one

openhab.log:

2018-09-30 21:44:42.592 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler@bfeef81': null
java.lang.NullPointerException: null
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.201809271800]
    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.201809271800]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
2018-09-30 21:44:42.599 [ERROR] [ome.core.thing.internal.ThingManager] - Exception occurred while initializing handler of thing 'groheondus:appliance:c4a2ccb4-0906-4470-b021-c8ee0ace85e7': null
java.lang.NullPointerException: null
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.201809271800]
    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.201809271800]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
2018-09-30 21:44:42.602 [hingStatusInfoChangedEvent] - 'groheondus:appliance:c4a2ccb4-0906-4470-b021-c8ee0ace85e7' changed from INITIALIZING to UNINITIALIZED (HANDLER_INITIALIZING_ERROR)
vzorglub commented 5 years ago

Hi @FlorianSW Updated to M6 and the binding is not recognising the SENSE device. NO channel for humidity and errors in log:

image

Logs:

2018-11-22 19:11:15.054 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler@59bf11fd': null

java.lang.NullPointerException: null
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.201811171951]
    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.201811171951]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

2018-11-22 19:11:15.067 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred while initializing handler of thing 'groheondus:appliance:c4a2ccb4-0906-4470-b021-c8ee0ace85e7': null

java.lang.NullPointerException: null
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor84.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.201811171951]
    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.201811171951]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]
FlorianSW commented 5 years ago

Hmm, it seems you do not have the current version of the binding installed, as the class GroheOndusApplianceHandler does not exist in the latest version of the pull request anymore. Could you update it to the latest build version?

vzorglub commented 5 years ago

I did, I am on snapshot #1443

On 25 Nov 2018 15:48, "Florian" notifications@github.com wrote:

Hmm, it seems you do not have the current version of the binding installed, as the class GroheOndusApplianceHandler does not exist in the latest version of the pull request anymore. Could you update it to the latest build version?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/openhab/openhab2-addons/issues/3898#issuecomment-441450128, or mute the thread https://github.com/notifications/unsubscribe-auth/ASmb4O0AsoZFdFob3MpOejjd6LkamcIbks5uyrvggaJpZM4WgMqz .

vzorglub commented 5 years ago

Hi @FlorianSW Any update on this issue, please?

vzorglub commented 5 years ago

Ok, restarted OH. Really clean restart sequence except the Grohe binding!! Error:

2018-11-29 07:41:41.762 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler@1614c142': null
java.lang.NullPointerException: null
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.getPollingInterval(GroheOndusApplianceHandler.java:120) ~[?:?]
    at org.openhab.binding.groheondus.internal.handler.GroheOndusApplianceHandler.initialize(GroheOndusApplianceHandler.java:75) ~[?:?]
    at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) ~[?:?]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
    at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [101:org.eclipse.smarthome.core:0.10.0.201811281422]
    at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [101:org.eclipse.smarthome.core:0.10.0.201811281422]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
    at java.lang.Thread.run(Thread.java:748) [?:?]

The same error occurs 4 times in a row whilst the system tries to initialise the thing

developersnively commented 5 years ago

Dear all, I have the same NullPointerException.

Dev