BobRak / OpenHAB-Smartthings

53 stars 54 forks source link

Null Pointer Exception. #48

Closed Mark55347 closed 5 years ago

Mark55347 commented 6 years ago

I am getting Warning messages of the following form: 2018-07-28 06:26:47.080 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"deviceDisplayName":"Master Bedroom Outlet","value":"231.8","capabilityAttribute":"power"}, timestamp=1532777207075} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=325, service.bundleid=196, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=195} | Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-07-28 06:26:55.123 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"deviceDisplayName":"Master Bedroom Outlet","value":"228.0","capabilityAttribute":"power"}, timestamp=1532777215119} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=325, service.bundleid=196, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=195} | Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]

The Master Bedroom Outlet is in serial connection to an external switch. So the null pointer exception is likely occurring when the device is offline. It is non-fatal, but merely annoying.

I am running this on a raspberry pi 3b.

With regard to issue 31, I too get that warning. The items all work for me, so it too is simply an annoyance.

The responsiveness to changes seem slow. I have not fully checked this out, but for example when I open a door, Smartthings recognizes the change almost immediately, but it takes some time for that to be reflected in the display. I simply do not know where the time lag comes in. Do you poll, and if so how do you control the polling interval?

I hope your move is going well.

Mark

BobRak commented 6 years ago

Mark:

Thanks for the feedback. I am still in the process of moving and still have some stuff here in California and some in Washington state. I do have my hub and a couple of switch modules here. My RPi in in Washington but i can bring it back when I'm up there this week. And, I may not need it as I can run from my Eclipse test environment which is here. Unfortunately I leave in a couple of days for 2-1/2 weeks. But, I would like to finish this up and get it submitted when I am back.

With regards to your comment:

The Master Bedroom Outlet is in serial connection to an external switch. So the null pointer exception is likely occurring when the device is offline.

I don't understand what your hardware looks like. Do you think I could reproduce this with a Samsung plug in switch and then just unplug it? Can you give me a better idea of your hardware setup?

I'll also look into issue #31.

I've also had slow response issues. See issue #12. I implemented this guy's suggestion and the issue seemed to be gone. But, then later it was back. I tried some various response time testing and concluded his recommendation didn't eliminate the problem. I'll look at this further when I can. I agree these response times are unacceptable.

Bob

On Mon, Jul 30, 2018 at 7:07 AM Mark55347 notifications@github.com wrote:

I am getting Warning messages of the following form: 2018-07-28 06:26:47.080 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"deviceDisplayName":"Master Bedroom Outlet","value":"231.8","capabilityAttribute":"power"}, timestamp=1532777207075} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=325, service.bundleid=196, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=195} | Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-07-28 06:26:55.123 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"deviceDisplayName":"Master Bedroom Outlet","value":"228.0","capabilityAttribute":"power"}, timestamp=1532777215119} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=325, service.bundleid=196, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=195} | Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140) [196:org.openhab.binding.smartthings:2.2.0.201801151705] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]

The Master Bedroom Outlet is in serial connection to an external switch. So the null pointer exception is likely occurring when the device is offline. It is non-fatal, but merely annoying.

I am running this on a raspberry pi 3b.

With regard to issue 31, I too get that warning. The items all work for me, so it too is simply an annoyance.

The responsiveness to changes seem slow. I have not fully checked this out, but for example when I open a door, Smartthings recognizes the change almost immediately, but it takes some time for that to be reflected in the display. I simply do not know where the time lag comes in. Do you poll, and if so how do you control the polling interval?

I hope your move is going well.

Mark

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/BobRak/OpenHAB-Smartthings/issues/48, or mute the thread https://github.com/notifications/unsubscribe-auth/AQ7WhFKlJqa1U7DasT_0003Fqae8YMohks5uLxMCgaJpZM4VmelC .

Mark55347 commented 6 years ago

Bob,

What I have is a basic light switch connected to an outlet which is then connected to a lamp. So that when the switch is on the outlet is active and the light is on This is hardwired into the house. I connected a Samsung smarthings outlet to that outlet and then connected the lamp to the Samsung outlet. Thus the outlets are in series and both must be on for the light to on.

---- standard switch -------> standard outlet---> smartthings outlet ---> light.

Thus when the standard switch is off , the smartthings outlet is receiving no power and so it is offline.

I have also encountered this with my z-wave alarm which goes offline unless told to alarm..

I also have a Samsung Multisensor, but have removed my threeAxis thing and item, because I am not sure how to configure it. It also issues exceptions.

Generally, I use Intellij for my development, but have been unable to successfully build your stuff in that environment. I did download Eclipse, but have not been successful there either. It seems I read somewhere how to do that, but have been unable to find that document again.

Mark

On Mon, 7/30/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Monday, July 30, 2018, 4:52 PM

Mark:

Thanks for the feedback. I am still in the process of moving and still have

some stuff here in California and some in Washington state. I do have my

