Broadlink binding for RMx, A1, SPx and MP. Any interest?

Version 2.5 is supported. See this post

Thanks @themillhousegroup, you are the best! Hope to have this binding as standard, mean on openhab marketplace as it’s working propely!

Dear Colleagues,

It’s not working for me even after reboot.

BroadlinkDiscoveryService - Beginning Broadlink device scan…

2020-01-22 22:42:25.157 [WARN ] [internal.discovery.DiscoveryProtocol] - Beginning async Broadlink device scan; will wait 10000ms for responses

2020-01-22 22:42:25.196 [WARN ] [internal.discovery.DiscoveryProtocol] - Broadlink device scan waiting for 10000 ms to complete …

2020-01-22 22:42:25.254 [INFO ] [.discovery.BroadlinkDiscoveryService] - Data received during Broadlink device discovery: from 10.1.1.27:80[34:ea:34:d0:a8:8c]

2020-01-22 22:42:25.260 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing ‘broadlink:rm2:34-ea-34-d0-a8-8c’ to inbox.

==> /var/log/openhab2/events.log <==

2020-01-22 22:42:25.262 [home.event.InboxAddedEvent] - Discovery Result with UID ‘broadlink:rm2:34-ea-34-d0-a8-8c’ has been added.

==> /var/log/openhab2/openhab.log <==

2020-01-22 22:42:29.064 [WARN ] [org.eclipse.jetty.server.HttpChannel] - /rest/inbox/broadlink:rm2:34-ea-34-d0-a8-8c/approve

javax.servlet.ServletException: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:88) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.Server.handle(Server.java:494) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:374) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:268) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:367) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:782) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:918) [bundleFile:9.4.20.v20190813]

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

Caused by: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:489) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:278) ~[?:?]

at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:260) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:509) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:334) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:315) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:297) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:267) ~[?:?]

at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) ~[?:?]

at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

Caused by: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.openhab.binding.broadlink.internal.BroadlinkHandlerFactory.supportsThingType(BroadlinkHandlerFactory.java:56) ~[?:?]

at org.eclipse.smarthome.core.thing.binding.ThingFactory.createThing(ThingFactory.java:100) ~[?:?]

at org.eclipse.smarthome.config.discovery.internal.PersistentInbox.approve(PersistentInbox.java:191) ~[?:?]

at org.eclipse.smarthome.io.rest.core.internal.discovery.InboxResource.approve(InboxResource.java:104) ~[?:?]

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

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

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

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

at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) ~[?:?]

at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:315) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:297) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:267) ~[?:?]

at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) ~[?:?]

at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

2020-01-22 22:42:35.198 [WARN ] [internal.discovery.DiscoveryProtocol] - Device scan: wait complete …

2020-01-22 22:42:35.200 [WARN ] [internal.discovery.DiscoveryProtocol] - Ended Broadlink device scan…

2020-01-22 22:42:35.202 [INFO ] [link.internal.socket.BroadlinkSocket] - Socket closed

2020-01-22 22:42:35.204 [INFO ] [.discovery.BroadlinkDiscoveryService] - Discovery complete. Found 1 Broadlink devices

2020-01-22 22:42:35.204 [INFO ] [link.internal.socket.BroadlinkSocket] - Receiver thread ended

2020-01-22 22:42:39.840 [WARN ] [.discovery.BroadlinkDiscoveryService] - BroadlinkDiscoveryService - Beginning Broadlink device scan…

2020-01-22 22:42:39.843 [WARN ] [internal.discovery.DiscoveryProtocol] - Beginning async Broadlink device scan; will wait 10000ms for responses

2020-01-22 22:42:39.866 [WARN ] [internal.discovery.DiscoveryProtocol] - Broadlink device scan waiting for 10000 ms to complete …

2020-01-22 22:42:39.894 [INFO ] [.discovery.BroadlinkDiscoveryService] - Data received during Broadlink device discovery: from 10.1.1.27:80[34:ea:34:d0:a8:8c]

2020-01-22 22:42:49.869 [WARN ] [internal.discovery.DiscoveryProtocol] - Device scan: wait complete …

2020-01-22 22:42:49.871 [WARN ] [internal.discovery.DiscoveryProtocol] - Ended Broadlink device scan…

2020-01-22 22:42:49.873 [INFO ] [link.internal.socket.BroadlinkSocket] - Socket closed

