New Jeelink Openhab2 Binding

There is a description on how to flash the sketch in the FHEM wiki: https://wiki.fhem.de/wiki/JeeLink. You have to use the LaCrosse sketch.

1 Like

Hi Volker

Thank you, that was easy, but I somehow missed itā€¦

  1. Download firmware, copy to server
    https://svn.fhem.de/trac/browser/trunk/fhem/contrib/arduino/36_LaCrosse-LaCrosseITPlusReader.zip

  2. Install avrdude

sudo apt-get install avrdude
  1. Flash firmware
sudo avrdude -c arduino -p atmega328p -P /dev/ttyUSB0 -U flash:w:JeeLink_LaCrosse.hex

Stick and sensors are up and running :slight_smile:

1 Like

Thank you for this, Christian,
This should go somewhere in a manual or wiki.
In my opinion, the link to fhem is not a nice solution.
Nobody should need to setup fhem first, to get the JeeLink stick running in openHab.

BR
Matthias

Hi Matthias

FHEM is not needed. I just downloaded the firmware from there.

Best
Christian

Iā€™m trying to use the JeeLink to get the temperature from my TechnoLine TX 29-IT sensor.
After flashing the stick and using the auto-discovery of the from the addon my openhab log is full with the following lines

18:15:27.215 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:31.262 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:35.432 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:38.672 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ā€˜jeelink:lacrosse:8ā€™ changed from ONLINE to OFFLINE
18:15:39.454 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:39.459 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ā€˜jeelink:lacrosse:8ā€™ changed from OFFLINE to ONLINE
18:15:43.496 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:47.520 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:51.694 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:55.717 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:15:59.759 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:03.802 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:07.826 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:11.979 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:16.042 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:20.085 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:24.107 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:28.151 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:32.200 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:36.368 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:38.673 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ā€˜jeelink:lacrosse:8ā€™ changed from ONLINE to OFFLINE
18:16:40.430 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5
18:16:40.435 [INFO ] [me.event.ThingStatusInfoChangedEvent] - ā€˜jeelink:lacrosse:8ā€™ changed from OFFLINE to ONLINE
18:16:44.473 [WARN ] [sse.LaCrosseTemperatureSensorHandler] - thing LaCrosse Temperature Sensor (ID = 8) (8) has invalid temperature reading: temp=9.5

Does somebody know what is not working properly?

Everything is working properly, unless you changed sensor configuration to allow 9.5 degree values.

I have just updated the binding. There is now version 2.1-SNAPSHOT, which no longer has bridge discovery (as this did interfere with other usb sticks when symlinks for the devices were present).
Everything else should be functionally identical. I have refactored the code and fixed a problem were discovery did not work after the sketch name of a bridge had been changed.

Ok thanks. But I think that I have an other little problem now.
I just updated openhab (latest snapshot) and now the binding isnā€™t recognized anymore in the PaperUI?!

Iā€™ll try if the new version helps :slight_smile:

Hmm. Openhab is not installing / recognizing the addon at all at this moment and I donā€™t know why.
The log shows this:

> 19:11:56.709 [ERROR] [org.openhab.binding.jeelink         ] - FrameworkEvent ERROR - org.openhab.binding.jeelink
> org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.jeelink [218]
>   Unresolved requirement: Import-Package: gnu.io

>   at org.eclipse.osgi.container.Module.start(Module.java:434)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1562)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
>         at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]

I regularly have the same problem when installing a new version of openhab with this addon. Please try as a workaround to just restart openHAB - this normaly fixes the problem for me.

1 Like

After a restart the log shows still the same error and the binding is not recognized :confused:

  • Iā€™m using OpenHAB 2.1.0 #849

Mmh, ok - had the same problem. Please open the karaf console and enter:

feature:install openhab-transport-serial

Then restart openHAB - that worked for me with version #849.[quote=ā€œvbier, post:147, topic:15018ā€]

I have just updated the binding. There is now version 2.1-SNAPSHOT
[/quote]

Maybe the Jeelink binding is a great candidate for the new IoT Marketplace? :wink:

1 Like

That worked, thanks :slight_smile:

Good to know that I have to reinstall the transport feature after an update :wink:

But unfortunately, the iot marketplace has the same shortcominings than putting the jar on github:

Note 1: Dependencies are NOT automatically installed - it is merely the single bundle that is installed. So you should make sure that you have all dependencies (like e.g. serial-transport or jupnp) already manually or as a dependency of another binding.

Note 2: The jars are installed in the OSGi cache - which means that they are lost upon an openHAB distro upgrade (which cleans the cache)

And as long as stuff is on github only, at least 10% of the users take the time to read the readme before they start to ask questions that are explained there and have also been answered already in this thread. :slight_smile:

Edit: and if you read Kais post about the iot marketplace, then you know that you can also put the binding there if you wish.

Download latest snapshot
https://github.com/vbier/openhab2-addons/blob/complete/addons/binding/org.openhab.binding.jeelink/org.openhab.binding.jeelink-2.0.0-SNAPSHOT.jar6

when will the download work again?

The correct link is in the first post.

Is there a way your binding works with symlinked devices? At paper ui just native ports are available.

I am not really sure what you mean. You type the name of the device into the text field. This can, of course, also be the name of a symlinked device. I use it myself with /dev/ttyJeelink, which is a symlink to the real device created with a udev rule.

Hi Volker, I dou it the same way, but the symlinked device doesnā€™t work. I will give it another try this evening. Maybe it was my misatake.