hub and a couple of switch modules here. My RPi in in Washington but i can

bring it back when I'm up there this week. And, I may not need it as I can

run from my Eclipse test environment which is here. Unfortunately I leave

in a couple of days for 2-1/2 weeks. But, I would like to finish this up

and get it submitted when I am back.

With regards to your comment:

The Master Bedroom Outlet is in serial connection to an external switch. So

the null pointer exception is likely occurring when the device is offline.

I don't understand what your hardware looks like. Do you think I could

reproduce this with a Samsung plug in switch and then just unplug it? Can

you give me a better idea of your hardware setup?

I'll also look into issue #31.

I've also had slow response issues. See issue #12. I implemented this guy's

suggestion and the issue seemed to be gone. But, then later it was back. I

tried some various response time testing and concluded his recommendation

didn't eliminate the problem. I'll look at this further when I can. I

agree these response times are unacceptable.

Bob

On Mon, Jul 30, 2018 at 7:07 AM Mark55347 notifications@github.com wrote:

I am getting Warning messages of the following form:

2018-07-28 06:26:47.080 [WARN ] [org.apache.karaf.services.eventadmin] -

EventAdmin: Exception during event dispatch [org.osgi.service.event.Event

[topic=org/openhab/binding/smartthings/state]

{data={"deviceDisplayName":"Master Bedroom

Outlet","value":"231.8","capabilityAttribute":"power"},

timestamp=1532777207075} |

{org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory,

org.osgi.service.event.EventHandler}={service.id=325,

service.bundleid=196, service.scope=bundle,

event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings,

component.id=195} |

Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])]

java.lang.NullPointerException: null

at

org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149)

[196:org.openhab.binding.smartthings:2.2.0.201801151705]

at

org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140)

[196:org.openhab.binding.smartthings:2.2.0.201801151705]

at

org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

[?:?]

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

at

java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

[?:?]

at

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

[?:?]

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

2018-07-28 06:26:55.123 [WARN ] [org.apache.karaf.services.eventadmin] -

EventAdmin: Exception during event dispatch [org.osgi.service.event.Event

[topic=org/openhab/binding/smartthings/state]

{data={"deviceDisplayName":"Master Bedroom

Outlet","value":"228.0","capabilityAttribute":"power"},

timestamp=1532777215119} |

{org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory,

org.osgi.service.event.EventHandler}={service.id=325,

service.bundleid=196, service.scope=bundle,

event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings,

component.id=195} |

Bundle(org.openhab.binding.smartthings_2.2.0.201801151705 [196])]

java.lang.NullPointerException: null

at

org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:149)

[196:org.openhab.binding.smartthings:2.2.0.201801151705]

at

org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:140)

[196:org.openhab.binding.smartthings:2.2.0.201801151705]

at

org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at

org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166)

[3:org.apache.karaf.services.eventadmin:4.1.5]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

[?:?]

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

at

java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

[?:?]

at

java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

[?:?]

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

The Master Bedroom Outlet is in serial connection to an external switch.

So the null pointer exception is likely occurring when the device is

offline. It is non-fatal, but merely annoying.

I am running this on a raspberry pi 3b.

With regard to issue 31, I too get that warning. The items all work for

me, so it too is simply an annoyance.

The responsiveness to changes seem slow. I have not fully checked this

out, but for example when I open a door, Smartthings recognizes the change

almost immediately, but it takes some time for that to be reflected in the

display. I simply do not know where the time lag comes in. Do you poll, and

if so how do you control the polling interval?

I hope your move is going well.

Mark

You are receiving this because you are subscribed to this thread.

Reply to this email directly, view it on GitHub

https://github.com/BobRak/OpenHAB-Smartthings/issues/48, or mute the

thread

https://github.com/notifications/unsubscribe-auth/AQ7WhFKlJqa1U7DasT_0003Fqae8YMohks5uLxMCgaJpZM4VmelC

.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 6 years ago

Mark:

I can try to reproduce the NPE. Unfortunately it will have to wait until I am back in California.

The instructions for setting up the IDE are here. In step 8 it says "Your workspace should now fully compile ..." I've found this takes a long time and sometimes I think that the install wasn't successful. There is a background activity indicator in the bottom right, watch that. Maybe you know this already. Since OpenHAB is part of the Eclipse foundation openHAB seems to be very tightly integrated with Eclipse. So I think it would be very difficult to switch to Intellij. I also used Intellij at one company I consulted for and really liked it. Thought it was easier to use than Eclipse.

I also have a Samsung Multisensor and configured it to tell me if my garage door was open. That was pretty handy. I didn't find a use for the three-axis thing.

Bob

BobRak commented 5 years ago

Mark: I am finally moving and am back work on the smartthings binding. I have made some updates to the binding and have deployed a new binding.

I have the Smartthings outlet. I am guessing this is the same one you hvae since it also returns the power. I have plugged it into a power strip and then into a lamp. i.e.

