# Issues getting the Z-Wave Driver module up and running

**URL:** <https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679>\
**Category:** Maker\
**Tags:** ignition81\
**Created:** [March 26, 2022, 8:39pm UTC](https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679 "2022-03-26T20:39:28Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![swolnisty](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@swolnisty](https://forum.inductiveautomation.com/u/swolnisty)\
**Post date:** [March 26, 2022, 8:39pm UTC](https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679/1 "2022-03-26T20:39:28Z")

</div>

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](https://github.com/IgnitionModuleDevelopmentCommunity/ZWaveDriver#getting-started), 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:

```auto
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)

```

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [March 26, 2022, 8:46pm UTC](https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679/2 "2022-03-26T20:46:39Z")

</div>

Whatever user Ignition is running as may not have permission to open the serial port.

Once you figure out what user it’s running under, try adding it the `dialout` group:

```auto
sudo usermod -a -G dialout $USER

```

(substitute $USER with the actual username Ignition runs as, or you’ll end up with _your_ username)

That user has to log out and log in again before it takes effect, so if you’re running Ignition as a service maybe just restart.

---

<div class="post-metadata">

**Author:** ![swolnisty](https://avatars.discourse-cdn.com/v4/letter/s/7bcc69/32.png) [@swolnisty](https://forum.inductiveautomation.com/u/swolnisty)\
**Post date:** [March 26, 2022, 8:53pm UTC](https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679/3 "2022-03-26T20:53:47Z")

</div>

Thanks, that was quick fix!

---

<div class="post-metadata">

**Author:** ![Travis.Cox](https://avatars.discourse-cdn.com/v4/letter/t/b9bd4f/32.png) [@Travis.Cox](https://forum.inductiveautomation.com/u/Travis.Cox)\
**Post date:** [March 26, 2022, 10:11pm UTC](https://forum.inductiveautomation.com/t/issues-getting-the-z-wave-driver-module-up-and-running/57679/4 "2022-03-26T22:11:46Z")

</div>

Just a FYI, I have taken down the ZWave Driver for Ignition project from Github as there are much better tools to use these days. For example, you can use the ZWave to MQTT project:

[https://zwave-js.github.io/zwavejs2mqtt/](https://zwave-js.github.io/zwavejs2mqtt/)
