[SOLVED] Telegesis USB not showing in PaperUI

Hi,

I’m running on the latest Openhabian stable software release.
I’ve the Telegesis USB connected to the raspberry pi for 2 days now, I read on some topics that it needs to update the driver before it will work but I’m still not able to select the drive.

The device is discovered automatically and directly in the PaperUI inbox, it shows that it is on /dev/ttyUSB1/, so I added the thing.

But it appears to be offline, when I open the thing in the paperui and edit the properties, I’m able to select a serial port, the only option that I get is the /dev/ttyUSB0 but this is a different device, the usb is mounted to /dev/ttyUSB1, but this device is not showing up in the dropdown menu.

I tried this:

https://www.openhab.org/docs/installation/linux.html#recommended-additional-setup-steps

Privileges for Common Peripherals

An openHAB setup will often rely on hardware like a modem, transceiver or adapter to interface with home automation hardware. Examples are a Z-Wave, Enocean or RXFcom USB Stick or a Raspberry Pi add-on board connected to the serial port on its GPIOs. In order to allow openHAB to communicate with additional peripherals, it has to be added to corresponding Linux groups. The following example shows how to add Linux user openhab to the often needed groups dialout and tty. Additional groups may be needed, depending on your hardware and software setup.

sudo adduser openhab dialout
sudo adduser openhab tty

I already rebooted several times, unplugged and inserted the USB again, who knows how to fix this?

The logs on boot:

2019-08-07 19:38:21.210 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from UNKNOWN to OFFLINE (COMMUNICATION_ERROR)
2019-08-07 19:38:21.224 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from OFFLINE (COMMUNICATION_ERROR) to OFFLINE: Failed to startup ZigBee transport layer
2019-08-07 19:40:02.867 [nt.FirmwareStatusInfoEvent] - Firmware status of thing zigbee:coordinator_telegesis:04000BB6 changed to UNKNOWN.
2019-08-07 19:40:19.651 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-07 19:53:15.267 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from OFFLINE: Failed to startup ZigBee transport layer to UNINITIALIZED
2019-08-07 19:53:15.323 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)

Nobody…?! :frowning:

Please provide a debug log so I can see what is happening. Please consult the binding doc to see what to do.

Hi Chris,
Thanks for the reply, I’m quite new to openhab, how te get the debug log? Besides that I tried to follow the binding doc as good as possible but I’m not able to figure out why I see my smart meter usb but not my telefesis usb…
Thanks in advance

Please take a look at the binding doc. There is a section on this at the bottom of the page if I remember correctly.

Sorry for the late response, I was on a holiday so I didn’t had a change to look at this any further.
When I remove the telegesis thing first, and add it again, this is the log I’ll get, can you see what goes wrong?

2019-08-30 08:47:03.338 [nt.FirmwareStatusInfoEvent] - Firmware status of thing zigbee:coordinator_telegesis:04000BB6 changed to UNKNOWN.
2019-08-30 08:47:29.062 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from OFFLINE (COMMUNICATION_ERROR) to REMOVING
2019-08-30 08:47:29.083 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from REMOVING to REMOVED
2019-08-30 08:47:29.094 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from REMOVED to UNINITIALIZED
2019-08-30 08:47:29.207 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.dispose()' on 'org.openhab.binding.zigbee.telegesis.handler.TelegesisHandler@1e9caa9': null
2019-08-30 08:47:29.240 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred while disposing handler of thing 'zigbee:coordinator_telegesis:04000BB6': null
2019-08-30 08:47:29.303 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from UNINITIALIZED to UNINITIALIZED (HANDLER_MISSING_ERROR)
2019-08-30 08:47:38.393 [home.event.InboxAddedEvent] - Discovery Result with UID 'zigbee:coordinator_telegesis:04000BB6' has been added.
2019-08-30 08:47:38.390 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'zigbee:coordinator_telegesis:04000BB6' to inbox.
2019-08-30 08:47:54.637 [me.event.InboxRemovedEvent] - Discovery Result with UID 'zigbee:coordinator_telegesis:04000BB6' has been removed.
2019-08-30 08:47:54.680 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from UNINITIALIZED to INITIALIZING
2019-08-30 08:47:54.727 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-30 08:47:54.770 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-30 08:47:54.813 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-30 08:47:54.857 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-30 08:47:54.860 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from INITIALIZING to UNKNOWN
2019-08-30 08:47:54.963 [nt.FirmwareStatusInfoEvent] - Firmware status of thing zigbee:coordinator_telegesis:04000BB6 changed to UNKNOWN.
2019-08-30 08:47:55.893 [ERROR] [ngle.telegesis.ZigBeeDongleTelegesis] - Unable to open Telegesis serial port
2019-08-30 08:47:55.901 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from UNKNOWN to OFFLINE: Failed to open communications port
2019-08-30 08:47:55.905 [hingStatusInfoChangedEvent] - 'zigbee:coordinator_telegesis:04000BB6' changed from OFFLINE: Failed to open communications port to OFFLINE (COMMUNICATION_ERROR)
2019-08-30 08:48:37.634 [me.event.ThingUpdatedEvent] - Thing 'zigbee:coordinator_telegesis:04000BB6' has been updated.
2019-08-30 08:48:37.703 [ERROR] [st.core.internal.thing.ThingResource] - Exception during HTTP PUT request for update config at 'things/zigbee:coordinator_telegesis:04000BB6/config'