power strip -> outlet -> lamp

I've tried various combinations of turning the outlet off at the power strip when the outlet is on and off. And, turning the switch on and off from the OpenHAB UI (sitemap). But, I am not getting the NPE. Can you try downloading the new jar file (here) and seeing if you can reporduce the NPE. If you can please tell me how you did it.

Thanks,

Bob

Mark55347 commented 5 years ago

Bob, I have done a lot of messing around with my configuration, including an attempt to move to zigbee dongle. That experiment did not prove to be much of a success - though I might try later. The critical thing is I moved from an almost pure .items and .things file to one using .json files. I re-attached my outlet to the hardwired switch (as I described in my configuration note) and ran it for 24 hours. No null pointer exceptions occurred (this using the original code). My suspicions are this has to do with the difference between the .items and .things initialization and the .json initialization. Which would lead to the conclusion that perhaps something outside of the binding is causing it.

I have now downloaded your newest version and am now running it. I will update you on the results.

My biggest concern at the moment is response time. That is the time a sensor changes and the time it is reported. There are so many intermediate paths that I do not know the culprit, nor how to control it.

Mark

On Sun, 10/14/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Sunday, October 14, 2018, 3:18 PM

Mark:

I am finally moving and am back work on the smartthings binding. I have made some updates to the binding and have deployed a new binding. I have the Smartthings outlet. I am guessing this is the same one you hvae since it also returns the power. I have plugged it into a power strip and then into a lamp. i.e.

power strip -> outlet -> lamp

I've tried various combinations of turning the outlet off at the power strip when the outlet is on and off. And, turning the switch on and off from the OpenHAB UI (sitemap). But, I am not getting the NPE. Can you try downloading the new jar file (here) and seeing if you can reporduce the NPE. If you can please tell me how you did it. Thanks, Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark: Thank you very much for trying to reproduce the NPE. I'll watch out for it to.

I am also concerned about the slow response time. My next task on this binding is to try to figure out where the delays are coming from. I have some ideas for test programs. I'll start working on those soon. I'll let you know what I find.

For now I am going to close this issue. Please feel free to reopen it if you have anything to add.

Thanks,

Bob

Mark55347 commented 5 years ago

Bob, I loaded your new .jar and ran it. I started to see some NPE's I have been learning about rules and my first attempt was a simple rule that controlled turned on or off a second outlet in concert with the first outlet. e.g. if first outlet is turned on turn on second outlet. If first outlet turned off turn off the second outlet. Simple.

When I execute the rule through HabPanel the changes happen quickly. If I manually switch off the first outlet the change comes much more slowly. There also seems to be quite a bit of communication going on between openHab2 and Smartthings. I include some of the log data during my test period. I have no idea how useful it will be.

Mark P.S. I just stopped openHab2 and replaced one jar with the other and rebooted.

events.log 2018-10-17 10:13:41.507 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 7.6 to 3.8 2018-10-17 10:13:57.592 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 3.8 to 7.7 2018-10-17 10:14:05.632 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 7.7 to 11.5 2018-10-17 10:14:37.797 [vent.ItemStateChangedEvent] - StudyOutletOne_Switch changed from ON to OFF 2018-10-17 10:14:37.829 [ome.event.ItemCommandEvent] - Item 'StudyOutletTwo_Switch' received command OFF 2018-10-17 10:14:37.846 [vent.ItemStateChangedEvent] - StudyOutletTwo_Switch changed from ON to OFF 2018-10-17 10:15:01.908 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 11.5 to 7.6 2018-10-17 10:15:05.364 [ome.event.ItemCommandEvent] - Item 'StudyOutletOne_Switch' received command ON 2018-10-17 10:15:05.403 [vent.ItemStateChangedEvent] - StudyOutletOne_Switch changed from OFF to ON 2018-10-17 10:15:05.421 [ome.event.ItemCommandEvent] - Item 'StudyOutletTwo_Switch' received command ON 2018-10-17 10:15:05.435 [vent.ItemStateChangedEvent] - StudyOutletTwo_Switch changed from OFF to ON 2018-10-17 10:15:09.953 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 7.6 to 3.8 2018-10-17 10:15:41.349 [ome.event.ItemCommandEvent] - Item 'StudyOutletOne_Switch' received command OFF 2018-10-17 10:15:41.385 [vent.ItemStateChangedEvent] - StudyOutletOne_Switch changed from ON to OFF 2018-10-17 10:15:41.402 [ome.event.ItemCommandEvent] - Item 'StudyOutletTwo_Switch' received command OFF 2018-10-17 10:15:41.455 [vent.ItemStateChangedEvent] - StudyOutletTwo_Switch changed from ON to OFF 2018-10-17 10:15:42.102 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 3.8 to 0.0 2018-10-17 10:15:50.147 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 0.0 to 3.8 2018-10-17 10:15:58.186 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 3.8 to 7.6 2018-10-17 10:16:10.737 [ome.event.ItemCommandEvent] - Item 'MarkAndroid_Present' received command not present 2018-10-17 10:16:10.751 [vent.ItemStateChangedEvent] - MarkAndroid_Present changed from present to not present 2018-10-17 10:16:10.785 [ome.event.ItemCommandEvent] - Item 'PresenceS' received command Absent 2018-10-17 10:16:10.795 [vent.ItemStateChangedEvent] - PresenceS changed from Present to Absent 2018-10-17 10:16:14.269 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 7.6 to 3.8 2018-10-17 10:16:22.306 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 3.8 to 0.0 2018-10-17 10:16:38.388 [vent.ItemStateChangedEvent] - StudyOutletOne_Switch changed from OFF to ON 2018-10-17 10:16:38.399 [ome.event.ItemCommandEvent] - Item 'StudyOutletTwo_Switch' received command ON 2018-10-17 10:16:38.415 [vent.ItemStateChangedEvent] - StudyOutletTwo_Switch changed from OFF to ON 2018-10-17 10:17:02.501 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 0.0 to 3.8 2018-10-17 10:17:10.542 [vent.ItemStateChangedEvent] - StudyOutletTwo_Power changed from 3.8 to 7.6

