[SOLVED] OH3: zwave binding Z-Wave Serial Controller Aeotec Z-Stick Gen5 remains offline

Ok, that’s fine - thanks. This leads me back to my original response then.

ok, in pictures

The bridge does not come online in OH3, but on the same server with OH2 is works.

And I asked:
“Do you have some hints what i can do (e.g. add some debug to other classes) to find the root cause of my issue”

Why does it work in OH2 and no longer in OH3 on the same HW and OS ?
What can I do (debugging) to get more information ?

Sure - I know what OFFLINE means - both as text and as an image :wink:

Understood - it’s OFFLINE - I got that already :wink:

I’m sorry - but I don’t know. All I can say is what I’ve already said a couple of times. Based on the information I can see, the issue seems to be that the binding cannot open the serial port. Serial port access isn’t really part of the binding - it’s handled by a serial abstraction layer. Secondly, as I’ve said, I don’t use RFC2217, and I know people have problems with this.

I’m sorry - I really don’t know how else to help you. You seem to keep repeating the same question - probably you think I’m being difficult, or hiding information, but that’s not the case. From the binding perspective, it just tries to open the serial port - if this fails, there’s not a lot more that it can do, and I don’t have any other information that can really help.

Ok, then it must be a Bug in OH3 serial port handling.
I can live with that as I have a workaround.


So I then mark this topic a solved.

It seems a hardware issue with the pi (in my case with a pi4). I had the same issue and found another workaround; just connect a simple USB-hub to your pi and plugin the Z-wave stick into the hub.

It is not a pi and it‘s not a HW issue. The stick is recognized by OS and working in OH2.

Have you ever tried to you use /dev/ttyACM0 directly?
I don’t understand why you configure a symbolic link to that character device.

Even if the thread has been marked as solved I want to write my experience with a similar problem. The z-wave binding cannot connect to the serial port and (of course) therefore the information from binding does not help to track down the problem (while 2.5.9 works well with the same environment).
I’m finally not sure if the “problem” is Java11 or a change in OH3 (have tried M2 and M3) I (s)traced the problem down to a permission denied while writing /var/lock/LCK…ttyUSB-ZStick-5G.
On my synology NAS (using OH native and not in a docker) /var/lock is only root-writeable which lead to permission denied and finally in a more or less silent error.
For now, while I’m not finally migrated to OH3, I have changed the permission, ignoring to think about any security aspects :wink:
Not sure if this here is the same problem, but it matches the description and therefore maybe helps somebody else.

1 Like

I am facing the same problem with the stick. I run OH 3 on an opensuse leap 15.2 PC for test. The stick becomes initialised and than goes offline. The stick works well with OH2
Regards Wolf

Blockquote

I waited for the general release today and have the same problem described on this thread.

Use the workaround I described or open a new thread. Eventually you have more luck than me and someone is able or willing to help.

@HaKuNa is there anything I need to change in terms of the serial port in openHAB or do I literally just install and configure ser2net and the Z-Wave controller will just start working while pointing to /dev/ttyACM0?

no, see port config here

Thanks @HaKuNa. I may give this a shot. In the meantime I have a lead on the issue. If I run openHAB manually as root, the Z-Stick works. So this is definitely some sort of permissions issue even though the openhab user account should have access via the uucp group:

crw-rw---- 1 root uucp 166, 0 Dec 22 11:48 /dev/ttyACM0

uucp:x:14:openhab

I’ll let you know if I figure this out.

Getting closer. I ran the openHAB start.sh manually as the openhab user which brought me to the openHAB console and it spit out this error repeatedly:

openhab> check_group_uucp(): error testing lock file creation Error details:Permission deniedcheck_lock_status: No permission to create lock file.
FAILED TO OPEN: No such file or directory

1 Like

Ok @HaKuNa and @chris I think I figured out what’s wrong. It appears that openHAB 3.0 requires access to /var/lock. On ArchLinux, this is symlinked to /run/lock, which has permissions set to 755 root root so the openhab user cannot access. /run/lock is considered a temp directory and is configured via /usr/lib/tmpfiles.d/legacy.conf, which Systemd uses to create /run/lock in volatile memory at system boot with those permissions. To override these permissions, I was able to copy legacy.conf to /etc/tmpfiles.d and adjust the permissions to 775 root uucp. After rebooting my system, /run/lock now allows the uucp group and the openhab user to access the Z-Stick and my Wave controller shows online. When I look in /run/lock, I now see a LCK…ttyACM0 file for /dev/ttyACM0, the serial port for my Z-Stick.

That said, I still consider this a workaround as I had to override a system default and this was working fine under openHAB 2.5. I’m wondering if there was a regression that now requires openHAB 3.0 to write to /var/lock when it didn’t before.

5 Likes

This is all handled in the nrjavaserial bundle. OH3 uses a newer version and I seem to recall some changes to fix some issues with locking on some variants of linux.

I can confirm that this works. Pi4 and aeotec z-stick. Simple USB hub does the trick

1 Like

it‘s not pi related

well that might be the case Remo. I do not know.

What i`m saying is the combination of OH3 + PI4 + aeotec z-stick does not work out of the box, but does work with a USB hub.