I'm trying to get Habmin installed

Hi All,

I’m running OpenHAB 4.2.3 in docker on a RPi5. I am controlling a Z-Wave controller (900 zooz stick (ZST39 LR)) and 1 smart plug (Minoston 800s (MP21Z)). I am doing this at work to turn on/off 1 string of Christmas lights (eventually timed with a rule). The reason for using docker is so I can manage the lights, but still use the RPi for other things. NOT a critical project, but the whole docker thing is new to me.
I finally got the stick online and working. The switch is online but not showing any channels (I have several of these working at home). From what I’ve read, The issue with the switch appears to be a proper initialization issue. The best solution seemed to be using Habmin. I have spent the last week trying to find it and get it working.
I downloaded v2 from GitHub, but can’t get it to install properly with the instructions that I’ve found. I’ve put the .jar file in both /opt/openhab/addons and /usr/share/openhab/addons. Neither worked. So my questions would be:
1. Does Habmin even work with OH4? If so, HOW? :slight_smile:
2. (If I remember correctly) rlkoshak stated that he has never had to use Habmin to configure Z-Wave. Could there be a different way to properly initialize the switch?
Any ideas? At my current rate of progress, I MIGHT get this working before New Years.

Thank you all!!!

No, habmin is not working with openHAB 4.x.x

Is there a way to manually initialize the switch or am I just our of luck with docker?

Here’s what I get when I look at the switches Thing Type:

  • This device has not been fully discovered by the binding. There are a few possible reasons for this -:
    • The device is not in the database. If the device attributes show that this device has a valid manufacturer ID, device ID and type, then this is likely the case (eg. you see a label like “Z-Wave node 1 (0082:6015:020D::2.0)”). Even if the device appears to be in the database, some manufacturers use multiple sets of references for different regions or versions, and your device references may not be in the database. In either case, the database must be updated and you should raise an issue to get this addressed.
    • The device initialisation is not complete. Once the device is included into the network, the binding must interrogate it to find out what type of device it is. One part of this process is to get the manufacturer information required to identify the device, and until this is done, the device will remain unknown. For mains powered devices, this will occur quickly, however for battery devices the device must be woken up a number of times to allow the discovery phase to complete. This must be performed with the device close to the controller.

The interesting thing is that I have the same setup at home, only with a RPi 3B+ and no docker, and these switches work just fine. I’m thinking that maybe docker isn’t letting the switches initialize correctly.

Docker won’t prevent anything - it will either work or it won’t as far as Docker goes.

You don’t really provide a lot of information here - you don’t need HABmin, but you do need to say what is happening with the device that’s not working so that we can try and help? What is the device, what are you doing to try and get it working, and what is actually happening? Maybe the logs will help?

openhab.log