openhab.log 2018-10-17 10:14:13.663 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"power","deviceDisplayName":"Study Outlet One","value":"274.9"}, timestamp=1539789253660} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:14:21.713 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"power","deviceDisplayName":"Study Outlet One","value":"274.4"}, timestamp=1539789261700} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:14:29.744 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"power","deviceDisplayName":"Study Outlet One","value":"0.0"}, timestamp=1539789269739} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:14:37.785 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:outlet:fbeac3e4:StudyOutletOne:switch to OFF 2018-10-17 10:14:37.948 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet Two", "capabilityAttribute": "switch", "value": "off"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:14:45.823 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"off"}, timestamp=1539789285818} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:14:53.863 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"off"}, timestamp=1539789293859} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:15:01.902 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 7.6 2018-10-17 10:15:05.533 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet One", "capabilityAttribute": "switch", "value": "on"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:15:05.694 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet Two", "capabilityAttribute": "switch", "value": "on"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:15:09.941 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.8 2018-10-17 10:15:17.982 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"on"}, timestamp=1539789317978} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:15:26.022 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"on"}, timestamp=1539789326017} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:15:34.062 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:outlet:fbeac3e4:StudyOutletOne:switch to ON 2018-10-17 10:15:41.467 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet One", "capabilityAttribute": "switch", "value": "off"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:15:41.606 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet Two", "capabilityAttribute": "switch", "value": "off"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:15:42.098 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 0.0 2018-10-17 10:15:50.145 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.8 2018-10-17 10:15:58.178 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 7.6 2018-10-17 10:16:06.224 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"off"}, timestamp=1539789366219} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:16:14.260 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.8 2018-10-17 10:16:22.304 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 0.0 2018-10-17 10:16:30.336 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:outlet:fbeac3e4:StudyOutletOne:switch to OFF 2018-10-17 10:16:38.377 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:outlet:fbeac3e4:StudyOutletOne:switch to ON 2018-10-17 10:16:38.515 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet Two", "capabilityAttribute": "switch", "value": "on"}" with path "/update" to the Smartthings hub, recieved HTTP status 202 2018-10-17 10:16:46.420 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"on"}, timestamp=1539789406416} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:16:54.458 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"on"}, timestamp=1539789414454} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:17:02.495 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.8 2018-10-17 10:17:10.534 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 7.6 2018-10-17 10:17:18.617 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 11.5 2018-10-17 10:17:26.654 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:temperatureMeasurement:9977eabc:temperature to 60.0 2018-10-17 10:17:34.706 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:temperatureMeasurement:e3ee2f5d:temperature to 70.0 2018-10-17 10:17:42.740 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"off"}, timestamp=1539789462730} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:17:50.772 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 7.5 2018-10-17 10:17:58.815 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.7 2018-10-17 10:18:06.853 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 0.0 2018-10-17 10:18:14.892 [WARN ] [org.apache.karaf.services.eventadmin] - EventAdmin: Exception during event dispatch [org.osgi.service.event.Event [topic=org/openhab/binding/smartthings/state] {data={"capabilityAttribute":"switch","deviceDisplayName":"Study Outlet Two","value":"on"}, timestamp=1539789494887} | {org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory, org.osgi.service.event.EventHandler}={service.id=375, service.bundleid=277, service.scope=bundle, event.topics=org/openhab/binding/smartthings/state, component.name=binding.smartthings, component.id=249} | Bundle(org.openhab.binding.smartthings_2.4.0.201810131822 [277])] java.lang.NullPointerException: null at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.findHandler(SmartthingsHandlerFactory.java:140) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.openhab.binding.smartthings.internal.SmartthingsHandlerFactory.handleEvent(SmartthingsHandlerFactory.java:131) [277:org.openhab.binding.smartthings:2.4.0.201810131822] at org.apache.felix.eventadmin.impl.handler.EventHandlerProxy.sendEvent(EventHandlerProxy.java:415) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.HandlerTask.runWithoutBlacklistTiming(HandlerTask.java:82) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.SyncDeliverTasks.execute(SyncDeliverTasks.java:104) [3:org.apache.karaf.services.eventadmin:4.1.5] at org.apache.felix.eventadmin.impl.tasks.AsyncDeliverTasks$TaskExecuter.run(AsyncDeliverTasks.java:166) [3:org.apache.karaf.services.eventadmin:4.1.5] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?] at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-17 10:18:22.932 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 3.8 2018-10-17 10:18:30.972 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 7.6 2018-10-17 10:18:39.011 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:powerMeter:fbeac3e4:StudyOutletTwo:power to 11.4

Manual switching off outlet event log. 2018-10-17 10:25:52.962 [vent.ItemStateChangedEvent] - StudyOutletOne_Switch changed from ON to OFF 2018-10-17 10:25:52.991 [ome.event.ItemCommandEvent] - Item 'StudyOutletTwo_Switch' received command OFF 2018-10-17 10:25:53.012 [vent.ItemStateChangedEvent] - StudyOutletTwo_Switch changed from ON to OFF 12 messages on activity feed openHab.log 2018-10-17 10:25:52.947 [INFO ] [ings.handler.SmartthingsThingHandler] - Smartthings updated State for channel: smartthings:outlet:fbeac3e4:StudyOutletOne:switch to OFF 2018-10-17 10:25:53.107 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet Two", "capabilityAttribute": "switch", "value": "off"}" with path "/update" to the Smartthings hub, recieved HTTP status 202


On Tue, 10/16/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Tuesday, October 16, 2018, 3:42 PM

Mark:

Thank you very much for trying to reproduce the NPE. I'll watch out for it to. I am also concerned about the slow response time. My next task on this binding is to try to figure out where the delays are coming from. I have some ideas for test programs. I'll start working on those soon. I'll let you know what I find. For now I am going to close this issue. Please feel free to reopen it if you have anything to add. Thanks, Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark:

Thanks for the feedback.

You did the installation correctly, with the reboot.

I also have the Smartthings outlet and it reports power usage which generates a lot of traffic. That is how that device works and is normal.

I now see where the NPE is coming. I hadn't expected anything could be null there and therefore I didn't have code to check for nulls. I have added null checking code in that area and print out messages about what is null. Could you download the new jar and try it?

I am still planning to do some work on figuring out what the response isn't faster. Right now I don't know if it is in the hub or in openHAB. I have noticed that if a switch is changed in the ui it take about 1.5 sec between when the off command is sent to the hub and the hub responds with a message that the switch has been turned off. It seems like most or all of that delay must be in the hub. Figuring out the delays is my next task. Then hopefully I'll be ready to submit it to openHAB to be added to product.

Thanks for your testing.

Bob

Mark55347 commented 5 years ago

Bob, I am not all that familiar with GitHub and could not find the new .jar. Could you either tell me how to access it, or you could attach it in a reply. Mark

On Wed, 10/17/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Wednesday, October 17, 2018, 12:56 PM

Mark: Thanks for the feedback. You did the installation correctly, with the reboot. I also have the Smartthings outlet and it reports power usage which generates a lot of traffic. That is how that device works and is normal. I now see where the NPE is coming. I hadn't expected anything could be null there and therefore I didn't have code to check for nulls. I have added null checking code in that area and print out messages about what is null. Could you download the new jar and try it? I am still planning to do some work on figuring out what the response isn't faster. Right now I don't know if it is in the hub or in openHAB. I have noticed that if a switch is changed in the ui it take about 1.5 sec between when the off command is sent to the hub and the hub responds with a message that the switch has been turned off. It seems like most or all of that delay must be in the hub. Figuring out the delays is my next task. Then hopefully I'll be ready to submit it to openHAB to be added to product. Thanks for your testing. Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark:

Here is a link to it.

Bob

Mark55347 commented 5 years ago

Bob, The only real thing I am seeing now are complaints that this is not the original .jar file, but it decides so what and continues on. Mark

On Wed, 10/17/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Wednesday, October 17, 2018, 7:06 PM

Mark: Here is a link to it. Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark:

Are these "complaints" in the openhab.log file? I'm not seeing anything like that. Did you do a restart of the openhab server?

The change I made to the code was to look for null objects and if found print an error message and skip that state update. Therefore in place of the NPE you will see a message saying that a thing handler is unexpectedly null. If you are seeing "is unexpectedly null" in you logs I would like to see those messages. They should include an indication of what device has a null value.

Thanks,

Bob

Mark55347 commented 5 years ago