2020-01-22 22:42:49.875 [INFO ] [link.internal.socket.BroadlinkSocket] - Receiver thread ended

2020-01-22 22:42:49.875 [INFO ] [.discovery.BroadlinkDiscoveryService] - Discovery complete. Found 1 Broadlink devices

2020-01-22 22:42:56.584 [WARN ] [org.eclipse.jetty.server.HttpChannel] - /rest/inbox/broadlink:rm2:34-ea-34-d0-a8-8c/approve

javax.servlet.ServletException: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:88) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.Server.handle(Server.java:494) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:374) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:268) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:367) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:782) [bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:918) [bundleFile:9.4.20.v20190813]

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

Caused by: javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:489) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:278) ~[?:?]

at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:260) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:509) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:334) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:315) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:297) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:267) ~[?:?]

at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) ~[?:?]

at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

Caused by: java.lang.NoSuchFieldError: SUPPORTED_THING_TYPES_UIDS

at org.openhab.binding.broadlink.internal.BroadlinkHandlerFactory.supportsThingType(BroadlinkHandlerFactory.java:56) ~[?:?]

at org.eclipse.smarthome.core.thing.binding.ThingFactory.createThing(ThingFactory.java:100) ~[?:?]

at org.eclipse.smarthome.config.discovery.internal.PersistentInbox.approve(PersistentInbox.java:191) ~[?:?]

at org.eclipse.smarthome.io.rest.core.internal.discovery.InboxResource.approve(InboxResource.java:104) ~[?:?]

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

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

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

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

at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) ~[?:?]

at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160) ~[?:?]

at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) ~[?:?]

at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) ~[?:?]

at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:315) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:297) ~[?:?]

at org.glassfish.jersey.internal.Errors.process(Errors.java:267) ~[?:?]

at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[?:?]

at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) ~[?:?]

at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) ~[?:?]

at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) ~[?:?]

at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) ~[?:?]

at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) ~[?:?]

at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:852) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:544) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:536) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1581) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1307) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:293) ~[bundleFile:?]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:482) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1549) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1204) ~[bundleFile:9.4.20.v20190813]

at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[bundleFile:9.4.20.v20190813]

at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) ~[bundleFile:?]

... 15 more

try with textual definition

create a file called for example : broadlink.things under the thing folder

Thing broadlink:rm2:44-ea-34-c7-c9-15 "txtBroadlink RM2-Salon [192.168.1.101]-RM_1"					[ ipAddress="192.168.1.101", port=80, staticIp=true, mac="34:ea:34:c7:c9:15", authorizationKey="097628343fe99e23765c1513accf8b02", iv="562e17996d093d28ddb3ba695a2e6f58", mapFilename="RM_1_c.map", pollingInterval=120 , retries=3, ignoreFailedUpdates=true]

Thing broadlink:rm3:78-0f-78-19-fe-31 	"txtBroadlink RM3-Nat[192.168.1.112]-mini_4"				[ ipAddress="192.168.1.113", port=80, staticIp=true, mac="78:0f:77:19:fe:31", authorizationKey="097628343fe99e23765c1513accf8b02", iv="562e17996d093d28ddb3ba695a2e6f58", mapFilename="mini_4_c.map", pollingInterval=120, retries=3, ignoreFailedUpdates=false]
1 Like

there;s an issue with the temperature