…2024-12-03 14:54:26.513 [INFO ] [org.openhab.core.Activator ] - Starting openHAB 4.2.3 (Release Build)
2024-12-03 14:54:26.921 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Time zone set to ‘America/Los_Angeles’.
2024-12-03 14:54:26.929 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Location set to ‘38.56773023927109,-121.30240917205812’.
2024-12-03 14:54:26.931 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Locale set to ‘en_US’.
2024-12-03 14:54:41.879 [INFO ] [.core.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007
2024-12-03 14:54:57.318 [INFO ] [e.automation.internal.RuleEngineImpl] - Rule engine started.
2024-12-03 14:55:03.810 [INFO ] [ve.internal.protocol.ZWaveController] - Starting ZWave controller
2024-12-03 14:55:03.811 [INFO ] [ve.internal.protocol.ZWaveController] - ZWave timeout is set to 5000ms. Soft reset is false.
2024-12-03 14:55:06.997 [WARN ] [.core.thing.binding.BaseThingHandler] - Attempt to apply invalid configuration ‘Configuration[{key=controller_softreset; type=Boolean; value=false}, {key=security_networkkey; type=String; value=66 E1 72 25 AD CF 95 A7 99 56 E3 27 7C 35 B5 14}, {key=security_inclusionmode; type=BigDecimal; value=1}, {key=controller_sisnode; type=BigDecimal; value=0}, {key=controller_maxawakeperiod; type=BigDecimal; value=10}, {key=controller_sync; type=Boolean; value=false}, {key=controller_master; type=Boolean; value=true}, {key=inclusion_mode; type=BigDecimal; value=2}, {key=port; type=String; value=/dev/ttyACM0}, {key=controller_wakeupperiod; type=BigDecimal; value=3600}, {key=controller_exclude; type=Boolean; value=false}, {key=heal_time; type=BigDecimal; value=2}, {key=controller_inclusiontimeout; type=BigDecimal; value=30}, {key=controller_hardreset; type=Boolean; value=false}]’ on thing ‘zwave:serial_zstick:Z-WaveController’ blocked. This is most likely a bug: {controller_sisnode=The value must not be less than 1.}
2024-12-03 15:15:20.377 [WARN ] [e.internal.SseItemStatesEventBuilder] - Attempting to send a state update of an item which doesn’t exist:
2024-12-03 15:16:49.216 [WARN ] [e.internal.SseItemStatesEventBuilder] - Attempting to send a state update of an item which doesn’t exist:
2024-12-03 15:53:01.902 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.io.habmin-1.7.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.io.habmin [274]
Unresolved requirement: Import-Package: com.sun.jersey.api.json

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 15:53:01.910 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.io.habmin-1.7.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.io.habmin [274]
Unresolved requirement: Import-Package: com.sun.jersey.api.json

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 15:53:01.912 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.binding.zwave-1.8.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.zwave [273]
Unresolved requirement: Import-Package: org.apache.commons.lang

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 16:22:33.556 [INFO ] [basic.internal.servlet.WebAppServlet] - Stopped Basic UI…

Events.log
…2024-12-03 14:54:26.513 [INFO ] [org.openhab.core.Activator ] - Starting openHAB 4.2.3 (Release Build)
2024-12-03 14:54:26.921 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Time zone set to ‘America/Los_Angeles’.
2024-12-03 14:54:26.929 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Location set to ‘38.56773023927109,-121.30240917205812’.
2024-12-03 14:54:26.931 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Locale set to ‘en_US’.
2024-12-03 14:54:41.879 [INFO ] [.core.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007
2024-12-03 14:54:57.318 [INFO ] [e.automation.internal.RuleEngineImpl] - Rule engine started.
2024-12-03 14:55:03.810 [INFO ] [ve.internal.protocol.ZWaveController] - Starting ZWave controller
2024-12-03 14:55:03.811 [INFO ] [ve.internal.protocol.ZWaveController] - ZWave timeout is set to 5000ms. Soft reset is false.
2024-12-03 14:55:06.997 [WARN ] [.core.thing.binding.BaseThingHandler] - Attempt to apply invalid configuration ‘Configuration[{key=controller_softreset; type=Boolean; value=false}, {key=security_networkkey; type=String; value=66 E1 72 25 AD CF 95 A7 99 56 E3 27 7C 35 B5 14}, {key=security_inclusionmode; type=BigDecimal; value=1}, {key=controller_sisnode; type=BigDecimal; value=0}, {key=controller_maxawakeperiod; type=BigDecimal; value=10}, {key=controller_sync; type=Boolean; value=false}, {key=controller_master; type=Boolean; value=true}, {key=inclusion_mode; type=BigDecimal; value=2}, {key=port; type=String; value=/dev/ttyACM0}, {key=controller_wakeupperiod; type=BigDecimal; value=3600}, {key=controller_exclude; type=Boolean; value=false}, {key=heal_time; type=BigDecimal; value=2}, {key=controller_inclusiontimeout; type=BigDecimal; value=30}, {key=controller_hardreset; type=Boolean; value=false}]’ on thing ‘zwave:serial_zstick:Z-WaveController’ blocked. This is most likely a bug: {controller_sisnode=The value must not be less than 1.}
2024-12-03 15:15:20.377 [WARN ] [e.internal.SseItemStatesEventBuilder] - Attempting to send a state update of an item which doesn’t exist:
2024-12-03 15:16:49.216 [WARN ] [e.internal.SseItemStatesEventBuilder] - Attempting to send a state update of an item which doesn’t exist:
2024-12-03 15:53:01.902 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.io.habmin-1.7.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.io.habmin [274]
Unresolved requirement: Import-Package: com.sun.jersey.api.json

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startAllBundles(DirectoryWatcher.java:1221) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:515) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 15:53:01.910 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.io.habmin-1.7.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.io.habmin [274]
Unresolved requirement: Import-Package: com.sun.jersey.api.json

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 15:53:01.912 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.binding.zwave-1.8.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.zwave [273]
Unresolved requirement: Import-Package: org.apache.commons.lang

at org.eclipse.osgi.container.Module.start(Module.java:463) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:445) ~[org.eclipse.osgi-3.18.0.jar:?]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1260) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1233) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) [bundleFile:3.7.4]
at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) [bundleFile:3.7.4]