Bob, yes they are in the log file. I did restart the and reboot the system. I have included a most of them below. I am running on a raspberry pi B+. I have the following configured: 6 multi-sensors 5 Outlets 2 Water sensors 1 Presence sensor 1 Android 1 Button 1 Alarm. Auto-Discovery failed to pick up all of the Things setup on the SmartThings Hub, so I had to manually configure some of them. In my initial testing of the snapshot, I simply changed the name from .jar to .raj. You will see references to this in the log file. When I first saw this I moved those files out of the /usr/share/openhab2/addons folder, Yet as you can see they there are still references to them in the log. To initially get this to work I also had to move some other libraries to this folder. I would not be surprised if some of my database is corrupted. With that said here are samples from my openhab.log

2018-10-19 09:50:54.916 [INFO ] [rtthings.internal.SmartthingsServlet] - Started Smartthings servlet at /smartthings 2018-10-19 09:50:54.916 [INFO ] [er.internal.HomeBuilderDashboardTile] - Started Home Builder at /homebuilder 2018-10-19 09:50:54.956 [ERROR] [org.openhab.binding.smartthings ] - FrameworkEvent ERROR - org.openhab.binding.smartthings org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [278] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1613) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

2018-10-19 09:50:56.090 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Location set to '44.862180699999996,-93.5104636'.

2018-10-19 09:52:56.199 [WARN ] [lipse.smarthome.io.net.exec.ExecUtil] - Execution failed (Exit value: -559038737. Caused by java.io.IOException: Cannot run program "arping" (in directory "."): error=2, No such file or directory) 2018-10-19 09:52:56.225 [INFO ] [ternal.dhcp.DHCPPacketListenerServer] - DHCP request packet listener online

2018-10-19 09:52:56.225 [INFO ] [ternal.dhcp.DHCPPacketListenerServer] - DHCP request packet listener online 2018-10-19 09:52:56.324 [INFO ] [thome.binding.astro.internal.job.Job] - Scheduled Astro event-jobs for thing astro:moon:local 2018-10-19 09:52:56.656 [WARN ] [ore.common.registry.AbstractRegistry] - ContactItem with key 'LoungeEntryTwo_Contact' already exists from provider ChannelItemProvider! Failed to bulk-add a second with the same UID from provider ManagedItemProvider! 2018-10-19 09:52:56.682 [WARN ] [ore.common.registry.AbstractRegistry] - NumberItem with key 'LivingRoomOutletOne_Power' already exists from provider ChannelItemProvider! Failed to bulk-add a second with the same UID from provider ManagedItemProvider! 2018-10-19 09:52:56.777 [WARN ] [ore.common.registry.AbstractRegistry] - NumberItem with key 'GarageMotion_Temperature' already exists from provider ChannelItemProvider! Failed to bulk-add a second with the same UID from provider ManagedItemProvider! 2018-10-19 09:52:56.781 [WARN ] [ore.common.registry.AbstractRegistry] - StringItem with key 'GarageEntryButton_Button' already exists from provider ChannelItemProvider! Failed to bulk-add a second with the same UID from provider ManagedItemProvider! 2018-10-19 09:52:56.797 [WARN ] [ore.common.registry.AbstractRegistry] - NumberItem with key 'LoungeWater_Battery' already exists from provider ChannelItemProvider! Failed to bulk-add a second with the same UID from provider ManagedItemProvider!

2018-10-19 09:53:02.196 [ERROR] [org.openhab.binding.smartthings ] - FrameworkEvent ERROR - org.openhab.binding.smartthings org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [276] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

2018-10-19 09:53:02.283 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "contactSensor", "deviceDisplayName": "Family Room Entry", "capabilityAttribute": "contact"}" with path "/state" to the Smartthings hub, recieved HTTP status 202

2018-10-19 09:53:03.358 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occurred while informing handler: null java.lang.NullPointerException: null at org.openhab.binding.smartthings.handler.SmartthingsThingHandler.handleCommand(SmartthingsThingHandler.java:77) ~[?:?] at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.channelLinked(BaseThingHandler.java:278) ~[?:?] 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:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]

2018-10-19 09:53:04.554 [WARN ] [org.apache.felix.fileinstall        ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.smartthings-2.4.0-SNAPSHOT_Original.raj

org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [278] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4]

2018-10-19 09:53:04.563 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.smartthings.raj org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [276] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4]

2018-10-19 09:53:04.580 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "motionSensor", "deviceDisplayName": "Garage Motion Sensor", "capabilityAttribute": "motion"}" with path "/state" to the Smartthings hub, recieved HTTP status 202

