Zwave controller Serial Error: Port /dev/ttyACM0 does not exist

My wave Controller all of a sudden just stopped working.
I am getting an error message Serial Error: Port /dev/ttyACM0 does not exist.
I have been reading the forum for the last 2 days and tried everything as far as i understand.
The usb gets recogniced by the system

$ lsusb 
Bus 001 Device 005: ID 0658:0200 Sigma Designs, Inc.

After typing ls -l /dev/ttyACM0 it gives ths output


 crw-rw---- 1 root dialout 166, 0 sep  3 10:11 /dev/ttyACM0

Privellages dont seem to be an issue either

$ grep openhab /etc/group
tty:x:5:huis,openhab
dialout:x:20:huis,openhab
audio:x:29:pulse,openhab
openhab:x:130:

In etc/default/openhab2 i have

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

I am running Ubuntu 16.04 64 bits on a gigabyte bare bone

I am running the latest openhab2 2.4.0
i tried reverting back to 2.3 but no succes either.
I even removed all zwave things i have as i though it was due to the recent update in the zwave security but also no succes.
does anyone have any suggestions for me

Did the port change somehow?

pi@rpi3openhab:~ $ dmesg -T | grep tty
[Do Aug 23 08:40:00 2018] cdc_acm 1-1.5:1.0: ttyACM0: USB ACM device

Hey Sihui

No it has not this is my output

ma sep  3 12:06:49 2018] cdc_acm 1-3:1.0: ttyACM0: USB ACM device

i also have it sim linked and tried the symlink that doesnot work either.

~$ ls -l /dev/zwave
lrwxrwxrwx 1 root root 7 sep  3 12:06 /dev/zwave -> ttyACM0

Then I am out of ideas, sorry.
Does the hardware not work or are you not able to switch your devices?
I would check karaf console if the zwave binding is active and make sure you only have one instance ot fhe zwave binding running.

Hey Sihui

I checked binding is active and only one instance of the binding is running.
I cannot do anything with my z wave devices they are all showing offline.

Same here for me happened. Just out of a sudden yesterday evening Z-Wave stopped working and I’m getting the same error as you did on an installation that worked before. I’ve already set up the Raspberry Pi with a fresh Raspbian and still the same. Running on latest OpenHAB nightly from apt-get sources.

It says as well Serial Error: Port /dev/ttyACM0 does not exist

The openhab user is of course in dialout group.

That probably means you don’t have your Zwave stick configured for the correct port:

grafik

Note the port name may be different depending on the system you are using.
Also check your openhab.log for error messages.

That is my problem Sihui
i have it set up for the correct port
this is what happens when I remove my zwave stick and re-install it.
and after run dmesg

[ 6968.288777] usb 1-1.4.1: USB disconnect, device number 5
[ 6985.166610] usb 1-3: new full-speed USB device number 6 using xhci_hcd
[ 6985.315796] usb 1-3: New USB device found, idVendor=0658, idProduct=0200
[ 6985.315814] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 6985.317636] cdc_acm 1-3:1.0: ttyACM0: USB ACM device
[ 8055.020720] perf: interrupt took too long (7848 > 7843), lowering kernel.perf_event_max_sample_rate to 25250
[37241.731202] perf: interrupt took too long (11421 > 9810), lowering kernel.perf_event_max_sample_rate to 17500
[37270.135812] usb 1-3: USB disconnect, device number 6
[37273.634632] usb 1-3: new full-speed USB device number 7 using xhci_hcd
[37273.784052] usb 1-3: New USB device found, idVendor=0658, idProduct=0200
[37273.784068] usb 1-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[37273.785637] cdc_acm 1-3:1.0: ttyACM0: USB ACM device

@sihui

The problem is that this happened out of a sudden on a WORKING openHAB system. I have 5 installations in my house and on one this happened and as I said even on a fresh install with the latest version this problem persists. On the other installations I have not yet been brave enough to upgrade.

But it’s interesting that we’re two who independently experience this which somehow points to a problem in openHAB or the z-wave binding.

So - the z-wave stick’s port was correctly configured and still is given that there is nothing else in dev than ttyACM0 and ttyAMA0.

It should only list one tty* with the USB ACM device:

pi@rpi3openhab:~ $ dmesg -T | grep tty
[Do Aug 23 08:39:55 2018] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=1024 bcm2708_fb.fbheight=768 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=6e7db51a-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[Do Aug 23 08:39:55 2018] console [tty1] enabled
[Do Aug 23 08:39:55 2018] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[Do Aug 23 08:40:00 2018] cdc_acm 1-1.5:1.0: ttyACM0: USB ACM device

You need to find out why it is showing up twice …

It’s showing up once i just copied to much text i have been pulling it out more often today.

[ma sep  3 20:51:01 2018] cdc_acm 1-3:1.0: ttyACM0: USB ACM device

Is OH shutdown when you pull out the controller? If not, OH will need a restart once it is plugged in.

Do you see anything related in journalctl? Specifically, lock file errors?

1 Like

5iver

thanks for pointing me in the right direction.
I had a look at the journalctl and that gave an error on one of the other old bindings.

 systemd[1]: Started openHAB 2 - empowering the smart home.
sep 03 23:17:14  karaf[11675]: Exception in thread "Thread-97" java.lang.NullPointerException
sep 03 23:17:14  karaf[11675]:         at org.openhab.binding.mochadx10.internal.MochadX10Binding$ReceiveThread.run(MochadX10Binding.java:199)
sep 03 23:17:14  karaf[11675]: Failed to connect on port: /dev/ttyUSB0 exception:
sep 03 23:17:14  karaf[11675]: gnu.io.NoSuchPortException
sep 03 23:17:14  karaf[11675]:         at gnu.io.CommPortIdentifier.getPortIdentifier(CommPortIdentifier.java:273)
sep 03 23:17:14  karaf[11675]:         at gnu.io.NRSerialPort.connect(NRSerialPort.java:59)
sep 03 23:17:14  karaf[11675]:         at org.openhab.binding.plcbus.internal.protocol.SerialPortGateway.<init>(SerialPortGateway.java:29)
sep 03 23:17:14  karaf[11675]:         at org.openhab.binding.plcbus.internal.protocol.SerialPortGateway.create(SerialPortGateway.java:33)
sep 03 23:17:14  karaf[11675]:         at org.openhab.binding.plcbus.internal.PLCBusBinding.updated(PLCBusBinding.java:146)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.provide(ConfigurationManager.java:1479)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.run(ConfigurationManager.java:1435)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:141)
sep 03 23:17:14  karaf[11675]:         at org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:109)
sep 03 23:17:14  karaf[11675]:         at java.lang.Thread.run(Thread.java:748)

I removed the PLCbus binding manualy and restarted openhab and the usb was recognized again.:wink:
Thanks for your help guys you made my day

1 Like

FWIW, you should be able to see this error in your openhab.log too.