2024-12-03 16:22:33.556 [INFO ] [basic.internal.servlet.WebAppServlet] - Stopped Basic UI

I removed the zwave .jar file from addons since it’s not needed.

I also highlighted my original post for clarification.

I think I may have gotten initialization and inclusion confused. I think I’m looking for a proper way to include the switch.

One thing I see is that the sis_node needs to be 1. Go to the UI page for the controller, click advanced and change to 1.

Other than that I’m a little confused due to the habmin stuff. I’ve never used it

I have three running Zwave networks (Zstick), one on a Rpi3b(Aeotec 095), one on a Rpi4 (Zooz ZSt39LR) and one on Rpi5 (ZSt10) all with OH4.3.x in a docker container.

On the device we need a debug level log and/or the numbers (typical 0312:FF00:FF0C:x.x)

Edit: I’d also question what ZW binding version habmin is using. The sis_node issue was fixed back in March 2024 and would be in the OH4.2.3 release version

Your logs show a still installed habmin 1.7 and a zwave 1.8 binding. This is not going to work!
Please check your addons folder and delete unneeded bindings!!!

1 Like

The SIS node is already 1. As for the Habmin, my understanding is it doesn’t work with v4.x.x of OpenHAB, so it really ever gets installed.

One of the articles I read stated that docker blocks ports unless they are defined, so the controller’s port (/dev/ttyACM) is defined i the startup script.