2018-10-19 09:53:14.744 [WARN ] [org.apache.felix.fileinstall ] - Failed to update artifact /usr/share/openhab2/addons/commons-codec-1.6.jar org.osgi.framework.BundleException: Could not create generation directory: /var/lib/openhab2/cache/org.eclipse.osgi/197/157 at org.eclipse.osgi.storage.Storage.getContentFile0(Storage.java:791) [?:?] at org.eclipse.osgi.storage.Storage.getContentFile(Storage.java:771) [?:?] at org.eclipse.osgi.storage.Storage.update(Storage.java:734) [?:?] at org.eclipse.osgi.internal.framework.EquinoxBundle.update(EquinoxBundle.java:429) [?:?] at org.apache.felix.fileinstall.internal.DirectoryWatcher.update(DirectoryWatcher.java:1142) [9:org.apache.felix.fileinstall:3.6.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.update(DirectoryWatcher.java:919) [9:org.apache.felix.fileinstall:3.6.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:488) [9:org.apache.felix.fileinstall:3.6.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4] at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4] 2018-10-19 09:53:14.937 [INFO ] [ings.handler.SmartthingsThingHandler] - Disposing of the Smartthings Thing Handler

2018-10-19 09:53:16.180 [INFO ] [rtthings.internal.SmartthingsServlet] - Started Smartthings servlet at /smartthings 2018-10-19 09:53:16.344 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occurred while informing handler: null java.lang.NullPointerException: null at org.openhab.binding.smartthings.handler.SmartthingsThingHandler.handleCommand(SmartthingsThingHandler.java:77) ~[?:?] at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.channelLinked(BaseThingHandler.java:278) ~[?:?] 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:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?] 2018-10-19 09:53:16.657 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "outlet", "deviceDisplayName": "Study Outlet One", "capabilityAttribute": "switch"}" with path "/state" to the Smartthings hub, recieved HTTP status 202

2018-10-19 09:53:17.232 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.smartthings-2.4.0-SNAPSHOT_Original.raj org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [278] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4]

2018-10-19 09:53:17.238 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/usr/share/openhab2/addons/org.openhab.binding.smartthings.raj org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [276] Another singleton bundle selected: osgi.identity; type="osgi.bundle"; version:Version="2.4.0.201810171716"; osgi.identity="org.openhab.binding.smartthings"; singleton:="true"

at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) [?:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [9:org.apache.felix.fileinstall:3.6.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [9:org.apache.felix.fileinstall:3.6.4]

2018-10-19 09:53:17.355 [INFO ] [hings.internal.SmartthingsHttpClient] - Sent message "{"capabilityKey": "contactSensor", "deviceDisplayName": "Family Room Entry", "capabilityAttribute": "contact"}" with path "/state" to the Smartthings hub, recieved HTTP status 202


On Fri, 10/19/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Friday, October 19, 2018, 12:23 PM

Mark: Are these "complaints" in the openhab.log file? I'm not seeing anything like that. Did you do a restart of the openhab server? The change I made to the code was to look for null objects and if found print an error message and skip that state update. Therefore in place of the NPE you will see a message saying that a thing handler is unexpectedly null. If you are seeing "is unexpectedly null" in you logs I would like to see those messages. They should include an indication of what device has a null value. Thanks, Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark:

I've not seen any messages like: org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [276] Another singleton bundle selected Please check your addons directory and make sure the only things in it are org.openhab.binding.smartthings-2.4.0-SNAPSHOT.jar and README. If there are any other jar files remove them. If you have a codec jar file it can now be removed. That dependency seems to have gone away when I rebuild the binding for openHAB V 2.4. Then do a restart.

If after the restart the messages are still being generated then you should be able to identify and remove the duplicate using the Karaf console. I haven't used the Karaf console much but you should be able to identify the duplicate smartthing binding using it. Look at the Karaf console documentation that is part of the openHAB documentation. It is here. And, the bundle commands are here. You should find the command: bundle:list -s -l | grep smartt helpful.

Let me know how it goes.

Thanks,

Bob

Mark55347 commented 5 years ago

Bob, It went well. I found three smartthings bundles.I uninstalled the two that were not active and most of the errors went away. This one remains.


2018-10-20 14:56:44.741 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occurred while informing handler: null java.lang.NullPointerException: null at org.openhab.binding.smartthings.handler.SmartthingsThingHandler.handleCommand(SmartthingsThingHandler.java:77) ~[?:?] at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.channelLinked(BaseThingHandler.java:278) ~[?:?] 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:1142) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?] at java.lang.Thread.run(Thread.java:745) [?:?]


At one time I tried to add some zigbee elements. I am finding that some of those links remain, but not the things or items they are associated with. I haven't figured out how to get rid of them.

And this one a few lines further down. I don't know what it means, but it does not appear to relate to you.

2018-10-20 14:56:45.822 [WARN ] [lipse.smarthome.io.net.exec.ExecUtil] - Execution failed (Exit value: -559038737. Caused by java.io.IOException: Cannot run program "arping" (in directory "."): error=2, No such file or directory)

Mark


On Sat, 10/20/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Saturday, October 20, 2018, 1:23 PM

Mark: I've not seen any messages like: org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.smartthings [276] Another singleton bundle selected

