cyrilcc / org.openhab.binding.rflink

RFLink binding for OpenHAB 2.0
23 stars 35 forks source link

OpenHab3 support? #56

Open philicibine opened 3 years ago

philicibine commented 3 years ago

Trying to load this addon into openhab 3 and im getting the following dependency errors.

Unresolved requirement: Import-Package: org.eclipse.jdt.annotation; resolution:="optional" Unresolved requirement: Import-Package: org.eclipse.smarthome.config.core

Can we get a new build of this please? Half of my devices have stopped working!

Much appreciated.

lampy2 commented 3 years ago

You cannot just put in the old jar in OH3, naming changed so that won't work. :( A new version of the binding would be required

Pshatsillo commented 3 years ago

You can build new version now. Binding will work on 3.0 version.

philicibine commented 3 years ago

Thanks for updating it. Have tried building and am getting the following error.

FATAL] Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.rflink:3.1.0-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:3.1.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 7, column 11 @ [ERROR] The build could not read 1 project -> [Help 1] [ERROR] [ERROR] The project org.openhab.addons.bundles:org.openhab.binding.rflink:3.1.0-SNAPSHOT (/home/phil/org.openhab.binding.rflink/pom.xml) has 1 error [ERROR] Non-resolvable parent POM for org.openhab.addons.bundles:org.openhab.binding.rflink:3.1.0-SNAPSHOT: Could not find artifact org.openhab.addons.bundles:org.openhab.addons.reactor.bundles:pom:3.1.0-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 7, column 11 -> [Help 2]

Pshatsillo commented 3 years ago

It's strange, but first you need to clone openhab-addons git clone https://github.com/openhab/openhab-addons.git Then move org.openhab.binding.rflink to bundlefolder. Afrter that you can mvn package in org.openhab.binding.rflink directory successfully

philicibine commented 3 years ago

Thanks. I got it to build. Now in the logs you can see it receives the messages.. but there is an error in the handler.