Which logs do you want to see. The one that has the zwave and habmin jar files is old (12/3 . I’ve already removed all that stuff from the system.

Obviously, Habmin is dead, so I’m not concerned with that anymore. I would just like to get the switch to show channels, so I can configure/use it. I believe (according to what I’ve read) that the switch just needs to be included properly, but I haven’t been able to find a way to do it.

Thanks, All.

There is a timing issue with that in the older bindings. These extracts of the log says there is a problem. The node needs to be set when you first create the bridge.

{key=controller_sisnode; type=BigDecimal; value=0},
This is most likely a bug: {controller_sisnode=The value must not be less than 1.}

Regardless, here is a suggestion, below is my docker-compose for basically just a zwave OH. You will need to check the dev/serial/by-id folder to validate the id. Also needs to be be yml, but can’t upload that to the forum. Stop any other OH containers.
docker-compose.yml (2).txt (630 Bytes)

This will be a brand new OH4.3M4 in the folder of your choosing, sign in and add the Zwave binding. Use the validated address to manually add the bridge. Then add your switch. All channels should be there.

Edit: if you want to create a symlink (/dev/zwave) use:

        devices:
            - '/dev/serial/by-id/usb-Zooz_800_Z-Wave_Stick_533D004242-if00:/dev/zwave'

Update: I got tired of fighting with the setup and decided to use an old RPi 3B+ as a dedicated server for this one device. Same issue. The things show ONLINE, but o CHANNELS. I checked the compatibility chart in the docs ad saw that the Minoston switches are not listed. Yet, these work fine at home. I like them because I’ve had no issues with them. I guess I’ll keep fighting with it when I have time.

Zwave devices are identified by hex numbers MFG:TYPE:ID:Version, not model numbers. Sometimes mfgs change the type:id, so your non-working device may not be the same as your working ones.

I didn’t see a response to this

The node XML in the userdata/zwave folder would also have that information.

I was able to post my openhab.log. What other logs do you need.

type or paste code here2024-12-12 08:17:46.586 [INFO ] [org.openhab.core.Activator          ] - Starting openHAB 4.2.3 (Release Build)
2024-12-12 08:17:52.604 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Time zone set to 'America/Los_Angeles'.
2024-12-12 08:17:52.699 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Location set to '38.567572509246865,-121.30243474065752'.
2024-12-12 08:17:52.708 [INFO ] [.core.internal.i18n.I18nProviderImpl] - Locale set to 'en_US'.
2024-12-12 08:18:33.512 [WARN ] [.transport.servlet.ServletController] - Can't find the request for http://localhost:8080/'s Observer
2024-12-12 08:19:27.367 [INFO ] [.core.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007
2024-12-12 08:20:17.360 [INFO ] [e.automation.internal.RuleEngineImpl] - Rule engine started.
2024-12-12 08:20:45.876 [INFO ] [ve.internal.protocol.ZWaveController] - Starting ZWave controller
2024-12-12 08:20:45.882 [INFO ] [ve.internal.protocol.ZWaveController] - ZWave timeout is set to 5000ms. Soft reset is false.
2024-12-12 08:20:50.064 [WARN ] [.core.thing.binding.BaseThingHandler] - Attempt to apply invalid configuration 'Configuration[{key=controller_softreset; type=Boolean; value=false}, {key=security_networkkey; type=String; value=F2 B8 76 E2 C4 60 35 31 8C D3 FA 9E B5 D0 89 95}, {key=security_inclusionmode; type=BigDecimal; value=2}, {key=controller_sisnode; type=BigDecimal; value=0}, {key=controller_maxawakeperiod; type=BigDecimal; value=10}, {key=controller_sync; type=Boolean; value=false}, {key=controller_master; type=Boolean; value=true}, {key=inclusion_mode; type=BigDecimal; value=2}, {key=port; type=String; value=/dev/serial/by-id/usb-Zooz_800_Z-Wave_Stick_533D004242-if00}, {key=controller_wakeupperiod; type=BigDecimal; value=3600}, {key=controller_exclude; type=Boolean; value=false}, {key=heal_time; type=BigDecimal; value=2}, {key=controller_inclusiontimeout; type=BigDecimal; value=30}, {key=controller_hardreset; type=Boolean; value=false}]' on thing 'zwave:serial_zstick:Z-Wave-Controller' blocked. This is most likely a bug: {controller_sisnode=The value must not be less than 1.}

Here is the events.log

2024-12-12 08:20:40.165 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node2' changed from UNINITIALIZED (NOT_YET_READY) to UNINITIALIZED (BRIDGE_UNINITIALIZED)
2024-12-12 08:20:40.661 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:serial_zstick:Z-Wave-Controller' changed from UNINITIALIZED (NOT_YET_READY) to INITIALIZING
2024-12-12 08:20:40.721 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:serial_zstick:Z-Wave-Controller' changed from INITIALIZING to OFFLINE (BRIDGE_OFFLINE): Controller is offline
2024-12-12 08:20:40.827 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node1' changed from UNINITIALIZED (NOT_YET_READY) to INITIALIZING
2024-12-12 08:20:40.852 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node2' changed from UNINITIALIZED (BRIDGE_UNINITIALIZED) to INITIALIZING
2024-12-12 08:20:40.870 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node1' changed from INITIALIZING to OFFLINE (BRIDGE_OFFLINE): Controller is offline
2024-12-12 08:20:40.882 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node2' changed from INITIALIZING to OFFLINE (BRIDGE_OFFLINE): Controller is offline
2024-12-12 08:20:50.006 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:serial_zstick:Z-Wave-Controller' changed from OFFLINE (BRIDGE_OFFLINE): Controller is offline to ONLINE
2024-12-12 08:20:50.026 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node2' changed from OFFLINE (BRIDGE_OFFLINE): Controller is offline to ONLINE
2024-12-12 08:20:50.039 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zwave:device:Z-Wave-Controller:node1' changed from OFFLINE (BRIDGE_OFFLINE): Controller is offline to ONLINE

I ran a debug report, although I don’t know if it’s the right one…

Launching the openHAB runtime...
Listening for transport dt_socket at address: 5005
java.io.FileNotFoundException: /var/lib/openhab/tmp/karaf.pid (Permission denied)
        at java.base/java.io.FileOutputStream.open0(Native Method)
        at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
        at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
        at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:123)
        at org.apache.karaf.main.InstanceHelper.writePid(InstanceHelper.java:126)
        at org.apache.karaf.main.Main.launch(Main.java:278)
        at org.apache.karaf.main.Main.main(Main.java:183)
java.lang.RuntimeException: /var/log/openhab/openhab.log (Permission denied)
        at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlerInternal(BootstrapLogManager.java:102)
        at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlersInternal(BootstrapLogManager.java:137)
        at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlers(BootstrapLogManager.java:70)
        at org.apache.karaf.main.util.BootstrapLogManager.configureLogger(BootstrapLogManager.java:75)
        at org.apache.karaf.main.Main.launch(Main.java:279)
        at org.apache.karaf.main.Main.main(Main.java:183)
Caused by: java.io.FileNotFoundException: /var/log/openhab/openhab.log (Permission denied)
        at java.base/java.io.FileOutputStream.open0(Native Method)
        at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
        at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
        at org.apache.karaf.main.util.BootstrapLogManager$SimpleFileHandler.open(BootstrapLogManager.java:193)
        at org.apache.karaf.main.util.BootstrapLogManager$SimpleFileHandler.<init>(BootstrapLogManager.java:182)
        at org.apache.karaf.main.util.BootstrapLogManager.getDefaultHandlerInternal(BootstrapLogManager.java:100)
        ... 5 more
!SESSION 2024-12-12 10:08:23.898 -----------------------------------------------
eclipse.buildId=unknown
java.version=17.0.13
java.vendor=Azul Systems, Inc.
BootLoader constants: OS=linux, ARCH=aarch64, WS=gtk, NL=en_US

!ENTRY org.eclipse.osgi 4 0 2024-12-12 10:08:24.386
!MESSAGE Error reading configuration: /var/lib/openhab/cache/org.eclipse.osgi/.manager/.fileTableLock (Permission denied)
!STACK 0
java.io.FileNotFoundException: /var/lib/openhab/cache/org.eclipse.osgi/.manager/.fileTableLock (Permission denied)
        at java.base/java.io.RandomAccessFile.open0(Native Method)
        at java.base/java.io.RandomAccessFile.open(RandomAccessFile.java:344)
        at java.base/java.io.RandomAccessFile.<init>(RandomAccessFile.java:259)
        at java.base/java.io.RandomAccessFile.<init>(RandomAccessFile.java:213)
        at org.eclipse.osgi.internal.location.Locker_JavaNio.lock(Locker_JavaNio.java:40)
        at org.eclipse.osgi.storagemanager.StorageManager.lock(StorageManager.java:403)
        at org.eclipse.osgi.storagemanager.StorageManager.open(StorageManager.java:716)
        at org.eclipse.osgi.storage.Storage.getChildStorageManager(Storage.java:2196)
        at org.eclipse.osgi.storage.Storage.getInfoInputStream(Storage.java:2213)
        at org.eclipse.osgi.storage.Storage.<init>(Storage.java:258)
        at org.eclipse.osgi.storage.Storage.createStorage(Storage.java:185)
        at org.eclipse.osgi.internal.framework.EquinoxContainer.<init>(EquinoxContainer.java:108)
        at org.eclipse.osgi.launch.Equinox.<init>(Equinox.java:53)
        at org.eclipse.osgi.launch.EquinoxFactory.newFramework(EquinoxFactory.java:35)
        at org.eclipse.osgi.launch.EquinoxFactory.newFramework(EquinoxFactory.java:30)
        at org.apache.karaf.main.Main.launch(Main.java:291)
        at org.apache.karaf.main.Main.main(Main.java:183)

As background for my questions about the device not showing channels I’m following my own advice here

My last question for type:id was; The TYPE:ID can be found for an unidentified device in the userdata/zwave folder (or var/lib/openhab/zwave with most OH installations) in an XML file (like network_d2818a75__node_3.xml ). from my test system

From the logs you still have the sis_node problem. Try this: change the sis node to 2, then back to 1. The controller should go offline briefly in each case. As mentioned above there is a timing issue. The binding changes it to 1, but it is too late. Also I need to know what version of the zwave binding you are running. I saw this earlier, but couldn’t believe it.

2024-12-03 15:53:01.912 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/openhab/addons/org.openhab.binding.zwave-1.8.0-SNAPSHOT.jar
org.osgi.framework.BundleException: Could not resolve module: org.openhab.binding.zwave [273]

Can you putty into your Rpi3 and run sudo openhab-cli (password habopen) to get to the karaf and run bundle:list -s to find the Zwave version. here is what it should look like;

openhab> bundle:list -s |grep zwave
273 x Active x  80 x 4.3.0.202412102327    x org.openhab.binding.zwave

The directory" var/lib/openhab/zwave is empty, and I’ve had a heck of a time finding the actual openhab directory.

I did the change on SIS ( from 1 to 2 and back to 1.

The Z-Wave version is:
openhab> bundle:list -s |grep zwave
271 │ Active │ 80 │ 4.2.3 │ org.openhab.binding.zwave.

I hope that helps.

Thanks.

For the future, here is an overview:

Just so you know, here is what I found in those directories:

openHAB application 		/usr/share/openhab (addons  LICENSE.TXT  runtime  start_debug.sh  start.sh)		
				            /opt/openhab (-bash: cd: /opt/openhab: No such file or directory)

Additional add-on files 	/usr/share/openhab/addons (openhab-addons-4.2.3.kar  README)	
				            /opt/openhab/addons (-bash: cd: /opt/hpenhab/addons: No such file or directory)

Site configuration 		/etc/openhab (automation  html  icons  items  persistence  rules  scripts  services  sitemaps  sounds  tags  things  transform)			
				        /opt/openhab/conf (-bash: cd: /opt/openhab/conf: No such file or directory)

Log files 			/var/log/openhab (events.log       events.log.2.gz  events.log.4.gz  openhab.log.1.gz  openhab.log.3.gz  openhab.log.5.gz  openhab.log.7.gz
						  events.log.1.gz  events.log.3.gz  openhab.log      openhab.log.2.gz  openhab.log.4.gz  openhab.log.6.gz  Readme.txt)
				    /opt/openhab/userdata/logs (-bash: cd: /opt/openhab/userdata/logs: No such file or directory)

Userdata like rrd4j databases 	/var/lib/openhab (cache  config  etc  hs_err_pid4867.log  hs_err_pid7335.log  jsondb  persistence  secrets  tmp  zwave)
				                /opt/openhab/userdata (-bash: cd: /opt/openhab/userdata: No such file or directory)

Backups folder 			/var/lib/openhab/backups (-bash: cd: /var/lib/openhab/backups: No such file or directory)	
				        /opt/openhab/backups (-bash: cd: /opt/openhab/backups: No such file or directory)

Service configuration 		/etc/default/openhab 		(not preconfigured)
# openHAB service options

#########################
## PORTS
## The ports openHAB will bind its HTTP/HTTPS web server to.

#OPENHAB_HTTP_PORT=8080
#OPENHAB_HTTPS_PORT=8443

#########################
## HTTP(S) LISTEN ADDRESS
##  The listen address used by the HTTP(S) server.
##  0.0.0.0 (default) allows a connection from any location
##  127.0.0.1 only allows the local machine to connect

#OPENHAB_HTTP_ADDRESS=0.0.0.0

#########################
## BACKUP DIRECTORY
## Set the following variable to specify the backup location.
## runtime/bin/backup and runtime/bin/restore will use this path for the zip files.

#OPENHAB_BACKUPS=/var/lib/openhab/backups

#########################
## 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/ttyZWAVE:/dev/ttyUSB0:/dev/ttyS0:/dev/ttyS2:/dev/ttyACM0:/dev/ttyAMA0"
##   EXTRA_JAVA_OPTS="-Djna.library.path=/lib/arm-linux-gnueabihf/ -Duser.timezone=Europe/Berlin -Dgnu.io.rxtx.SerialPorts=/dev/ttyZWave"

EXTRA_JAVA_OPTS=""

#########################
## OPENHAB DEFAULTS PATHS
## The following settings override the default apt/rpm locations and should be used with caution.
## openHAB will fail to update itself if you're using different paths.
## Only set these if you are testing and are confident in debugging.

#OPENHAB_HOME=/usr/share/openhab
#OPENHAB_CONF=/etc/openhab
#OPENHAB_RUNTIME=/usr/share/openhab/runtime
#OPENHAB_USERDATA=/var/lib/openhab
#OPENHAB_LOGDIR=/var/log/openhab

#########################
## OPENHAB USER AND GROUP
## The user and group that takes ownership of openHAB. Only available for init.d systems.
## To edit user and group for systemd, see the service file at /usr/lib/systemd/system/openhab.service.

#OPENHAB_USER=openhab
#OPENHAB_GROUP=openhab

#########################
## SYSTEMD START MODE
## The Karaf startmode for the openHAB runtime. Only available for systemctl/systemd systems.
## Defaults to daemon when unset here. Multiple options can be used without quotes.
## debug increases log output. daemon launches the Karaf/openHAB processes.

#OPENHAB_STARTMODE=debug

Great, so everything is fine, now.
BTW, you won’t find anything in the /opt/* folders because you don’t have a manual installation, you are using an apt installation, I guess.