The other strange thing is when I manually add the telegesis usb, it shows that it will communicate with /dev/ttyUSB1, that is the correct port, when added, it directly shows a communication error at the thing, when I edit the thing there is no port selected and the drop-down menu only shows port /dev/ttyUSB0 with is my DSMR device. This device works as it should.
Don’t know what to do now…?

I’m not really sure what’s happening. A debug log might be useful, although I’m not convinced it will show a lot more than we see here in the events log. The serial port either doesn’t exist, or the user doesn’t have access.

I’m not sure why you are also getting the exception when updating the configuration - I’m assuming that you’re not using text files for configuration and this is all done through PaperUI. Again, a debug log might help with this but it possibly indicates wider issues with your system.

Thanks for the quick reply, I was still trying to get it working the whole morning.

Eventually I got it working by removing the telegesis USB and the P1 USB cable for DSMR.
Then I uninstalled the binding DSMR and Zigbee, I rebooted the system and connected both USB’s, then both devices where detected (DSMR on /dev/ttyUSB0 as before and Telegesis on /dev/ttyUSB1) automatically and worked, hooray… but…

After a reboot of the system both devices went offline and ain’t working any more, so there seem to be a conflict between both, any idea’s or suggestions what to do?
I don’t think you need the debug log anymore or do you?

I know there were some issues with port conflicts a while back, but I don’t recall if/how they were resolved. There was also an issue that was fixed very recently to do with the startup of the serial driver - ie the issue was that the serial driver could start after the bindings started which meant that the binding could not open the port - maybe this is what you are seeing.

This issue was fixed recently (past few weeks) so you would need to use a very recent (snapshot probably) version of the runtime as I think the change related to startup levels.

The assignment of try can be different on reboot. I don’t know if that is happening here. But you can lock them. See this page:
https://www.openhab.org/docs/administration/serial.html#serial-port-configuration

I will try to lock them in a static config and delete the bindings and things and then add them all again, let see what will happen, will put the outcome here when I tried it.

Thanks for the tip!

I had some time today to try it out, I used the command: udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSBX) were I replaced the X with the matching number.

With that info I filled out the lines with the info like this:
SUBSYSTEM==“tty”, ATTRS{idVendor}==“10c4”, ATTRS{idProduct}==“8293”, ATTRS{serial}==“04000BB6”, SYMLINK+="ttyTeleUSB”

SUBSYSTEM==“tty”, ATTRS{idVendor}==“0403”, ATTRS{idProduct}==“6001”, ATTRS{serial}==“AC2OETAX”, SYMLINK+="ttySlimmeUSB”

The idVendor and idProduct numbers are also showing with command “lsusb” so there are defiantly, the serial was in the same column as the idVendor and idProduct so I figured that I should be correct as well, I placed both lines in /etc/udev/rules.d/99-com.rules underneath the other SUBSYSTEM lines.

After that I rebooted the py, unfortunately the USB didn’t get the aliases but still have USB0 and USB1, what am I doing wrong…?

Well, I’m now one step further.
Apparently, in the example the quote sign isn’t really a quote but a 2 single quotation marks so the values waren’t correct but now they are so they are showing when I use the command ls /dev/tty* but they are now selectable or showing in openhaal when I’m editing a thing, any ideas how to arrange that?

Sorry, but I’m not sure that I understand this? When you say “they are now selectable” - what are you referring to that is “now selectable”?

Hi Chris,

When I want to edit the thing (Telegesis USB in this case) I want to select the port wich one it should use to communicate:

As you can see, I only can select the /dev/ttyUSB0 but I made 2 aliases in the /etc/udev/rules.d/99-com.rules and I could see them with the command ls /dev/tty* but not in Openhab PaperUI

Did you add the openhab user to the dialout group?

Have you added the aliased ports to the command line when starting OH? ->

EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyUSB0:/dev/ttyS0:/dev/ttyS2:/dev/ttyACM0:/dev/ttyAMA0"

Yes I added it before

Yea I added them and rebooted, but they still won’t be selectable in the dropdown menu when editing a thing, the column with the java options look like this:

> #########################
> ## JAVA OPTIONS
> ## Additional options for the JAVA_OPTS environment variable.
> ## These will be appended to the execution of the openHAB Java runtime in front of all other options.
> ##
> ## A couple of independent examples:
> ## EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyAMA0"
> EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyUSB0:/dev/ttyS0:/dev/ttyS2:/dev/ttyACM0:/dev/ttyAMA0:/dev/ttyUSB1:/dev/ttySlimmeUSB:/dev/ttyTeleUSB"
> ## EXTRA_JAVA_OPTS="-Djna.library.path=/lib/arm-linux-gnueabihf/ -Duser.timezone=Europe/Berlin -Dgnu.io.rxtx.SerialPorts=/dev/ttyS0"
> EXTRA_JAVA_OPTS="-Xms250m -Xmx350m"

Is that the correct way?