Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Controllers
  3. OpenHAB
  4. openHAB 2.2 binding

openHAB 2.2 binding

Scheduled Pinned Locked Moved OpenHAB
132 Posts 32 Posters 58.2k Views 34 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    LastSamurai
    Hardware Contributor
    wrote on last edited by LastSamurai
    #98

    @TimO Today I decided to finally read into how Openhab binding development works. And just when I started I saw that you finally fixed some of the problems that I reported via github (thank you very much for that). Had to laugh a little at that coincidence :rolling_on_the_floor_laughing:

    I just started a pullrequest where I tried to implement pure white colors for RGBW values fixing one of my problems left open. If you find the time please have a look at it. I did not yet write any tests for it or test it on my actual RGBW nodes but I will do that as soon as possible

    1 Reply Last reply
    0
    • K Offline
      K Offline
      kwull
      wrote on last edited by kwull
      #99

      [Solved] I've solved the issue by changing docker base image. The issue described here - https://github.com/openhab/openhab-docker/issues/144

      I'll keep the details for others:

      @TimO, thanks for the great openhab binding. I've used it on openhab 2.0 and it works just great. Now I have totally fresh openhab 2.2 setup and cannot make mysensors binding working. I've tried many things but with no luck. Can you point me into direction how to fix that?

      The gateway works as expected:

      root@machine:/home/kwull# cat /dev/ttyUSB0
      0;1;1;0;0;22.3
      0;0;1;0;1;23.0
      0;255;3;0;14;Gateway startup complete.
      0;255;0;0;18;2.1.1
      0;255;3;0;11;Garage Gateway
      0;255;3;0;12;1.0
      0;0;0;0;7;
      0;1;0;0;6;
      0;1;1;0;0;23.1
      0;0;1;0;1;22.1
      

      Bindings:

      25 │ Active   │  80 │ 3.12.0.OH              │ nrjavaserial
      210 │ Active   │  80 │ 1.0.2                  │ Paho MQTT Client
      211 │ Active   │  80 │ 0.10.0.b1              │ Eclipse SmartHome MQTT Transport Bundle
      214 │ Active   │  80 │ 2.3.0.201801160936     │ MySensors Binding
      

      openhab.log:

      2018-01-21 17:18:33.696 [DEBUG] [nsors.handler.MySensorsBridgeHandler] - Initialization of the MySensors bridge
      2018-01-21 17:18:33.703 [DEBUG] [ensors.factory.MySensorsCacheFactory] - Cache file: given_ids.cached exist.
      2018-01-21 17:18:33.704 [DEBUG] [ensors.factory.MySensorsCacheFactory] - Cache (given_ids) content: []
      2018-01-21 17:18:33.710 [DEBUG] [col.serial.MySensorsSerialConnection] - Enabling connection watchdog
      2018-01-21 17:18:33.712 [DEBUG] [col.serial.MySensorsSerialConnection] - Connecting to /dev/ttyUSB0 [baudRate:115200]
      2018-01-21 17:18:33.715 [DEBUG] [org.openhab.binding.mysensors       ] - ServiceEvent REGISTERED - {org.eclipse.smarthome.config.discovery.DiscoveryService}={service.id=325, service.bundleid=214, service.scope=singleton} - org.openhab.binding.mysensors
      2018-01-21 17:18:33.716 [DEBUG] [.discovery.MySensorsDiscoveryService] - Starting MySensors discovery scan
      2018-01-21 17:18:33.716 [DEBUG] [nsors.handler.MySensorsBridgeHandler] - Initialization of the MySensors bridge DONE!
      2018-01-21 17:18:36.027 [WARN ] [org.jline                           ] - Unable to create a system terminal, creating a dumb terminal (enable debug logging for more information)
      

      Exception log:

      Current thread (0x000055797e792800):  JavaThread "org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection" [_thread_in_native, id=641, stack(0x00007f12eb309000,0x00007f12eb409aa8)]
      
      siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x00000000000037a6
      
      Registers:
      RAX=0x0000000000000000, RBX=0x00007f12e7403940, RCX=0x00007f13197e3f04, RDX=0x00007f131934828c
      RSP=0x00007f12eb407d48, RBP=0x0000000000000001, RSI=0x0000000000000900, RDI=0x000055797ccb99a0
      R8 =0x000055797ccb99ac, R9 =0x000055797ccb99a0, R10=0x00000006d600e9d0, R11=0x0000000000000206
      R12=0x000055797ccb99a0, R13=0x000055797e7929e0, R14=0x00007f12eb407ec8, R15=0x0000000000000082
      RIP=0x00000000000037a6, EFLAGS=0x0000000000010202, CSGSFS=0x0000000000000033, ERR=0x0000000000000014
        TRAPNO=0x000000000000000e
      
      Top of Stack: (sp=0x00007f12eb407d48)
      0x00007f12eb407d48:   00007f12e64e0965 00007f12eb407de8
      0x00007f12eb407d58:   00007f1300000001 00007f12e7403940
      0x00007f12eb407d68:   000055797e792800 00007f12e7403940
      0x00007f12eb407d78:   d85a256e98c0817f 00007f12eb407de8
      0x00007f12eb407d88:   00007f1318b46afc 00007f12eb407de8
      0x00007f12eb407d98:   00007f12eb407dc8 00007f12eb407de8
      0x00007f12eb407da8:   00007f1318b46b68 000055797e792800
      0x00007f12eb407db8:   00007f1318c99928 0000557981a9a5f0
      0x00007f12eb407dc8:   000055797e792800 000055797e792800
      0x00007f12eb407dd8:   00007f12e7403940 000055797e792800
      0x00007f12eb407de8:   00007f12e7403940 000055797e792800
      0x00007f12eb407df8:   d85a256e98c0817f 00007f12e7403940
      0x00007f12eb407e08:   00007f12e7403940 00007f12eb407ea0
      0x00007f12eb407e18:   0000000000000000 00007f12e7403940
      0x00007f12eb407e28:   00007f12eb407ed0 000055797e792800
      0x00007f12eb407e38:   00007f1308ccd7f4 00007f12eb407ea0
      0x00007f12eb407e48:   00007f1308ccd579 fffffffe00000000
      0x00007f12eb407e58:   00007f1308ccd542 00007f12eb407e60
      0x00007f12eb407e68:   00007f12e7403940 00007f12eb407ed0
      0x00007f12eb407e78:   00007f12e7405c28 0000000000000000
      0x00007f12eb407e88:   00007f12e7403940 0000000000000000
      0x00007f12eb407e98:   00007f12eb407ec0 00007f12eb407f18
      0x00007f12eb407ea8:   00007f1308cbd7d0 0000000000000000
      0x00007f12eb407eb8:   00007f1308cc7260 0000000000000001
      0x00007f12eb407ec8:   00000006d600e9a8 00000006d600b490
      0x00007f12eb407ed8:   00007f12eb407ed8 00007f12e7404122
      0x00007f12eb407ee8:   00007f12eb407f98 00007f12e7405c28
      0x00007f12eb407ef8:   0000000000000000 00007f12e7404270
      0x00007f12eb407f08:   00007f12eb407ec0 00007f12eb407f80
      0x00007f12eb407f18:   00007f12eb407fe0 00007f1308cbdffd
      0x00007f12eb407f28:   0000000000000000 0000000000000000
      0x00007f12eb407f38:   0000000000000000 00000006d600e9a8 
      
      Instructions: (pc=0x00000000000037a6)
      0x0000000000003786:   
      [error occurred during error reporting (printing registers, top of stack, instructions near pc), id 0xb]
      
      Register to memory mapping:
      
      RAX=0x0000000000000000 is an unknown value
      RBX={method} {0x00007f12e7403940} 'testRead' '(Ljava/lang/String;I)Z' in 'gnu/io/RXTXCommDriver'
      RCX=0x00007f13197e3f04: getpid+0x7 in /lib/ld-musl-x86_64.so.1 at 0x00007f131978d000
      RDX=0x00007f131934828c: gHotSpotVMStructs+0x218f4 in /usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/server/libjvm.so at 0x00007f1318861000
      RSP=0x00007f12eb407d48 is pointing into the stack for thread: 0x000055797e792800
      RBP=0x0000000000000001 is an unknown value
      RSI=0x0000000000000900 is an unknown value
      RDI=0x000055797ccb99a0 is an unknown value
      R8 =0x000055797ccb99ac is an unknown value
      R9 =0x000055797ccb99a0 is an unknown value
      R10=0x00000006d600e9d0 is pointing into object: 0x00000006d600e9c0
      [C 
       - klass: {type array char}
       - length: 12
      R11=0x0000000000000206 is an unknown value
      R12=0x000055797ccb99a0 is an unknown value
      R13=0x000055797e7929e0 is an unknown value
      R14=0x00007f12eb407ec8 is pointing into the stack for thread: 0x000055797e792800
      R15=0x0000000000000082 is an unknown value
      
      
      Stack: [0x00007f12eb309000,0x00007f12eb409aa8],  sp=0x00007f12eb407d48,  free space=1019k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      C  0x00000000000037a6
      
      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      j  gnu.io.RXTXCommDriver.testRead(Ljava/lang/String;I)Z+0
      j  gnu.io.RXTXCommDriver.registerValidPorts([Ljava/lang/String;[Ljava/lang/String;I)V+202
      j  gnu.io.RXTXCommDriver.registerScannedPorts(I)V+1466
      j  gnu.io.RXTXCommDriver.initialize()V+35
      j  gnu.io.CommPortIdentifier.getPortIdentifiers()Ljava/util/Enumeration;+53
      j  gnu.io.NativeResource.testNativeCode()V+0
      j  gnu.io.NativeResource.inJarLoad(Ljava/lang/String;)V+37
      j  gnu.io.NativeResource.loadLib(Ljava/lang/String;)V+54
      j  gnu.io.NativeResource.load(Ljava/lang/String;)V+138
      j  gnu.io.SerialManager.<init>()V+23
      j  gnu.io.SerialManager.getInstance()Lgnu/io/SerialManager;+10
      j  gnu.io.RXTXCommDriver.<clinit>()V+39
      v  ~StubRoutines::call_stub
      J 1368  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; (0 bytes) @ 0x00007f1309151eba [0x00007f1309151e40+0x7a]
      J 3010 C1 java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class; (15 bytes) @ 0x00007f13096ee94c [0x00007f13096ee7a0+0x1ac]
      j  gnu.io.CommPortIdentifier.<clinit>()V+12
      v  ~StubRoutines::call_stub
      j  org.openhab.binding.mysensors.internal.protocol.serial.MySensorsSerialConnection.establishConnection()Z+32
      j  org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection.connect()Z+2
      j  org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection.run()V+46
      J 10253 C2 java.util.concurrent.Executors$RunnableAdapter.call()Ljava/lang/Object; (14 bytes) @ 0x00007f1309884cac [0x00007f1309884c60+0x4c]
      J 9236 C1 java.util.concurrent.FutureTask.runAndReset()Z (128 bytes) @ 0x00007f130a4cd17c [0x00007f130a4ccf00+0x27c]
      J 9408 C1 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run()V (59 bytes) @ 0x00007f130a57bb8c [0x00007f130a57b600+0x58c]
      J 8894 C1 java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V (225 bytes) @ 0x00007f130a3b8e3c [0x00007f130a3b7e00+0x103c]
      j  java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5
      J 11172 C1 java.lang.Thread.run()V (17 bytes) @ 0x00007f1308f58584 [0x00007f1308f58440+0x144]
      v  ~StubRoutines::call_stub
      

      Additional logs:

      2018-01-08 20:55:18.426 [ERROR] [org.openhab.binding.mysensors       ] - [org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService(195)] Error during instantiation of the implementation object
      java.lang.InstantiationException: org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService
      	at java.lang.Class.newInstance(Class.java:427) ~[?:?]
      	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:237) ~[?:?]
      	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109) ~[?:?]
      	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) ~[?:?]
      	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) ~[?:?]
      	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:823) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:212) ~[?:?]
      	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) ~[?:?]
      	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:887) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:874) ~[?:?]
      	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:941) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:741) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) ~[?:?]
      	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) ~[?:?]
      	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) ~[?:?]
      	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) ~[?:?]
      	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) ~[?:?]
      	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) ~[?:?]
      	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) ~[?:?]
      	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) ~[?:?]
      	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) ~[?:?]
      	at org.eclipse.osgi.container.Module.start(Module.java:467) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:402) ~[?:?]
      	at org.eclipse.smarthome.extensionservice.marketplace.internal.BindingExtensionHandler.install(BindingExtensionHandler.java:82) ~[?:?]
      	at org.eclipse.smarthome.extensionservice.marketplace.internal.MarketplaceExtensionService.install(MarketplaceExtensionService.java:222) ~[?:?]
      	at org.eclipse.smarthome.io.rest.core.internal.extensions.ExtensionResource.lambda$0(ExtensionResource.java:157) ~[?:?]
      	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:1149) [?:?]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
      	at java.lang.Thread.run(Thread.java:748) [?:?]
      Caused by: java.lang.NoSuchMethodException: org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService.<init>()
      	at java.lang.Class.getConstructor0(Class.java:3082) ~[?:?]
      	at java.lang.Class.newInstance(Class.java:412) ~[?:?]
      	... 65 more
      2018-01-08 20:55:18.450 [WARN ] [org.openhab.binding.mysensors       ] - FrameworkEvent WARNING - org.openhab.binding.mysensors
      org.osgi.framework.ServiceException: org.apache.felix.scr.impl.manager.SingleComponentManager.getService() returned a null service object
      	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:232) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) ~[?:?]
      	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) ~[?:?]
      	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) ~[?:?]
      	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:887) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:874) ~[?:?]
      	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:941) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:741) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) ~[?:?]
      	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) ~[?:?]
      	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) ~[?:?]
      	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) ~[?:?]
      	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) ~[?:?]
      	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) ~[?:?]
      	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) ~[?:?]
      	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) ~[?:?]
      	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) ~[?:?]
      	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[?:?]
      	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) ~[?:?]
      	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
      	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) ~[?:?]
      	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) ~[?:?]
      	at org.eclipse.osgi.container.Module.start(Module.java:467) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
      	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:402) ~[?:?]
      	at org.eclipse.smarthome.extensionservice.marketplace.internal.BindingExtensionHandler.install(BindingExtensionHandler.java:82) ~[?:?]
      	at org.eclipse.smarthome.extensionservice.marketplace.internal.MarketplaceExtensionService.install(MarketplaceExtensionService.java:222) ~[?:?]
      	at org.eclipse.smarthome.io.rest.core.internal.extensions.ExtensionResource.lambda$0(ExtensionResource.java:157) ~[?:?]
      	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:1149) [?:?]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
      	at java.lang.Thread.run(Thread.java:748) [?:?] 
      

      Any ideas where to look?

      K 1 Reply Last reply
      0
      • K kwull

        [Solved] I've solved the issue by changing docker base image. The issue described here - https://github.com/openhab/openhab-docker/issues/144

        I'll keep the details for others:

        @TimO, thanks for the great openhab binding. I've used it on openhab 2.0 and it works just great. Now I have totally fresh openhab 2.2 setup and cannot make mysensors binding working. I've tried many things but with no luck. Can you point me into direction how to fix that?

        The gateway works as expected:

        root@machine:/home/kwull# cat /dev/ttyUSB0
        0;1;1;0;0;22.3
        0;0;1;0;1;23.0
        0;255;3;0;14;Gateway startup complete.
        0;255;0;0;18;2.1.1
        0;255;3;0;11;Garage Gateway
        0;255;3;0;12;1.0
        0;0;0;0;7;
        0;1;0;0;6;
        0;1;1;0;0;23.1
        0;0;1;0;1;22.1
        

        Bindings:

        25 │ Active   │  80 │ 3.12.0.OH              │ nrjavaserial
        210 │ Active   │  80 │ 1.0.2                  │ Paho MQTT Client
        211 │ Active   │  80 │ 0.10.0.b1              │ Eclipse SmartHome MQTT Transport Bundle
        214 │ Active   │  80 │ 2.3.0.201801160936     │ MySensors Binding
        

        openhab.log:

        2018-01-21 17:18:33.696 [DEBUG] [nsors.handler.MySensorsBridgeHandler] - Initialization of the MySensors bridge
        2018-01-21 17:18:33.703 [DEBUG] [ensors.factory.MySensorsCacheFactory] - Cache file: given_ids.cached exist.
        2018-01-21 17:18:33.704 [DEBUG] [ensors.factory.MySensorsCacheFactory] - Cache (given_ids) content: []
        2018-01-21 17:18:33.710 [DEBUG] [col.serial.MySensorsSerialConnection] - Enabling connection watchdog
        2018-01-21 17:18:33.712 [DEBUG] [col.serial.MySensorsSerialConnection] - Connecting to /dev/ttyUSB0 [baudRate:115200]
        2018-01-21 17:18:33.715 [DEBUG] [org.openhab.binding.mysensors       ] - ServiceEvent REGISTERED - {org.eclipse.smarthome.config.discovery.DiscoveryService}={service.id=325, service.bundleid=214, service.scope=singleton} - org.openhab.binding.mysensors
        2018-01-21 17:18:33.716 [DEBUG] [.discovery.MySensorsDiscoveryService] - Starting MySensors discovery scan
        2018-01-21 17:18:33.716 [DEBUG] [nsors.handler.MySensorsBridgeHandler] - Initialization of the MySensors bridge DONE!
        2018-01-21 17:18:36.027 [WARN ] [org.jline                           ] - Unable to create a system terminal, creating a dumb terminal (enable debug logging for more information)
        

        Exception log:

        Current thread (0x000055797e792800):  JavaThread "org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection" [_thread_in_native, id=641, stack(0x00007f12eb309000,0x00007f12eb409aa8)]
        
        siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x00000000000037a6
        
        Registers:
        RAX=0x0000000000000000, RBX=0x00007f12e7403940, RCX=0x00007f13197e3f04, RDX=0x00007f131934828c
        RSP=0x00007f12eb407d48, RBP=0x0000000000000001, RSI=0x0000000000000900, RDI=0x000055797ccb99a0
        R8 =0x000055797ccb99ac, R9 =0x000055797ccb99a0, R10=0x00000006d600e9d0, R11=0x0000000000000206
        R12=0x000055797ccb99a0, R13=0x000055797e7929e0, R14=0x00007f12eb407ec8, R15=0x0000000000000082
        RIP=0x00000000000037a6, EFLAGS=0x0000000000010202, CSGSFS=0x0000000000000033, ERR=0x0000000000000014
          TRAPNO=0x000000000000000e
        
        Top of Stack: (sp=0x00007f12eb407d48)
        0x00007f12eb407d48:   00007f12e64e0965 00007f12eb407de8
        0x00007f12eb407d58:   00007f1300000001 00007f12e7403940
        0x00007f12eb407d68:   000055797e792800 00007f12e7403940
        0x00007f12eb407d78:   d85a256e98c0817f 00007f12eb407de8
        0x00007f12eb407d88:   00007f1318b46afc 00007f12eb407de8
        0x00007f12eb407d98:   00007f12eb407dc8 00007f12eb407de8
        0x00007f12eb407da8:   00007f1318b46b68 000055797e792800
        0x00007f12eb407db8:   00007f1318c99928 0000557981a9a5f0
        0x00007f12eb407dc8:   000055797e792800 000055797e792800
        0x00007f12eb407dd8:   00007f12e7403940 000055797e792800
        0x00007f12eb407de8:   00007f12e7403940 000055797e792800
        0x00007f12eb407df8:   d85a256e98c0817f 00007f12e7403940
        0x00007f12eb407e08:   00007f12e7403940 00007f12eb407ea0
        0x00007f12eb407e18:   0000000000000000 00007f12e7403940
        0x00007f12eb407e28:   00007f12eb407ed0 000055797e792800
        0x00007f12eb407e38:   00007f1308ccd7f4 00007f12eb407ea0
        0x00007f12eb407e48:   00007f1308ccd579 fffffffe00000000
        0x00007f12eb407e58:   00007f1308ccd542 00007f12eb407e60
        0x00007f12eb407e68:   00007f12e7403940 00007f12eb407ed0
        0x00007f12eb407e78:   00007f12e7405c28 0000000000000000
        0x00007f12eb407e88:   00007f12e7403940 0000000000000000
        0x00007f12eb407e98:   00007f12eb407ec0 00007f12eb407f18
        0x00007f12eb407ea8:   00007f1308cbd7d0 0000000000000000
        0x00007f12eb407eb8:   00007f1308cc7260 0000000000000001
        0x00007f12eb407ec8:   00000006d600e9a8 00000006d600b490
        0x00007f12eb407ed8:   00007f12eb407ed8 00007f12e7404122
        0x00007f12eb407ee8:   00007f12eb407f98 00007f12e7405c28
        0x00007f12eb407ef8:   0000000000000000 00007f12e7404270
        0x00007f12eb407f08:   00007f12eb407ec0 00007f12eb407f80
        0x00007f12eb407f18:   00007f12eb407fe0 00007f1308cbdffd
        0x00007f12eb407f28:   0000000000000000 0000000000000000
        0x00007f12eb407f38:   0000000000000000 00000006d600e9a8 
        
        Instructions: (pc=0x00000000000037a6)
        0x0000000000003786:   
        [error occurred during error reporting (printing registers, top of stack, instructions near pc), id 0xb]
        
        Register to memory mapping:
        
        RAX=0x0000000000000000 is an unknown value
        RBX={method} {0x00007f12e7403940} 'testRead' '(Ljava/lang/String;I)Z' in 'gnu/io/RXTXCommDriver'
        RCX=0x00007f13197e3f04: getpid+0x7 in /lib/ld-musl-x86_64.so.1 at 0x00007f131978d000
        RDX=0x00007f131934828c: gHotSpotVMStructs+0x218f4 in /usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/server/libjvm.so at 0x00007f1318861000
        RSP=0x00007f12eb407d48 is pointing into the stack for thread: 0x000055797e792800
        RBP=0x0000000000000001 is an unknown value
        RSI=0x0000000000000900 is an unknown value
        RDI=0x000055797ccb99a0 is an unknown value
        R8 =0x000055797ccb99ac is an unknown value
        R9 =0x000055797ccb99a0 is an unknown value
        R10=0x00000006d600e9d0 is pointing into object: 0x00000006d600e9c0
        [C 
         - klass: {type array char}
         - length: 12
        R11=0x0000000000000206 is an unknown value
        R12=0x000055797ccb99a0 is an unknown value
        R13=0x000055797e7929e0 is an unknown value
        R14=0x00007f12eb407ec8 is pointing into the stack for thread: 0x000055797e792800
        R15=0x0000000000000082 is an unknown value
        
        
        Stack: [0x00007f12eb309000,0x00007f12eb409aa8],  sp=0x00007f12eb407d48,  free space=1019k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        C  0x00000000000037a6
        
        Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
        j  gnu.io.RXTXCommDriver.testRead(Ljava/lang/String;I)Z+0
        j  gnu.io.RXTXCommDriver.registerValidPorts([Ljava/lang/String;[Ljava/lang/String;I)V+202
        j  gnu.io.RXTXCommDriver.registerScannedPorts(I)V+1466
        j  gnu.io.RXTXCommDriver.initialize()V+35
        j  gnu.io.CommPortIdentifier.getPortIdentifiers()Ljava/util/Enumeration;+53
        j  gnu.io.NativeResource.testNativeCode()V+0
        j  gnu.io.NativeResource.inJarLoad(Ljava/lang/String;)V+37
        j  gnu.io.NativeResource.loadLib(Ljava/lang/String;)V+54
        j  gnu.io.NativeResource.load(Ljava/lang/String;)V+138
        j  gnu.io.SerialManager.<init>()V+23
        j  gnu.io.SerialManager.getInstance()Lgnu/io/SerialManager;+10
        j  gnu.io.RXTXCommDriver.<clinit>()V+39
        v  ~StubRoutines::call_stub
        J 1368  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; (0 bytes) @ 0x00007f1309151eba [0x00007f1309151e40+0x7a]
        J 3010 C1 java.lang.Class.forName(Ljava/lang/String;)Ljava/lang/Class; (15 bytes) @ 0x00007f13096ee94c [0x00007f13096ee7a0+0x1ac]
        j  gnu.io.CommPortIdentifier.<clinit>()V+12
        v  ~StubRoutines::call_stub
        j  org.openhab.binding.mysensors.internal.protocol.serial.MySensorsSerialConnection.establishConnection()Z+32
        j  org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection.connect()Z+2
        j  org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection.run()V+46
        J 10253 C2 java.util.concurrent.Executors$RunnableAdapter.call()Ljava/lang/Object; (14 bytes) @ 0x00007f1309884cac [0x00007f1309884c60+0x4c]
        J 9236 C1 java.util.concurrent.FutureTask.runAndReset()Z (128 bytes) @ 0x00007f130a4cd17c [0x00007f130a4ccf00+0x27c]
        J 9408 C1 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run()V (59 bytes) @ 0x00007f130a57bb8c [0x00007f130a57b600+0x58c]
        J 8894 C1 java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V (225 bytes) @ 0x00007f130a3b8e3c [0x00007f130a3b7e00+0x103c]
        j  java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5
        J 11172 C1 java.lang.Thread.run()V (17 bytes) @ 0x00007f1308f58584 [0x00007f1308f58440+0x144]
        v  ~StubRoutines::call_stub
        

        Additional logs:

        2018-01-08 20:55:18.426 [ERROR] [org.openhab.binding.mysensors       ] - [org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService(195)] Error during instantiation of the implementation object
        java.lang.InstantiationException: org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService
        	at java.lang.Class.newInstance(Class.java:427) ~[?:?]
        	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:237) ~[?:?]
        	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109) ~[?:?]
        	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) ~[?:?]
        	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) ~[?:?]
        	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:823) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:212) ~[?:?]
        	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) ~[?:?]
        	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:887) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:874) ~[?:?]
        	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:941) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:741) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) ~[?:?]
        	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) ~[?:?]
        	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) ~[?:?]
        	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) ~[?:?]
        	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) ~[?:?]
        	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) ~[?:?]
        	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) ~[?:?]
        	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) ~[?:?]
        	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) ~[?:?]
        	at org.eclipse.osgi.container.Module.start(Module.java:467) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:402) ~[?:?]
        	at org.eclipse.smarthome.extensionservice.marketplace.internal.BindingExtensionHandler.install(BindingExtensionHandler.java:82) ~[?:?]
        	at org.eclipse.smarthome.extensionservice.marketplace.internal.MarketplaceExtensionService.install(MarketplaceExtensionService.java:222) ~[?:?]
        	at org.eclipse.smarthome.io.rest.core.internal.extensions.ExtensionResource.lambda$0(ExtensionResource.java:157) ~[?:?]
        	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:1149) [?:?]
        	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        	at java.lang.Thread.run(Thread.java:748) [?:?]
        Caused by: java.lang.NoSuchMethodException: org.openhab.binding.mysensors.discovery.MySensorsDiscoveryService.<init>()
        	at java.lang.Class.getConstructor0(Class.java:3082) ~[?:?]
        	at java.lang.Class.newInstance(Class.java:412) ~[?:?]
        	... 65 more
        2018-01-08 20:55:18.450 [WARN ] [org.openhab.binding.mysensors       ] - FrameworkEvent WARNING - org.openhab.binding.mysensors
        org.osgi.framework.ServiceException: org.apache.felix.scr.impl.manager.SingleComponentManager.getService() returned a null service object
        	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:232) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) ~[?:?]
        	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) ~[?:?]
        	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) ~[?:?]
        	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:887) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:874) ~[?:?]
        	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:941) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:741) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) ~[?:?]
        	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) ~[?:?]
        	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) ~[?:?]
        	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) ~[?:?]
        	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) ~[?:?]
        	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) ~[?:?]
        	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) ~[?:?]
        	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) ~[?:?]
        	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) ~[?:?]
        	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) ~[?:?]
        	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) ~[?:?]
        	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) ~[?:?]
        	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) ~[?:?]
        	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) ~[?:?]
        	at org.eclipse.osgi.container.Module.start(Module.java:467) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:383) ~[?:?]
        	at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:402) ~[?:?]
        	at org.eclipse.smarthome.extensionservice.marketplace.internal.BindingExtensionHandler.install(BindingExtensionHandler.java:82) ~[?:?]
        	at org.eclipse.smarthome.extensionservice.marketplace.internal.MarketplaceExtensionService.install(MarketplaceExtensionService.java:222) ~[?:?]
        	at org.eclipse.smarthome.io.rest.core.internal.extensions.ExtensionResource.lambda$0(ExtensionResource.java:157) ~[?:?]
        	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:1149) [?:?]
        	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        	at java.lang.Thread.run(Thread.java:748) [?:?] 
        

        Any ideas where to look?

        K Offline
        K Offline
        kwull
        wrote on last edited by
        #100

        @kwull, @TimO - I've solved the issue by changing docker base image. The issue described here - https://github.com/openhab/openhab-docker/issues/144

        1 Reply Last reply
        1
        • seeersS Offline
          seeersS Offline
          seeers
          wrote on last edited by seeers
          #101

          Hi, I'd like to use the expert mode for viewing the raw messages from the serial gateway.
          I've created a new thing and item
          Thing:

           mySensorsMessage mySMsg01   [ nodeId=999, childId=999 ]
          

          Item:

          String mySMsg01  "MySensorsMessage"   { channel="mysensors:mySensorsMessage:gateway:mySMsg01:mySensorsMessage" }
          

          unfortunately i get no item state :
          openhab> smarthome:items list my*
          mySMsg01 (Type=StringItem, State=NULL, Label=MySensorsMessage, Category=null)

          did I do something wrong here?

          1 Reply Last reply
          0
          • seeersS Offline
            seeersS Offline
            seeers
            wrote on last edited by
            #102

            ok, it works after updating to snapshot 2.3
            btw: 2.3 requeres esh-io-transport-mqtt
            Intallation in karaf console:
            feature:install esh-io-transport-mqtt

            T 1 Reply Last reply
            0
            • seeersS seeers

              ok, it works after updating to snapshot 2.3
              btw: 2.3 requeres esh-io-transport-mqtt
              Intallation in karaf console:
              feature:install esh-io-transport-mqtt

              T Offline
              T Offline
              TimO
              Hero Member
              wrote on last edited by
              #103

              @seeers yes, I've located a bug in the expert mode an fixed it recently!

              1 Reply Last reply
              0
              • L Offline
                L Offline
                LastSamurai
                Hardware Contributor
                wrote on last edited by
                #104

                @TimO I saw that you fixed some other bugs too in the repo. Will you create a new version 2.3 of the binding soon? Or will there be more changes first?
                As most of the changes (at least also) concern RGBW lighting I would really like to use it but I can't seem to build the binding locally (I postet the error in the git pr).

                1 Reply Last reply
                0
                • jocke4uJ jocke4u

                  @timo Ok, so there is a plan to solve it in a better way than using rules?
                  Do you have any guidance of using rules until then?

                  NickBuilderN Offline
                  NickBuilderN Offline
                  NickBuilder
                  wrote on last edited by NickBuilder
                  #105

                  @jocke4u, I really want my power node to work so I was going to try to make my own rule based on the "expert" strategy and the 999 node/child.

                  But first I tried an even simpler approach, I added a var1-item from the power thing and now I have communication between node and gateway. Please give it a try yourself and see if it works for you.

                  More specifically I defined the following item:
                  Number PulseVar "Var1 [%d]" { channel="mysensors:power:gateway:pulseThing:var1" }

                  Be sure to also persist the item. I store it in a mapdb dataset:
                  PulseVar : strategy = everyChange, restoreOnStartup

                  FYI, my thing is defined as follows:
                  power pulseThing [ nodeId=50, childId=1 ]

                  Please give it a try and come back with the outcome.

                  EDIT: this feels like a too simple fix, I suspect that @TimO has made some changes in the 2.3 snapshot...

                  1 Reply Last reply
                  0
                  • ร Offline
                    ร Offline
                    รอเรือ
                    wrote on last edited by
                    #106

                    Hi there!

                    Maybe someone would like to help me a bit?

                    I'm on openHAB 2.2 with mysensors binding 2.3.0.201801160936. I'm using a serial gateway that I reflashed today using MySensors 2.2.0 library. I have turned off debugging in the sketch.

                    The problem is that I encounter an exception each time OH starts up.

                    2018-02-11 11:05:59.342 [WARN ] [rsAbstractConnection$MySensorsReader] - Exception on reading from connection
                    java.io.IOException: Underlying input stream returned zero bytes
                            at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:288) [?:?]
                            at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326) [?:?]
                            at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178) [?:?]
                            at java.io.InputStreamReader.read(InputStreamReader.java:184) [?:?]
                            at java.io.BufferedReader.fill(BufferedReader.java:161) [?:?]
                            at java.io.BufferedReader.readLine(BufferedReader.java:324) [?:?]
                            at java.io.BufferedReader.readLine(BufferedReader.java:389) [?:?]
                            at org.openhab.binding.mysensors.internal.protocol.MySensorsAbstractConnection$MySensorsReader.run(MySensorsAbstractConnection.java:328) [255:org.openhab.binding.mysensors:2.3.0.201801160936]
                            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:1149) [?:?]
                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
                            at java.lang.Thread.run(Thread.java:748) [?:?]
                    

                    Thing config:

                    Bridge mysensors:bridge-ser:gateway [ serialPort="/dev/ttyUSBmys", baudRate=115200, sendDelay=200, startupCheckEnabled=false ]
                    

                    Everything seems to work otherwise. The problem is that the warning draws my attention every time and of course I need to check if it's something serious that I'd need to act upon. I'd rather see that I get no exceptions/warnings in case the "problem" can be ignored.

                    My question to you guys is if there is anything that I can do about it? Thanks for your kind help.

                    Cheers!

                    1 Reply Last reply
                    0
                    • L Offline
                      L Offline
                      LastSamurai
                      Hardware Contributor
                      wrote on last edited by
                      #107

                      @TimO I finally got around to testing my pureWhite RGBW code and at least for me its working like it should be. I saw you already merged this so I guess others can use it too very soon.
                      What is still not working is the acknowledgment feature. I have one node that only gets about 90% of the messages without error, so I tried activating it there and on some other nodes too for testing. Result: success rate is down to ~50% for each node and I get messages about some acknowledgment on the console when no message has even been sent (nothing about a message from mysensors on the console and no rx/tx leds on the gateway). When I tested this some months ago I also saw no message at the client so I am pretty sure none gets send.
                      So I guess this issue is still unresolved ;) I have no clue why on a first glance but if I can help just send me a message.

                      1 Reply Last reply
                      0
                      • F Offline
                        F Offline
                        forexsieno
                        wrote on last edited by
                        #108

                        Hello, I try to start using OpenHab as a controller and
                        need some help, regarding mysensors binding 2.3.0. I get the bindings installed, but in bundle:list it's just installed and i don't get it Active.

                        All other instruction for installation are done.
                        Did feature:install openhab-transport-serial and feature:install esh-io-transport-mqtt and and "nrjavaserial" is Active.

                        But mysensor binding just installed. How can I get it ACTIVE?

                        Thank you for your help.

                        1 Reply Last reply
                        0
                        • L Offline
                          L Offline
                          LastSamurai
                          Hardware Contributor
                          wrote on last edited by
                          #109

                          Do you still have an older version of Mysensors installed? Thats the only time I had such behaviour

                          1 Reply Last reply
                          0
                          • nick van alstN Offline
                            nick van alstN Offline
                            nick van alst
                            wrote on last edited by
                            #110

                            Hello,

                            I've been using the binding for a while now!
                            must say that i still have some problems with auto discovery, but manually adding the sensors work fine!

                            I encountered a bug in 1 for the components.

                            The GAS meter should contain a variable for V_VOLUME but in the logs i'm getting errors that the variable does not exist.

                            i searched in the code and found out the the class for SGAS is not containing the V_VOLUME variable.
                            file: MySensorsChildSGas.java
                            github link: https://github.com/tobof/openhab2-addons/blob/MySensors_Binding/addons/binding/org.openhab.binding.mysensors/src/main/java/org/openhab/binding/mysensors/internal/sensors/child/MySensorsChildSGas.java

                            as by: https://www.mysensors.org/download/serial_api_20#sensor-types SGAS should also include a V_VOLUME variable as wel as a V_FLOW

                            For now i adjusted my sensor to use one of the custom var fields. but it would be nice to use the V_VOLUME variable for this.

                            1 Reply Last reply
                            1
                            • fixjunkF Offline
                              fixjunkF Offline
                              fixjunk
                              wrote on last edited by
                              #111

                              I have a general question that I can't seem to find an answer to either here, in the openhab docs, or anywhere googling between the two.

                              On a Raspberry Pi 3 running openhabian 1.4 (stretch 9.4)
                              running openhab 2.2
                              Mosquitto 1.4.10
                              mysgw 2.2.0 (MQTT)

                              And an arduino pro mini 3.3v test sensor node running the door/button sketch at version 2.2.0 also.

                              The sensor node can communicate over rf24 just fine and the broker receives and sends messages to it without issue.

                              My question is this: Does this openhab 2.2 mysensors binding replace or work in concert with the original openhab 2.2 PaperUI-installed MQTT binding? And same for the MySensors MQTT Gateway that's part of the Mysensors binding and mysgw?

                              I ask because when I follow the installation instructions from the github wiki and start everything up, I get a persistence in use error in org.eclipse.smarthome.io.transport.mqtt.MqttService. And it appears that my original broker is running fine, which suggests I'm trying to run two brokers and they're uninterested in cooperating.

                              The installation instructions I've seen (a couple places) say to use mqtt.cfg and org.eclipse.smarthome.mqtt.cfg with the same settings.

                              Hoping the answer is a simple, "stop mysgw and just run the paperUI MQTT Gateway" or the like.

                              Thanks!

                              fixjunkF 1 Reply Last reply
                              0
                              • fixjunkF fixjunk

                                I have a general question that I can't seem to find an answer to either here, in the openhab docs, or anywhere googling between the two.

                                On a Raspberry Pi 3 running openhabian 1.4 (stretch 9.4)
                                running openhab 2.2
                                Mosquitto 1.4.10
                                mysgw 2.2.0 (MQTT)

                                And an arduino pro mini 3.3v test sensor node running the door/button sketch at version 2.2.0 also.

                                The sensor node can communicate over rf24 just fine and the broker receives and sends messages to it without issue.

                                My question is this: Does this openhab 2.2 mysensors binding replace or work in concert with the original openhab 2.2 PaperUI-installed MQTT binding? And same for the MySensors MQTT Gateway that's part of the Mysensors binding and mysgw?

                                I ask because when I follow the installation instructions from the github wiki and start everything up, I get a persistence in use error in org.eclipse.smarthome.io.transport.mqtt.MqttService. And it appears that my original broker is running fine, which suggests I'm trying to run two brokers and they're uninterested in cooperating.

                                The installation instructions I've seen (a couple places) say to use mqtt.cfg and org.eclipse.smarthome.mqtt.cfg with the same settings.

                                Hoping the answer is a simple, "stop mysgw and just run the paperUI MQTT Gateway" or the like.

                                Thanks!

                                fixjunkF Offline
                                fixjunkF Offline
                                fixjunk
                                wrote on last edited by
                                #112

                                @fixjunk replying to myself...

                                seems like installing esh-io-transport-mqtt in karaf causes the broker problem.
                                without it installed the logs show:

                                2018-04-16 16:28:35.914 [ERROR] [org.openhab.binding.mysensors       ] - FrameworkEvent ERROR - org.openhab.binding.mysensors
                                org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.mysensors [210]
                                  Unresolved requirement: Import-Package: org.eclipse.smarthome.io.transport.mqtt
                                	at org.eclipse.osgi.container.Module.start(Module.java:444) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1620) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1600) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1571) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1514) [?:?]
                                	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-04-16 16:28:36.870 [INFO ] [penhab.io.transport.mqtt.MqttService] - MQTT Service initialization completed.
                                2018-04-16 16:28:36.885 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'habianbroker'
                                

                                But then after feature:install esh-io-transport-mqtt I get this:

                                2018-04-16 16:30:13.506 [INFO ] [penhab.io.transport.mqtt.MqttService] - Stopping broker connection 'habianbroker'
                                2018-04-16 16:30:14.135 [INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'habianbroker' to 'tcp://<MY.IP.GOES.HERE>:1883' with clientid mysensors and file store '/var/lib/openhab2/tmp/habianbroker'
                                2018-04-16 16:30:14.208 [WARN ] [rthome.io.transport.mqtt.MqttService] - MqttBroker start failed: Persistence already in use
                                org.eclipse.smarthome.io.transport.mqtt.MqttException: Persistence already in use
                                	at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection.start(MqttBrokerConnection.java:572) [219:org.eclipse.smarthome.io.transport.mqtt:0.10.0.b1]
                                	at org.eclipse.smarthome.io.transport.mqtt.MqttService.modified(MqttService.java:145) [219:org.eclipse.smarthome.io.transport.mqtt:0.10.0.b1]
                                	at org.eclipse.smarthome.io.transport.mqtt.MqttService.activate(MqttService.java:157) [219:org.eclipse.smarthome.io.transport.mqtt:0.10.0.b1]
                                	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.apache.felix.scr.impl.inject.BaseMethod.invokeMethod(BaseMethod.java:229) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.inject.BaseMethod.access$500(BaseMethod.java:39) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.inject.BaseMethod$Resolved.invoke(BaseMethod.java:650) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.inject.BaseMethod.invoke(BaseMethod.java:506) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:307) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.inject.ActivateMethod.invoke(ActivateMethod.java:299) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:298) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:109) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:906) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:879) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:823) [42:org.apache.felix.scr:2.0.12]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse$1.run(ServiceFactoryUse.java:212) [?:?]
                                	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.factoryGetService(ServiceFactoryUse.java:210) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceFactoryUse.getService(ServiceFactoryUse.java:111) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceConsumer$2.getService(ServiceConsumer.java:45) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:496) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.getService(ServiceRegistry.java:461) [?:?]
                                	at org.eclipse.osgi.internal.framework.BundleContextImpl.getService(BundleContextImpl.java:619) [?:?]
                                	at com.eclipsesource.jaxrs.publisher.internal.ResourceTracker.addingService(ResourceTracker.java:39) [15:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253]
                                	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:941) [?:?]
                                	at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:870) [?:?]
                                	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) [?:?]
                                	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) [?:?]
                                	at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:901) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109) [?:?]
                                	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:915) [?:?]
                                	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
                                	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:127) [?:?]
                                	at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:225) [?:?]
                                	at org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:464) [?:?]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:887) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:874) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:132) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:941) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:741) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:675) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:430) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.manager.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:657) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:341) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:390) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.Activator.access$200(Activator.java:54) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:265) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [42:org.apache.felix.scr:2.0.12]
                                	at org.apache.felix.utils.extender.AbstractExtender.addingBundle(AbstractExtender.java:187) [42:org.apache.felix.scr:2.0.12]
                                	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469) [?:?]
                                	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415) [?:?]
                                	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) [?:?]
                                	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229) [?:?]
                                	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]
                                	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:903) [?:?]
                                	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]
                                	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]
                                	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]
                                	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]
                                	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]
                                	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:156) [?:?]
                                	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]
                                	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]
                                	at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:470) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer.start(ModuleContainer.java:736) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer.applyDelta(ModuleContainer.java:727) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer.resolveAndApply(ModuleContainer.java:497) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer.resolve(ModuleContainer.java:443) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer.refresh(ModuleContainer.java:987) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerWiring.dispatchEvent(ModuleContainer.java:1368) [?:?]
                                	at org.eclipse.osgi.container.ModuleContainer$ContainerWiring.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) [?:?]
                                Caused by: org.eclipse.paho.client.mqttv3.MqttPersistenceException: Persistence already in use
                                	at org.eclipse.paho.client.mqttv3.persist.MqttDefaultFilePersistence.open(MqttDefaultFilePersistence.java:112) ~[?:?]
                                	at org.eclipse.paho.client.mqttv3.MqttAsyncClient.<init>(MqttAsyncClient.java:286) ~[?:?]
                                	at org.eclipse.paho.client.mqttv3.MqttAsyncClient.<init>(MqttAsyncClient.java:167) ~[?:?]
                                	at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection.start(MqttBrokerConnection.java:570) ~[?:?]
                                	... 79 more
                                2018-04-16 16:30:14.330 [INFO ] [penhab.io.transport.mqtt.MqttService] - MQTT Service initialization completed.
                                2018-04-16 16:30:14.335 [INFO ] [t.mqtt.internal.MqttBrokerConnection] - Starting MQTT broker connection 'habianbroker'
                                

                                It looks like the openhab broker and the eclipse brokers are conflicting?

                                1 Reply Last reply
                                0
                                • F Offline
                                  F Offline
                                  fredswed
                                  wrote on last edited by
                                  #113

                                  @fixjunk - I'm having the same problem and it's driving me crazy. I don't mind some troubleshooting but OpenHAB is new territory for me and I just can't find the problem.

                                  I have set up two mqtt broker connections (in two config files) for debugging. For the Eclipse bundle I define the connection "huset_mqtt" with user "openhab". For the legacy OpenHAB binding I define a connection "huset_mqtt_legacy" with user "openhab-legacy. Both connect to the same mosquitto server.

                                  I don't think there is a conflict between the openHAB MQTT Binding and esh-io-transport-mqtt. To test it I stopped the openHAB MQTT binding and transport bundles. The warning is still there even when only the Eclipse SmartHome MQTT Transport Bundle is running.

                                  When all bundles are running, I first stop the legacy broker and the log looks as expected. But when I restart the Eclipse bundle the warning "Persistence already in use" is thrown (below):

                                  2018-05-04 22:10:09.739 [INFO ] [penhab.io.transport.mqtt.MqttService] - Stopping broker connection 'huset_mqtt_legacy'
                                  2018-05-04 22:17:47.270 [INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'huset_mqtt' to 'tcp://
                                  192.168.1.5:1883' with clientid OpenHab and file store '/var/lib/openhab2/tmp/huset_mqtt'
                                  2018-05-04 22:17:47.349 [WARN ] [rthome.io.transport.mqtt.MqttService] - MqttBroker start failed: Persistence already in use
                                  org.eclipse.smarthome.io.transport.mqtt.MqttException: Persistence already in use
                                          at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection.start(MqttBrokerConnection.java:572) [214:org.eclipse.sm
                                  arthome.io.transport.mqtt:0.10.0.b1]
                                  

                                  However, it is clear that the Eclipse broker connection does not fail completely. Mosquitto logs and mqtt-spy confirm that both transports/binding actually connect to the mosquitto server. One at a time or both at the same time.

                                  Below is the mosquitto log when I restart the OpenHAB MQTT transport, the OpenHAB MQTT binding and last the Eclipse MQTT transport. Clearly the clients disconnect and then reconnects like they should.

                                  1525466428: Client OpenHab_legacy disconnected.
                                  1525466428: New connection from 192.168.1.5 on port 1883.
                                  1525466428: New client connected from 192.168.1.5 as OpenHab_legacy (c1, k60, u'openhab-legacy').
                                  1525466645: Saving in-memory database to /var/lib/mosquitto/mosquitto.db.
                                  1525467392: Client OpenHab_legacy disconnected.
                                  1525467393: New connection from 192.168.1.5 on port 1883.
                                  1525467393: New client connected from 192.168.1.5 as OpenHab_legacy (c1, k60, u'openhab-legacy').
                                  1525467446: Client OpenHab disconnected.
                                  1525467446: New connection from 192.168.1.5 on port 1883.
                                  1525467446: New client connected from 192.168.1.5 as OpenHab (c1, k60, u'openhab').
                                  

                                  To test the two mqtt broker connections I have set up test switches in an .items file:

                                  Switch MQTT_TEST_legacy "Testing..." { mqtt="<[huset_MQTT_legacy:testing/mqtt/topic:state:default], >[huset_MQTT_legacy:testing/mqtt/back-topic:command:*:default]" }
                                  Switch MQTT_TEST_new "Testing..." { mqtt="<[huset_MQTT:testing/mqtt/topic:state:default], >[huset_MQTT:testing/mqtt/back-topic:command:*:default]" }
                                  

                                  To test them I manually send the message "ON" to the topic "testing/mqtt/topic". The MQTT_TEST_legacy switch state changes to ON. So the legacy OpenHAB binding works fine.
                                  However, the MQTT_TEST switch that uses the Eclipse mqtt broker/transporrt does not respond at all to my messages.

                                  To summarize, the Eclipse mqtt feature throws a warning but connects to my mosquitto server,and then wont change items with messages I send.

                                  Am I missing a component, or what could possibly be the reason?

                                  It is a basic, fresh install of OpenHAB 2.2 on openhabian. I have cleaned caches and tmp, cleaned up config files in /var/lib/openhab/config and even reinstalled OpenHAB. The Mysensors binding 2.2.0.201710190834 is running.

                                  Now I don't even have a clue on what to check next.
                                  OpenHAB gurus out there - please help me!

                                  fixjunkF 1 Reply Last reply
                                  0
                                  • F fredswed

                                    @fixjunk - I'm having the same problem and it's driving me crazy. I don't mind some troubleshooting but OpenHAB is new territory for me and I just can't find the problem.

                                    I have set up two mqtt broker connections (in two config files) for debugging. For the Eclipse bundle I define the connection "huset_mqtt" with user "openhab". For the legacy OpenHAB binding I define a connection "huset_mqtt_legacy" with user "openhab-legacy. Both connect to the same mosquitto server.

                                    I don't think there is a conflict between the openHAB MQTT Binding and esh-io-transport-mqtt. To test it I stopped the openHAB MQTT binding and transport bundles. The warning is still there even when only the Eclipse SmartHome MQTT Transport Bundle is running.

                                    When all bundles are running, I first stop the legacy broker and the log looks as expected. But when I restart the Eclipse bundle the warning "Persistence already in use" is thrown (below):

                                    2018-05-04 22:10:09.739 [INFO ] [penhab.io.transport.mqtt.MqttService] - Stopping broker connection 'huset_mqtt_legacy'
                                    2018-05-04 22:17:47.270 [INFO ] [.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'huset_mqtt' to 'tcp://
                                    192.168.1.5:1883' with clientid OpenHab and file store '/var/lib/openhab2/tmp/huset_mqtt'
                                    2018-05-04 22:17:47.349 [WARN ] [rthome.io.transport.mqtt.MqttService] - MqttBroker start failed: Persistence already in use
                                    org.eclipse.smarthome.io.transport.mqtt.MqttException: Persistence already in use
                                            at org.eclipse.smarthome.io.transport.mqtt.MqttBrokerConnection.start(MqttBrokerConnection.java:572) [214:org.eclipse.sm
                                    arthome.io.transport.mqtt:0.10.0.b1]
                                    

                                    However, it is clear that the Eclipse broker connection does not fail completely. Mosquitto logs and mqtt-spy confirm that both transports/binding actually connect to the mosquitto server. One at a time or both at the same time.

                                    Below is the mosquitto log when I restart the OpenHAB MQTT transport, the OpenHAB MQTT binding and last the Eclipse MQTT transport. Clearly the clients disconnect and then reconnects like they should.

                                    1525466428: Client OpenHab_legacy disconnected.
                                    1525466428: New connection from 192.168.1.5 on port 1883.
                                    1525466428: New client connected from 192.168.1.5 as OpenHab_legacy (c1, k60, u'openhab-legacy').
                                    1525466645: Saving in-memory database to /var/lib/mosquitto/mosquitto.db.
                                    1525467392: Client OpenHab_legacy disconnected.
                                    1525467393: New connection from 192.168.1.5 on port 1883.
                                    1525467393: New client connected from 192.168.1.5 as OpenHab_legacy (c1, k60, u'openhab-legacy').
                                    1525467446: Client OpenHab disconnected.
                                    1525467446: New connection from 192.168.1.5 on port 1883.
                                    1525467446: New client connected from 192.168.1.5 as OpenHab (c1, k60, u'openhab').
                                    

                                    To test the two mqtt broker connections I have set up test switches in an .items file:

                                    Switch MQTT_TEST_legacy "Testing..." { mqtt="<[huset_MQTT_legacy:testing/mqtt/topic:state:default], >[huset_MQTT_legacy:testing/mqtt/back-topic:command:*:default]" }
                                    Switch MQTT_TEST_new "Testing..." { mqtt="<[huset_MQTT:testing/mqtt/topic:state:default], >[huset_MQTT:testing/mqtt/back-topic:command:*:default]" }
                                    

                                    To test them I manually send the message "ON" to the topic "testing/mqtt/topic". The MQTT_TEST_legacy switch state changes to ON. So the legacy OpenHAB binding works fine.
                                    However, the MQTT_TEST switch that uses the Eclipse mqtt broker/transporrt does not respond at all to my messages.

                                    To summarize, the Eclipse mqtt feature throws a warning but connects to my mosquitto server,and then wont change items with messages I send.

                                    Am I missing a component, or what could possibly be the reason?

                                    It is a basic, fresh install of OpenHAB 2.2 on openhabian. I have cleaned caches and tmp, cleaned up config files in /var/lib/openhab/config and even reinstalled OpenHAB. The Mysensors binding 2.2.0.201710190834 is running.

                                    Now I don't even have a clue on what to check next.
                                    OpenHAB gurus out there - please help me!

                                    fixjunkF Offline
                                    fixjunkF Offline
                                    fixjunk
                                    wrote on last edited by
                                    #114

                                    @fredswed Honestly, I've moved on to playing with HASS... but I can still share my thoughts.

                                    So there is no practical reason you need to run the MySensors MQTT stuff as OpenHAB can handle all the MQTT messages already without MySensors AddOn--it's just not very convenient to decipher a bunch of five level deep numeric topics that aren't intuitive. I guess I thought I was trying to be clever by doing it all in MQTT style instead of using something else (like Serial).

                                    So what I did when I was switching over to HASS was rebuild the gateway as a serial gateway and avoid the whole conflict. I don't technically need MQTT visibility of the sensors and HASS now autodiscovers the serial sensor gateway sensors just fine. I suspect OpenHAB would do the same.

                                    It's pretty trivial to rebuild the mysgw using serial as long as you're able to make your own /dev/ttyMySensorsGateway accessible by the openhab system (it might require changing owners or groups or both). For whatever reason, mine was root/root and not dialout or accessible to the automation software username. I just changed everything to the tty group and it all worked fine.

                                    The end result of using the serial gateway should be identical within OpenHAB--in theory it should auto discover your sensors and populate them in PaperUI. But I haven't tried or tested it.

                                    F 1 Reply Last reply
                                    1
                                    • fixjunkF fixjunk

                                      @fredswed Honestly, I've moved on to playing with HASS... but I can still share my thoughts.

                                      So there is no practical reason you need to run the MySensors MQTT stuff as OpenHAB can handle all the MQTT messages already without MySensors AddOn--it's just not very convenient to decipher a bunch of five level deep numeric topics that aren't intuitive. I guess I thought I was trying to be clever by doing it all in MQTT style instead of using something else (like Serial).

                                      So what I did when I was switching over to HASS was rebuild the gateway as a serial gateway and avoid the whole conflict. I don't technically need MQTT visibility of the sensors and HASS now autodiscovers the serial sensor gateway sensors just fine. I suspect OpenHAB would do the same.

                                      It's pretty trivial to rebuild the mysgw using serial as long as you're able to make your own /dev/ttyMySensorsGateway accessible by the openhab system (it might require changing owners or groups or both). For whatever reason, mine was root/root and not dialout or accessible to the automation software username. I just changed everything to the tty group and it all worked fine.

                                      The end result of using the serial gateway should be identical within OpenHAB--in theory it should auto discover your sensors and populate them in PaperUI. But I haven't tried or tested it.

                                      F Offline
                                      F Offline
                                      fredswed
                                      wrote on last edited by
                                      #115

                                      @fixjunk Thanks for responding - I have tried Domoticz and considered HASS but OpenHAB is the only controller that also supports my AllPlay speakers.

                                      Anyway, I gave up and reinstalled Openhabian. It breaks my heart to admit but it also gave me a chance to fix a few bugs and try some new things on the server.

                                      Net result: On a clean Openhabian 2.2 install with only the Eclipse MQTT bundle installed, the "Persistence in use" warning is still triggered. (I won't look further into it, it's only a warning.) The MySensors 2.3 binding connects as expected to the MQTT gateway and everything seems to work again.

                                      Well, not really. I managed to break both of my sensors while experimenting. So I guess I'm back to soldering tomorrow. :-)

                                      1 Reply Last reply
                                      0
                                      • J Offline
                                        J Offline
                                        Jet
                                        wrote on last edited by
                                        #116

                                        Re: Persistence in use error message, by accident (typo in specifying broker.clientId), I've figured out the cause:

                                        [11:12:04] openhabian@openHABianPi:~$ netstat -a | grep 1883
                                        tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN
                                        tcp6 0 0 [::]:1883 [::]:* LISTEN
                                        feature:install esh-io-transport-mqtt
                                        [11:12:20] openhabian@openHABianPi:~$ netstat -a | grep 1883
                                        tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN
                                        tcp 0 0 localhost:1883 localhost:53256 ESTABLISHED
                                        tcp 0 0 localhost:1883 localhost:53254 ESTABLISHED
                                        tcp6 0 0 [::]:1883 [::]:* LISTEN
                                        tcp6 0 0 localhost:53256 localhost:1883 ESTABLISHED
                                        tcp6 0 0 localhost:53254 localhost:1883 ESTABLISHED

                                        esh-io-transport-mqtt opens 2 connections to mosquito (not sure why), but as each connection needs a unique clientId, if you've specified a clientId, it will fail one of the connections with that error message.

                                        The solution is to remove your <broker>.clientId definition in the config file (also remember to remove the backup file, otherwise it won't have any effect). When you do this a unique clientId is generated on every connection (which you can see in the mosquito log), and the error message goes away.

                                        See these log files (Note without clientId, 2 connections from localhost are made and are pinging):
                                        with clientId specified:
                                        1525969562: Opening ipv4 listen socket on port 1883.
                                        1525969562: Opening ipv6 listen socket on port 1883.
                                        1525970154: New connection from 127.0.0.1 on port 1883.
                                        1525970154: New client connected from 127.0.0.1 as openhab2 (c1, k60, u'openhabian').
                                        1525970154: Sending CONNACK to openhab2 (0, 0)
                                        1525970214: Received PINGREQ from openhab2
                                        1525970214: Sending PINGRESP to openhab2
                                        1525970274: Received PINGREQ from openhab2
                                        1525970274: Sending PINGRESP to openhab2
                                        1525970334: Received PINGREQ from openhab2

                                        without clientId Specified:
                                        1525971402: Opening ipv4 listen socket on port 1883.
                                        1525971402: Opening ipv6 listen socket on port 1883.
                                        1525971428: New connection from 127.0.0.1 on port 1883.
                                        1525971428: New connection from 127.0.0.1 on port 1883.
                                        1525971428: New client connected from 127.0.0.1 as paho31354324154 (c1, k60, u'openhabian').
                                        1525971428: Sending CONNACK to paho31354324154 (0, 0)
                                        1525971428: New client connected from 127.0.0.1 as paho31177339570 (c1, k60, u'openhabian').
                                        1525971428: Sending CONNACK to paho31177339570 (0, 0)
                                        1525971496: Received PINGREQ from paho31177339570
                                        1525971496: Sending PINGRESP to paho31177339570
                                        1525971496: Received PINGREQ from paho31354324154
                                        1525971496: Sending PINGRESP to paho31354324154
                                        1525971556: Received PINGREQ from paho31177339570
                                        1525971556: Sending PINGRESP to paho31177339570
                                        1525971556: Received PINGREQ from paho31354324154

                                        and with debugging enabled on esh-io-transport-mqtt (when running feature:install esh-io-transport-mqtt) - again 2 connections:
                                        11:25:46.778 [INFO ] [o.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://localhost:1883' with clientid paho1741848008350 and file store '/var/lib/openhab2/tmp/mosquitto'
                                        11:25:46.815 [INFO ] [o.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://localhost:1883' with clientid paho1741975903334 and file store '/var/lib/openhab2/tmp/mosquitto'

                                        I'm digging into the code for esh-io-transport-mqtt to see if I can find the root cause, but this openhab stuff is a whole load of bloatware :-)

                                        fixjunkF 1 Reply Last reply
                                        1
                                        • J Jet

                                          Re: Persistence in use error message, by accident (typo in specifying broker.clientId), I've figured out the cause:

                                          [11:12:04] openhabian@openHABianPi:~$ netstat -a | grep 1883
                                          tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN
                                          tcp6 0 0 [::]:1883 [::]:* LISTEN
                                          feature:install esh-io-transport-mqtt
                                          [11:12:20] openhabian@openHABianPi:~$ netstat -a | grep 1883
                                          tcp 0 0 0.0.0.0:1883 0.0.0.0:* LISTEN
                                          tcp 0 0 localhost:1883 localhost:53256 ESTABLISHED
                                          tcp 0 0 localhost:1883 localhost:53254 ESTABLISHED
                                          tcp6 0 0 [::]:1883 [::]:* LISTEN
                                          tcp6 0 0 localhost:53256 localhost:1883 ESTABLISHED
                                          tcp6 0 0 localhost:53254 localhost:1883 ESTABLISHED

                                          esh-io-transport-mqtt opens 2 connections to mosquito (not sure why), but as each connection needs a unique clientId, if you've specified a clientId, it will fail one of the connections with that error message.

                                          The solution is to remove your <broker>.clientId definition in the config file (also remember to remove the backup file, otherwise it won't have any effect). When you do this a unique clientId is generated on every connection (which you can see in the mosquito log), and the error message goes away.

                                          See these log files (Note without clientId, 2 connections from localhost are made and are pinging):
                                          with clientId specified:
                                          1525969562: Opening ipv4 listen socket on port 1883.
                                          1525969562: Opening ipv6 listen socket on port 1883.
                                          1525970154: New connection from 127.0.0.1 on port 1883.
                                          1525970154: New client connected from 127.0.0.1 as openhab2 (c1, k60, u'openhabian').
                                          1525970154: Sending CONNACK to openhab2 (0, 0)
                                          1525970214: Received PINGREQ from openhab2
                                          1525970214: Sending PINGRESP to openhab2
                                          1525970274: Received PINGREQ from openhab2
                                          1525970274: Sending PINGRESP to openhab2
                                          1525970334: Received PINGREQ from openhab2

                                          without clientId Specified:
                                          1525971402: Opening ipv4 listen socket on port 1883.
                                          1525971402: Opening ipv6 listen socket on port 1883.
                                          1525971428: New connection from 127.0.0.1 on port 1883.
                                          1525971428: New connection from 127.0.0.1 on port 1883.
                                          1525971428: New client connected from 127.0.0.1 as paho31354324154 (c1, k60, u'openhabian').
                                          1525971428: Sending CONNACK to paho31354324154 (0, 0)
                                          1525971428: New client connected from 127.0.0.1 as paho31177339570 (c1, k60, u'openhabian').
                                          1525971428: Sending CONNACK to paho31177339570 (0, 0)
                                          1525971496: Received PINGREQ from paho31177339570
                                          1525971496: Sending PINGRESP to paho31177339570
                                          1525971496: Received PINGREQ from paho31354324154
                                          1525971496: Sending PINGRESP to paho31354324154
                                          1525971556: Received PINGREQ from paho31177339570
                                          1525971556: Sending PINGRESP to paho31177339570
                                          1525971556: Received PINGREQ from paho31354324154

                                          and with debugging enabled on esh-io-transport-mqtt (when running feature:install esh-io-transport-mqtt) - again 2 connections:
                                          11:25:46.778 [INFO ] [o.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://localhost:1883' with clientid paho1741848008350 and file store '/var/lib/openhab2/tmp/mosquitto'
                                          11:25:46.815 [INFO ] [o.transport.mqtt.MqttBrokerConnection] - Starting MQTT broker connection 'mosquitto' to 'tcp://localhost:1883' with clientid paho1741975903334 and file store '/var/lib/openhab2/tmp/mosquitto'

                                          I'm digging into the code for esh-io-transport-mqtt to see if I can find the root cause, but this openhab stuff is a whole load of bloatware :-)

                                          fixjunkF Offline
                                          fixjunkF Offline
                                          fixjunk
                                          wrote on last edited by
                                          #117

                                          @jet who knew! ultimately clientid isn't really a critical piece of info to provide, but not knowing that providing it causes the error is unfortunate.

                                          would this apply to future mqtt bindings using esh-io-transport-mqtt even besides mysensors, essentially rendering the broker.clientid setting useless?

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          10

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular