Hello all,
I am running into an issue when trying to set up the Z-Wave Driver module. I am following the steps listed in the readme, though I substituted the suggested /dev/ttyACM0 for /dev/ttyUSB0, since that appears to be the serial port that my stick is using (I am using the Aeotec Z-Stick Gen 7). All I ever get is an error message in the logs that Ignition is unable to open the serial port. I have tried the suggested port of /dev/ttyACM0 instead (though I don’t see how it could use that port, since it is not listed in the /dev/ directory) and I get the same result.
I am running the 8.1.15 stable release on Ubuntu 20.04 and the Z-Wave Driver module version is 1.0.0 (b2021020108). Ubuntu is installed directly on my hardware, not in a VM, so all the hardware ports should be directly accessible.
Any suggestions on what might be going on are greatly appreciated! Here’s the error from my gateway logs:
org.imdc.zwavedriver.zwave.PortException: Failed opening serial port '/dev/ttyUSB0'
at org.imdc.zwavedriver.zwave.ZWaveRawSerialPort.open(ZWaveRawSerialPort.java:61)
at org.imdc.zwavedriver.zwave.ZWaveRawSerialPort.(ZWaveRawSerialPort.java:43)
at org.imdc.zwavedriver.zwave.ZWaveRawSerialPort.(ZWaveRawSerialPort.java:36)
at org.imdc.zwavedriver.zwave.ZWaveSerialPort.(ZWaveSerialPort.java:29)
at org.imdc.zwavedriver.gateway.ZWaveMessages.startup(ZWaveMessages.java:47)
at org.imdc.zwavedriver.gateway.ZWaveExecutor.startup(ZWaveExecutor.java:63)
at org.imdc.zwavedriver.gateway.GatewayHook.reloadConfig(GatewayHook.java:84)
at org.imdc.zwavedriver.gateway.GatewayHook.recordUpdated(GatewayHook.java:118)
at com.inductiveautomation.ignition.gateway.localdb.PersistenceInterfaceImpl.notifyRecordUpdated(PersistenceInterfaceImpl.java:179)
at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl.doNotifyRecordUpdated(RedundantPersistenceInterfaceImpl.java:111)
at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateListener.recordUpdated(RedundantPersistenceInterfaceImpl.java:407)
at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateMessage.notify(RedundantPersistenceInterfaceImpl.java:457)
at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateListener.receiveCall(RedundantPersistenceInterfaceImpl.java:390)
at com.inductiveautomation.ignition.gateway.redundancy.QueueableMessageReceiver.receiveCall(QueueableMessageReceiver.java:47)
at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl.dispatchMessage(RedundancyManagerImpl.java:971)
at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl$ExecuteTask.run(RedundancyManagerImpl.java:1046)
at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:539)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)