22:00:03.431 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;Maclean;0000471a;01;OFF;, deviceName: Maclean, deviceChannel: 471a, primaryId: 01 22:00:03.457 [ERROR] [rnal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.handleCommand()' on 'org.openhab.binding.rflink.handler.RfLinkHandler@1f08bc7': null java.lang.NullPointerException: null at org.openhab.binding.rflink.handler.RfLinkBridgeHandler$TransmitQueue.send(RfLinkBridgeHandler.java:86) ~[?:?] at org.openhab.binding.rflink.handler.RfLinkBridgeHandler$TransmitQueue.enqueue(RfLinkBridgeHandler.java:75) ~[?:?] at org.openhab.binding.rflink.handler.RfLinkBridgeHandler.sendMessage(RfLinkBridgeHandler.java:202) ~[?:?] at org.openhab.binding.rflink.handler.RfLinkHandler.handleCommand(RfLinkHandler.java:80) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:154) [bundleFile:?] at org.openhab.core.internal.common.InvocationHandlerSync.invoke(InvocationHandlerSync.java:59) [bundleFile:?] at com.sun.proxy.$Proxy505.handleCommand(Unknown Source) [?:?] at org.openhab.core.thing.internal.profiles.ProfileCallbackImpl.handleCommand(ProfileCallbackImpl.java:80) [bundleFile:?] at org.openhab.core.thing.internal.profiles.SystemDefaultProfile.onCommandFromItem(SystemDefaultProfile.java:48) [bundleFile:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?] at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:154) [bundleFile:?] at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?] at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?] at java.lang.Thread.run(Thread.java:834) [?:?]

Pshatsillo commented 3 years ago

Well, i don'have any problems with sending.... 2021-01-24 11:56:21.450 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Initializing thing rflink:switch:8f9ee8afb8, deviceId=MACLEAN-471A-01 2021-01-24 11:56:21.451 [DEBUG] [binding.rflink.handler.RfLinkHandler] - initializeBridge ONLINE for thing rflink:switch:8f9ee8afb8 2021-01-24 11:56:47.753 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Received channel: rflink:switch:8f9ee8afb8:command, command: ON 2021-01-24 11:56:47.754 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: contact, state: OPEN 2021-01-24 11:56:47.754 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: command, state: ON 2021-01-24 11:56:47.755 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-01-24 11:56:47.755 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-01-24 11:56:47.756 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;MACLEAN;0000471A;01;ON;, deviceName: MACLEAN, deviceChannel: 471A, primaryId: 01 2021-01-24 11:56:47.756 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 0ms, len=27): 31303B4D41434C45414E3B30303030343731413B30313B4F4E3B0A 2021-01-24 11:56:47.757 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-01-24 11:56:47.757 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-01-24 11:56:47.758 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;MACLEAN;0000471A;01;ON;, deviceName: MACLEAN, deviceChannel: 471A, primaryId: 01 2021-01-24 11:56:47.758 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 49ms, len=27): 31303B4D41434C45414E3B30303030343731413B30313B4F4E3B0A 2021-01-24 11:56:47.809 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-01-24 11:56:47.810 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-01-24 11:56:47.810 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;MACLEAN;0000471A;01;ON;, deviceName: MACLEAN, deviceChannel: 471A, primaryId: 01 2021-01-24 11:56:47.811 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 48ms, len=27): 31303B4D41434C45414E3B30303030343731413B30313B4F4E3B0A 2021-01-24 11:56:47.859 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-01-24 11:56:47.860 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-01-24 11:56:47.860 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;MACLEAN;0000471A;01;ON;, deviceName: MACLEAN, deviceChannel: 471A, primaryId: 01 2021-01-24 11:56:47.861 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 48ms, len=27): 31303B4D41434C45414E3B30303030343731413B30313B4F4E3B0A 2021-01-24 11:56:47.910 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-01-24 11:56:47.910 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-01-24 11:56:47.911 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;MACLEAN;0000471A;01;ON;, deviceName: MACLEAN, deviceChannel: 471A, primaryId: 01 2021-01-24 11:56:47.912 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 48ms, len=27): 31303B4D41434C45414E3B30303030343731413B30313B4F4E3B0A 2021-01-24 11:56:57.292 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Received channel: rflink:switch:8f9ee8afb8:command, command: OFF 2021-01-24 11:56:57.293 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: contact, state: CLOSED 2021-01-24 11:56:57.294 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: command, state: OFF

Maybe you forget to select bridge? Please try to create bridge and thigs over UI

philicibine commented 3 years ago

Ok so now i have it receiving.

But it refuses to send. Can you suggest what might be going on here? 12:00:35.841 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 12:00:35.863 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 12:00:35.879 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a2290;10;ON;, deviceName: TriState, deviceChannel: 8a2290, primaryId: 10 12:00:35.891 [DEBUG] [flink.connector.RfLinkSerialConnector] - Send data (after 0ms, len=28): 31303B54726953746174653B30303861323239303B31303B4F4E3B0A 12:00:35.902 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 12:00:35.910 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 12:00:35.916 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a2290;10;ON;, deviceName: TriState, deviceChannel: 8a2290, primaryId: 10 12:00:35.925 [DEBUG] [flink.connector.RfLinkSerialConnector] - Send data (after 48ms, len=28): 31303B54726953746174653B30303861323239303B31303B4F4E3B0A 12:00:35.928 [DEBUG] [flink.connector.RfLinkSerialConnector] - <<< 20;2F;CMD UNKNOWN; 12:00:35.941 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;2F;CMD UNKNOWN; 12:00:35.987 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 12:00:35.993 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 12:00:36.004 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a2290;10;ON;, deviceName: TriState, deviceChannel: 8a2290, primaryId: 10 12:00:36.011 [DEBUG] [flink.connector.RfLinkSerialConnector] - Send data (after 45ms, len=28): 31303B54726953746174653B30303861323239303B31303B4F4E3B0A 12:00:36.067 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 12:00:36.075 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 12:00:36.082 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a2290;10;ON;, deviceName: TriState, deviceChannel: 8a2290, primaryId: 10 12:00:36.095 [DEBUG] [flink.connector.RfLinkSerialConnector] - Send data (after 41ms, len=28): 31303B54726953746174653B30303861323239303B31303B4F4E3B0A 12:00:36.143 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 12:00:36.151 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 12:00:36.159 [DEBUG] [ing.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a2290;10;ON;, deviceName: TriState, deviceChannel: 8a2290, primaryId: 10 12:00:36.168 [DEBUG] [flink.connector.RfLinkSerialConnector] - Send data (after 45ms, len=28): 31303B54726953746174653B30303861323239303B31303B4F4E3B0A 12:00:36.460 [DEBUG] [flink.connector.RfLinkSerialConnector] - <<< 20;30;OK; 12:00:36.466 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;30;OK; 12:00:36.882 [DEBUG] [flink.connector.RfLinkSerialConnector] - <<< 20;31;OK; 12:00:36.891 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;31;OK; 12:00:37.304 [DEBUG] [flink.connector.RfLinkSerialConnector] - <<< 20;32;OK; 12:00:37.311 [DEBUG] [ng.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;32;OK;

philicibine commented 3 years ago

upon further investigation it appears to send, but it is not working with some of my devices. Even after deactivating them in the things file to add them via ui

Pshatsillo commented 3 years ago

Unfortunately, i don't have transmitter, only receiver. So i can't check it, sorry... Maybe someone else can try help you...

PartyMarty74 commented 3 years ago

Can you share your build? I have setup an OH3 environment, however not setup a dev environment. (might be next step)

Pshatsillo commented 3 years ago

https://github.com/Pshatsillo/org.openhab.binding.rflink/releases/tag/3.1.0

philicibine commented 3 years ago

Hi, after more investigation it appears receiving isnt quite working properly either.

This is from a temp sensor and happens every time openhab receives a message.

[ERROR] [ng.rflink.handler.RfLinkBridgeHandler] - An exception occurred while calling the DeviceStatusListener java.lang.IllegalArgumentException: java.util.GregorianCalendar[time=1611644417454,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Europe/London",offset=0,dstSavings=3600000,useDaylight=true,transitions=242,lastRule=java.util.SimpleTimeZone[id=Europe/London,offset=0,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=1,YEAR=2021,MONTH=0,WEEK_OF_YEAR=4,WEEK_OF_MONTH=4,DAY_OF_MONTH=26,DAY_OF_YEAR=26,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=0,HOUR=7,HOUR_OF_DAY=7,MINUTE=0,SECOND=17,MILLISECOND=454,ZONE_OFFSET=0,DST_OFFSET=0] is not in a valid format. at org.openhab.core.library.types.DateTimeType.<init>(DateTimeType.java:112) ~[bundleFile:?] at org.openhab.binding.rflink.messages.RfLinkOregonTempHygroMessage.getStates(RfLinkOregonTempHygroMessage.java:167) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkHandler.updateThingStates(RfLinkHandler.java:170) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkHandler.onDeviceMessageReceived(RfLinkHandler.java:159) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkBridgeHandler$MessageListener.packetReceived(RfLinkBridgeHandler.java:220) [bundleFile:?] at org.openhab.binding.rflink.connector.RfLinkSerialConnector.sendMsgToListeners(RfLinkSerialConnector.java:183) [bundleFile:?] at org.openhab.binding.rflink.connector.RfLinkSerialConnector.serialEvent(RfLinkSerialConnector.java:210) [bundleFile:?] at org.openhab.core.io.transport.serial.rxtx.RxTxSerialPort$1.serialEvent(RxTxSerialPort.java:81) [bundleFile:?] at gnu.io.RXTXPort.sendEvent(RXTXPort.java:834) [bundleFile:5.2.1] at gnu.io.RXTXPort.eventLoop(Native Method) [bundleFile:5.2.1] at gnu.io.RXTXPort$MonitorThread.run(RXTXPort.java:108) [bundleFile:5.2.1] Caused by: java.time.format.DateTimeParseException: Text 'java.util.T00:00:00GregorianCalendar[time=1611644417454,areField...' could not be parsed at index 0 at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2046) ~[?:?] at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948) ~[?:?] at java.time.LocalDateTime.parse(LocalDateTime.java:492) ~[?:?] at org.openhab.core.library.types.DateTimeType.parse(DateTimeType.java:232) ~[bundleFile:?] at org.openhab.core.library.types.DateTimeType.<init>(DateTimeType.java:106) ~[bundleFile:?] ... 10 more

Pshatsillo commented 3 years ago

Can you post message from sensor please?

UPD: Please try: https://github.com/Pshatsillo/org.openhab.binding.rflink/releases/download/3.0.1/org.openhab.binding.rflink-3.0.0-SNAPSHOT.jar

philicibine commented 3 years ago

Hi, apologies for taking so long to get back to you on this.

Openhab does appear to be receiving temp sensor messages now using the above jar. It is still not controlling some of my devices though.

Pshatsillo commented 3 years ago

If you talk about sending messages, i can't help, sorry. Otherwise, please post full debug log, and i will try to help

philicibine commented 3 years ago

So this is what happens when it sends. This device used to work with 2.5 and I have changed nothing. But now it doesnt react although it looks like it is sending.

2021-02-02 18:37:41.881 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Received channel: rflink:switch:usb0:LoungeLight1:command, command: ON 2021-02-02 18:37:41.904 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: contact, state: OPEN 2021-02-02 18:37:41.931 [DEBUG] [binding.rflink.handler.RfLinkHandler] - Update channel: command, state: ON 2021-02-02 18:37:41.953 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:41.978 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.008 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.107 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 0ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.153 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.172 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.189 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.204 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 0ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.223 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.234 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.252 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.265 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 4ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.287 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.305 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.328 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.340 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 0ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.352 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.367 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.379 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.391 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 11ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.419 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.430 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.445 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.457 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 12ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.481 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.497 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.509 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.522 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 9ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.546 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.556 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.569 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.580 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 17ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.604 [DEBUG] [link.connector.RfLinkSerialConnector] - <<< 20;AB;OK; 2021-02-02 18:37:42.607 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.615 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;AB;OK; 2021-02-02 18:37:42.623 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.644 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.654 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 4ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.670 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.682 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.692 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.702 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 19ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.732 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.742 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.751 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.763 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 19ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.794 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.807 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.817 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.829 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 14ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.856 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.867 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.879 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.896 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 10ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.915 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.928 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:42.938 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:42.948 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 17ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:42.985 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - sendMessage: Raw data = unknown, Command = ON, Contact = OPEN 2021-02-02 18:37:42.994 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Transmitting message 'Raw data = unknown, Command = ON, Contact = OPEN' 2021-02-02 18:37:43.008 [DEBUG] [ng.rflink.messages.RfLinkBaseMessage] - Decoded message to be sent: 10;TriState;008a22a1;10;ON;, deviceName: TriState, deviceChannel: 8a22a1, primaryId: 10 2021-02-02 18:37:43.019 [DEBUG] [link.connector.RfLinkSerialConnector] - Send data (after 15ms, len=28): 31303B54726953746174653B30303861323261313B31303B4F4E3B0A 2021-02-02 18:37:43.026 [DEBUG] [link.connector.RfLinkSerialConnector] - <<< 20;AC;OK; 2021-02-02 18:37:43.051 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;AC;OK; 2021-02-02 18:37:43.447 [DEBUG] [link.connector.RfLinkSerialConnector] - <<< 20;AD;OK; 2021-02-02 18:37:43.459 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;AD;OK; 2021-02-02 18:37:43.492 [DEBUG] [link.connector.RfLinkSerialConnector] - <<< 20;AE;CMD UNKNOWN; 2021-02-02 18:37:43.501 [DEBUG] [g.rflink.handler.RfLinkBridgeHandler] - Message not supported, data: 20;AE;CMD UNKNOWN;

I should add.. when pressing the remote for this device openhab matches it to the same device.

lampy2 commented 3 years ago

After some debugging managed to get it working! Used the JAR as posted above, created the bridge via the UI. The create the Item via the UI as well.

Now the trick comes: In OH2 your device ID had as input: deviceName:deviceChannel-primaryId which leads to e.g.: NewKaku;006a9001-3

But with the new JAR your device ID should have as input deviceName-deviceChannel-primaryId which leads to e.g.: NewKaku-006a9001-03

Pay attention to the : becomes - between deviceNameand deviceChannel.

Now I've added one device and will continue with the others.

lampy2 commented 3 years ago

I can confirm both switches and RTS works like a charm. No error in the logs and all commands work. Also receiving works as a charm.

If you need any further testing please let me know. I will continue to use it in the coming days to see if any error pops up.

philicibine commented 3 years ago

Now going to test! Thanks for your work getting this working!

Edit: Not sure how to implement this in my things file:

`Bridge rflink:bridge:usb0 "RFLink Bridge" [ serialPort="/dev/ttyACM0", baudRate=57600, disableDiscovery=false, keepAlivePeriod=0 ] { switch ChristmasTree "Christmas Tree" [deviceId="Unitec-9159-01", repeats=15] switch WindowLight "Window Light" [deviceId="Unitec-9159-02", repeats=15] switch GardenLights "Garden Lights" [deviceId="Unitec-9159-03", repeats=15] switch BedroomTv "Bedroom TV" [deviceId="Unitec-9159-04", repeats=15] switch ChristmasLightALL "Christmas Lights ALL" [deviceId="Unitec-9159-00", repeats=15] switch LoungeLight1 "Lounge Light 1" [deviceId="TriState-8a22a1-10", repeats=15] switch LoungeLight2 "Lounge Light 2" [deviceId="TriState-8a22a4-10", repeats=15] switch LoungeLight3 "Lounge Light 3" [deviceId="TriState-8a2290-10", repeats=15] switch OutsideLights "Outside Lights" [deviceId="Maclean-471a-01", repeats=15]

    switch          PIR1                    "Downstairs PIR"                [deviceId="NewKaku-0000007b-3"]
    switch          PIR2                    "Upstairs PIR"                  [deviceId="NewKaku-0000007b-2"]

    temperature     TempSensor1             "Temp Sensor 1"                 [deviceId="AlectoV4-5028"]
    temperature     TempSensor2             "Temp Sensor 2"                 [deviceId="AlectoV4-5018"]
    humidity        Humidity1               "Humidity Sensor 1"             [deviceId="AlectoV4-5028"]
    humidity        Humidity2               "Humidity Sensor 2"             [deviceId="AlectoV4-5018"]

`

lampy2 commented 3 years ago

Sorry I didn't used the things file to get this working. I did try to create the bridge with a .thing file, but this didn't worked.

For me the worked:

  1. create the bridge with the UI
  2. Create the things also with the UI

Also, I am not sure if Switch does work with the PIR, shouldn't this be Contact? Not sure, but looks like Switch is the command and Contact is receiving.

Pshatsillo commented 3 years ago

I can confirm both switches and RTS works like a charm. No error in the logs and all commands work. Also receiving works as a charm.

If you need any further testing please let me know. I will continue to use it in the coming days to see if any error pops up.

Thank you! If someone find bugs, please post it here!

lampy2 commented 3 years ago

Still going strong :) A question though about the repeat option when configuring the individual Things, does this really work? I never used it with OH2, but now with the new setup thought let's try it. It looks it does send multiple times the signal, but when sending different commands some switches fail to respond. Is the some kind of queue function in the binding?

rgabo74 commented 3 years ago

I had an issue installing the 3.1.0 JAR. Got the following error

Error starting bundle 237: Could not resolve module: org.openhab.binding.rflink [237] Unresolved requirement: Import-Package: org.openhab.core.io.transport.serial

Resolution: feature:install openhab-transport-serial

lampy2 commented 3 years ago

I had an issue installing the 3.1.0 JAR. Got the following error

Error starting bundle 237: Could not resolve module: org.openhab.binding.rflink [237] Unresolved requirement: Import-Package: org.openhab.core.io.transport.serial

Resolution: feature:install openhab-transport-serial

Guess the resolution is written there, install the serial binding. Just search it in the Bindings overview.

@Pshatsillo Thought there was an option to include the serial binding inside the JAR (with maven or so). I really have no clue how to do it, but spend hours only by trying to build a binding (never succeed :))

rgabo74 commented 3 years ago

This is just to confirm that version 3.1.0 binding is working stable with RTS blinds. Big thanks for the OH3 porting!

obones commented 3 years ago

Please try: https://github.com/Pshatsillo/org.openhab.binding.rflink/releases/download/3.0.1/org.openhab.binding.rflink-3.0.0-SNAPSHOT.jar

Thanks for this jar, I placed it in /usr/share/openhab3/addons/ and made sure it is owned by the openhab3 user with appropriate read rights. OpenHAB starts without a glitch, and after that, I go to Settings, Bindings in the Add-on section and click on the plus at the bottom right. And there, I can't find RFLink, typing just rf in the search bar only comes up with RFXCom.

What have I missed?

Pshatsillo commented 3 years ago

You should open things, not addons section

сб, 6 мар. 2021 г., 19:40 obones notifications@github.com:

Please try: https://github.com/Pshatsillo/org.openhab.binding.rflink/releases/download/3.0.1/org.openhab.binding.rflink-3.0.0-SNAPSHOT.jar

Thanks for this jar, I placed it in /usr/share/openhab3/addons/ and made sure it is owned by the openhab3 user with appropriate read rights. OpenHAB starts without a glitch, and after that, I go to Settings, Bindings in the Add-on section and click on the plus at the bottom right. And there, I can't find RFLink, typing just rf in the search bar only comes up with RFXCom.

What have I missed?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyrilcc/org.openhab.binding.rflink/issues/56#issuecomment-791986397, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACN7SHM4HDEZ3HDJDHNPFUDTCJLJBANCNFSM4VF4FUHQ .

obones commented 3 years ago

Ah yes, of course, it's implicitly installed and you are right, I see the Rflink bridge just right. Thanks for your prompt answer

carroll1955 commented 3 years ago

Please try: https://github.com/Pshatsillo/org.openhab.binding.rflink/releases/download/3.0.1/org.openhab.binding.rflink-3.0.0-SNAPSHOT.jar

Thanks for this jar, I placed it in /usr/share/openhab3/addons/ and made sure it is owned by the openhab3 user with appropriate read rights. OpenHAB starts without a glitch, and after that, I go to Settings, Bindings in the Add-on section and click on the plus at the bottom right. And there, I can't find RFLink, typing just rf in the search bar only comes up with RFXCom.

What have I missed?

carroll1955 commented 3 years ago

I wish to ask for some help.

I am running openHAB 3.0.1 in Docker installed using the IOTStack script. Making slow progress. But ...

I installed org.openhab.binding.rflink-3.1.0-SNAPSHOT.jar as an add-on -- and thank you very much for that.

It is discovering "Things" from the USB port data and assigning them to what may be their correct IDs and channels. I have used the UI "Channels" to create "Items" for these things but so far the only visible output I have been able to get from any of them has been "NULL".

My usage of the RFLink is to receive data from a home Weather Station, from some door/window reed switches and some PIR detectors. Apart from the data from the weather station – temperature, humidity, wind speed etc. i just need one working example for each of the other 2 types of devices.

The OpenHab installation is working, as I am successfully getting data from a MQTT Broker and another source.

events.log shows nothing related to RFLink

less openhab.log | grep rflink give a large number of " 2021-03-08 20:06:34.509 [ERROR] [g.rflink.handler.RfLinkBridgeHandler] - An exception occurred while calling the DeviceStatusListener at org.openhab.binding.rflink.messages.RfLinkOregonTempHygroMessage.getStates(RfLinkOregonTempHygroMessage.java:167) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkHandler.updateThingStates(RfLinkHandler.java:170) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkHandler.onDeviceMessageReceived(RfLinkHandler.java:159) ~[bundleFile:?] at org.openhab.binding.rflink.handler.RfLinkBridgeHandler$MessageListener.packetReceived(RfLinkBridgeHandler.java:220) [bundleFile:?] at org.openhab.binding.rflink.connector.RfLinkSerialConnector.sendMsgToListeners(RfLinkSerialConnector.java:179) [bundleFile:?] at org.openhab.binding.rflink.connector.RfLinkSerialConnector.serialEvent(RfLinkSerialConnector.java:206) [bundleFile:?] p "

Any help would be appreciated. Thank you

vguna commented 3 years ago

Any news on OH3 support? Are there plans to officially merge it into OH addons?

lampy2 commented 3 years ago

Hi @Pshatsillo,

today installed OH3.1 but now getting the following error:

`2021-06-28 22:43:12.655 [ERROR] [Events.Framework ] - FrameworkEvent ERROR

org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.rflink [233]

Unresolved requirement: Import-Package: org.apache.commons.io; version="[2.2.0,3.0.0)"

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$2.run(ModuleContainer.java:1845) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$1$1.execute(EquinoxContainerAdaptor.java:136) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1838) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1781) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1743) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1665) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234) [org.eclipse.osgi-3.16.200.jar:?]

at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345) [org.eclipse.osgi-3.16.200.jar:?]`

Perhaps this has something to do with updating dependencies? As I understood here it might require a rebuild of the binding. https://community.openhab.org/t/openhab-3-1-milestone-discussion/116025/180

Would you or somebody else see any change to resolve this issue? Happy user of the RfLink binding here :)

Larsen-Locke commented 3 years ago

Unresolved requirement: Import-Package: org.apache.commons.io; version="[2.2.0,3.0.0)"

Just putting commons-io-2.8.0.jar in the same addons-folder solved the problem for me.

But I really would love to see an official rf-link binding for oh3 too..., just to be sure that all the smart home effort is not build on sand...

lampy2 commented 3 years ago

Unresolved requirement: Import-Package: org.apache.commons.io; version="[2.2.0,3.0.0)"

Just putting commons-io-2.8.0.jar in the same addons-folder solved the problem for me.

But I really would love to see an official rf-link binding for oh3 too..., just to be sure that all the smart home effort is not build on sand...

Thanks! This indeed makes the binding work again.

Yes an official binding would be great, but yeah OH is opensource and run by volunteers. They choose where to work on.

obones commented 3 years ago

Thanks for the suggestion, it works just fine. Just one thing, for those looking for that file, it can be downloaded from the maven repository: https://mvnrepository.com/artifact/commons-io/commons-io/2.8.0 Just look at the Files row for a link to the jar file.

srednak commented 2 years ago

Maybe my issue should be added here instead as the binding is for openHAB 2.0 if you read the README.md file.

My openHAB 3.1.0 issue can be found here: https://github.com/cyrilcc/org.openhab.binding.rflink/issues/63

Pshatsillo commented 2 years ago

I made some changes. Now you don't need apache io