Hey there!
I had this failure: >>[ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method ‘ThingHandler.handleCommand()’<<.
Followed the instructions somewhere above in this topic:
Removed all old Broadlink bindings 2.4 with karafe console (bundle:uninstall xy).
Now installed version 2.5 beta on OH2.5.0 and it works perfectly!
Thank you very much!
Have a nice day!

In case it helps…

I have 2 RM Mini, the first one, bought last year from bangood, is integrated into OpenHAB using RM Bridge Code Learning.

This week I bought the second one, and it doesn’t work properly as a remote controller, but I can’t get the codes to use them in OpenHAB.

I have tried with RM Bridge Code Learning (error in Mac address, it does not recognize it as RM2), I have tried with Broadlink Manager (I can not connect to the device …), I am currently testing with HomeAssistant, but I do not get it either … .

From what I have seen (on the bottom of the device), there are 2 different models:

Model: RM mini 3 - FCC ID: 2ACDZRMMINI (firmware v57) - Integrated ok in OpenHAB.

Model: RM mini 3 - FCC ID: 2ACDZ-RMMINI3-RM (firmware v44057) - I can’t get codes to integrate in OpenHAB

From what I have seen in http://fccid.io the chipset of each one of them is different.

I leave the links in case it can help developers:

RMMINI: https://fccid.io/2ACDZRMMINI/Internal-Photos/Internal-Photos-3433519

RMMINI3-RM: https://fccid.io/2ACDZ-RMMINI3-RM/Internal-Photos/Internal-Photos-3979173

1 Like

Hey guys, i got the RM Mini 3 and followed the instructions here to add it to OpenHAB. I found the Auth key and the IV and added it successfully. I guess I’m just struggling now with getting the actual IR codes for my devices. I don’t have an Android phone, is there another way to retrieve these codes?

Did you try this in the instructions?

Step 6: For RMx devices only. In this step, we will find IR/RF code to insert into the broadlink.map file. Go to http://rm-bridge.fun2code.de/rm_manage/code_learning.html337 to learn the various IR/RF codes.

My bad, I thought that site required an android device. Maybe I misread it.

I think I’m having the same issue as stated above. I got some IR codes off of GlobalCache.com for my Samsung TV and they weren’t working.

I checked the firmware on my RM Mini 3 and it matches the below.

I will post my config files below when I get home tonight to make sure im not doing anything wrong.

Is there a problem integrating this model of RM Mini 3 with OpenHAB?

Looks like an Android phone is required. are there any other ways of getting codes?

Also not sure if im experiencing the same issue as above. Below are my configs. Map Transformation is installed.

home.items:
    //Broadlink RM Mini 3
    String   BroadlinkRM31921681189Command   "Command"   {channel="broadlink:rm3:c8-f7-42-40-85-02:command"}
    String Fan_On_Proxy {channel="broadlink:rm3:c8-f7-42-40-85-02:command"}
    String TV_On_Proxy1 {channel="broadlink:rm3:c8-f7-42-40-85-02:command"}
    String TV_On_Proxy2 {channel="broadlink:rm3:c8-f7-42-40-85-02:command"}

broadlink.map:
    Fan_On=0000 006e 0000 000c 0030 0010 002f 0010 0010 002f 0030 0010 002f 0010 00...
    TV_On1=0000 006D 0000 0022 00ac 00ac 0016 0040 0016 0040 0016 0040 0016 0015 00...
    TV_On2=0000006D0000002200ac00ac001600400016004000160040001600150016001500160015...

rule "TV1"
when
    Item TV_On_Proxy1 changed from Off to On
then
    TV_On_Proxy1.sendCommand("TV_On1")
end

rule "TV2"
when
    Item TV_On_Proxy2 changed from Off to On
then
    TV_On_Proxy2.sendCommand("TV_On2")
end

rule "TV1"
when
    Item Fan_On_Proxy changed from Off to On
then
    Fan_On_Proxy.sendCommand("Fan_On")
end

Yes, ther is another way: You can use the Broadlink Manager: https://sourceforge.net/projects/broadlink-manager/files/Windows%207/
It connects via network to the RMx and you can learn the codes with it.

This way has not worked for me with the model RM mini 3 - FCC ID: 2ACDZ-RMMINI3-RM (firmware v44057) . It does not recognize the device.
Has anyone been able to read the codes with this model?

Yes, I have a RM mini 3 and it worked, but it takes some time until the device is found.

Your firmware is v44057?

I have no idea, I only see:

Looking for devices...
Found device : RM Mini
Connected...
Device ready to use.
----------------------------------
IP Address	: 192.168.178.33
Port		: 80
MAC Address	: 34:EA:34:xx:xx:xx
----------------------------------

How can I read out the firmware version?

You can download the IHC app and check there for the FW version or you can look on the bottom of the unit and look at the FCC ID. I believe units that have this “FCC ID: 2ACDZ-RMMINI3-RM” have the v44057 firmware and are having issues integrating with openhab.

Does anyone here have one of the below units and have it successfully integrated with OpenHab?
FCC ID: 2ACDZ-RMMINI3-RM (firmware v44057)

Mine has no FCC ID printed on it :smiley: and the IHC app is a beast, wants to have several access rights and needs an account… I deleted it. Sorry.

it doesn’t have an ID on the bottom?