Please check your addons directory and make sure the only things in it are org.openhab.binding.smartthings-2.4.0-SNAPSHOT.jar and README. If there are any other jar files remove them. If you have a codec jar file it can now be removed. That dependency seems to have gone away when I rebuild the binding for openHAB V 2.4. Then do a restart. If after the restart the messages are still being generated then you should be able to identify and remove the duplicate using the Karaf console. I haven't used the Karaf console much but you should be able to identify the duplicate smartthing binding using it. Look at the Karaf console documentation that is part of the openHAB documentation. It is here. And, the bundle commands are here. You should find the command: bundle:list -s -l | grep smartt helpful. Let me know how it goes. Thanks, Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark: This is good news.

I know why the remaining null pointer happens. openHAB runs in a java environment called OSGI. It does lots of good thing but one of the side effects is that some things can happen out of order. That must be what happening here. As each thing is created openHAB sends a REFRESH command to the thing. That is useful to me as I use that as an opportunity to ask the hub what the current status of the device is. The bad thing is that sometimes a Thing will get created before the hub is done being initialized. I'll fix that by making sure the hub code is complete. I have made the code change but will wait a few days to deploy it incase there is other feedback from anyone.

As you know the Things and Items can be created by creating the .things and .items files or by using the paperui. I think you've been using the paperui. That data is stored in json files located in the directory: /var/lib/openhab2/jsondb. There will be several files in that directory. You can look in those for your leftover devices. Be careful when making changes that you carefully remove the whole definition for the thing/item. I would recommend creating a backup dir first and copying the original files into it.

The arping error is not related to the smartthings binding.

Thanks for all of your feedback.

Bob

Mark55347 commented 5 years ago

Bob, On a different topic. I suspect some of the response issues are because the SmartThings groovy code is not running locally, but is in the cloud. This would certainly increase the response time, and it would be highly variable due to internet traffic. Mark


On Sat, 10/20/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Saturday, October 20, 2018, 4:16 PM

Mark:

This is good news. I know why the remaining null pointer happens. openHAB runs in a java environment called OSGI. It does lots of good thing but one of the side effects is that some things can happen out of order. That must be what happening here. As each thing is created openHAB sends a REFRESH command to the thing. That is useful to me as I use that as an opportunity to ask the hub what the current status of the device is. The bad thing is that sometimes a Thing will get created before the hub is done being initialized. I'll fix that by making sure the hub code is complete. I have made the code change but will wait a few days to deploy it incase there is other feedback from anyone. As you know the Things and Items can be created by creating the .things and .items files or by using the paperui. I think you've been using the paperui. That data is stored in json files located in the directory: /var/lib/openhab2/jsondb. There will be several files in that directory. You can look in those for your leftover devices. Be careful when making changes that you carefully remove the whole definition for the thing/item. I would recommend creating a backup dir first and copying the original files into it. The arping error is not related to the smartthings binding. Thanks for all of your feedback. Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

BobRak commented 5 years ago

Mark: I suspect you are correct because if you look in My Devices section of the Smartthings Developers IDE you will see that OpenHabDevice does run in the cloud. I built a test framework that simulates what openHAB does. It send lots of commands and checks the response time. Then I tried testing different communications techniques and none of them seemed to make much of a difference. I did add timing information to the log messages so one can see how long things are taking.

When you turn a switch on or off in openHAB it sends the command to the hub. The hub executes the change which causes a change event in the hub. That then sends a change state message back to openHAB. The ST code is executed and it changes the switch state. That definitely adds to how long it it takes for the switch change to show up on the screen. But, you know for sue that the switch was actually changed.

I'm going to go ahead and close this. You can reopen it if you want.

Bob

Mark55347 commented 5 years ago

No, I see no reason to reopen it. The question now is how it make it run locally. And that appears to be difficult to do. Mark

On Thu, 11/22/18, BobRak notifications@github.com wrote:

Subject: Re: [BobRak/OpenHAB-Smartthings] Null Pointer Exception. (#48) To: "BobRak/OpenHAB-Smartthings" OpenHAB-Smartthings@noreply.github.com Cc: "Mark55347" markming55347@yahoo.com, "Author" author@noreply.github.com Date: Thursday, November 22, 2018, 9:37 AM

Mark:

I suspect you are correct because if you look in My Devices section of the Smartthings Developers IDE you will see that OpenHabDevice does run in the cloud. I built a test framework that simulates what openHAB does. It send lots of commands and checks the response time. Then I tried testing different communications techniques and none of them seemed to make much of a difference. I did add timing information to the log messages so one can see how long things are taking. When you turn a switch on or off in openHAB it sends the command to the hub. The hub executes the change which causes a change event in the hub. That then sends a change state message back to openHAB. The ST code is executed and it changes the switch state. That definitely adds to how long it it takes for the switch change to show up on the screen. But, you know for sue that the switch was actually changed. I'm going to go ahead and close this. You can reopen it if you want. Bob

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.