USB-Serial fails after months of stability

I purchased a vera lite probably 7 or 8 months ago. The first thing I did after pairing with several light switches and a few other simple devices was to connect it to my GE Concord 4. Running UI6, the plugin didn’t work quite right but the forum here was detailed enough to get me through it with some tinkering (I love tinkering). For the following 7 or 8 months, it’s worked FLAWLESS. I often moved equipment around in my mech room, but it didn’t matter; I could restart the Vera as many times and it always booted right up, picked up my system, and everything worked great every time (after the initial tinkering).

A few hours ago, my new Russound MCA-C5 arrived. I had also ordered a powered USB hub (per this forum) and a second USB to Serial adapter. The new adapter is a different brand than my first, but was specifically recommended in this forum and uses one of the two recommended chipsets, as does my first existing adapter I’ve been using flawlessly.

Chain of Events:

  1. I install the Russound Plugin
  2. I unplug my existing adapter and plug in the USB hub into the Vera in its place
  3. I plug my existing adapter into the HUB
  4. I plug the new adapter into the HUB
  5. I anxiously reload Luup looking to see my audio zones appear
  6. I feel slightly let down when they don’t popup
  7. I’m a little confused because now, under “Serial Port Configuration” not only are there NOT two devices listed, there is not even one
  8. I uninstall the Russound plugin, unplug the USB HUB and plug my old existing adapter back in, just the way it always had been for the past several months thinking I’d redo everything one step at a time to find the issue
  9. I unplug and pop batteries out of Vera, plug back in and STILL nothing in the “Serial Port Config” section.
  10. I cry a little and then search this forum extensively for information on getting a serial adapter working, but there’s really no trick to it, either it works or it doesn’t, and mine went from working perfect with constant alarm system chatter for months, to not working, just like that
  11. I cry a little more. I learned on the forum how to SSH into my Vera and do a lsusb. When I do that with no usb plugged in, it shows:

Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001

When I plug in my new adapter and do lsusb, same thing. When I plug in my old adapter that’s worked forever, same dang thing, no change. HOWEVER, when I plug in the USB HUB (with nothing plugged into the HUB), I get:

Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001
Bus 002 Device 002: ID 0e8f:0016
Bus 002 Device 003: ID 0e8f:0016

So then I ssh into the /etc/cmh-ludl/ folder and find that the russound app has lots of files left over. It’s obvious which ones belong to it because they’re labeled “RNET” this or that, so I delete all those turkeys. Then I start randomly deleting other files… No I did not, come on people, I’m in pain and misery here, but not stupid.

Somewhere in those events I restored my Vera to a month ago’s programming. Not that it would matter, because I haven’t changed ANYTHING in the Vera for a long time other than to install that plugin.

I purposefully did not put this thread under the plugin section, because it’s not really about the plugins. I’ll figure those out when I get there; right now I just need my flipping USB-serial to work. And, if the stars align, for the USB HUB to work with two serial adapters. (by the way, I made the second one a different brand to make sure there were no conflicts between the two; I don’t know if that was necessary, but I did it anyway).

Help!!

You posted such a lovely detailed problem description that it would be a shame for no one to reply. But I’m not sure that I can help. As you know, there is an element of chicken sacrifice when it comes to USB on Linux, especially on Vera.

See also what you get from the “dmesg” command when you plug things in and disconnect them. This prints the kernel log since startup so you are looking for new messages appearing at the end of the output. If the dmesg output is not changing when you plug a USB device in then it’s truly not being recognized.

It is possible that your original USB adapter just stopped working. Components age and this adapter might have been pushed across a threshold by having the power disconnected. Does it work on a real computer any more?

You might find yourself at the same point I got to: forget about USB on the Vera, and use an Ethernet-to-serial gateway like the WizNet or GC100 or a PC running ser2net. Yes, USB on Vera should work but you have to compromise and settle for what actually works.

It would seem that Vera sees the ports on your new hub, but based on your description, the devices plugged into those ports do not show up. This sounds almost as if they were not being powered. Try the hub in a regular PC and make sure that it works and that devices plugged into it appear.

@Futzle’s advice about dmesg would be very helpful here. If you run this command before and after inserting your serial adapter into Vera’s new hub, you should see new serial devices being added:dmesg | grep tty

When you get the serial adapters to show up, you may find that the numbers ttyS2 or ttyUSB0 have shifted and you need to reconfigure your plugin to match the new numbers. I’m unfamiliar with this plugin so I can’t help there.

Thanks for the comments so far! The last time I saw chicken sacrifice was when I lived in Brazil and I was out way past my bedtime. They were in the middle of the street and accompanied the whole process with this horid smelling fluid that got dumped over the mess. So, in that spirit, I attempted to accompany my chicken sacrifice USB attempts with some old questionable milk that I poured over my Vera Lite, and it worked!!! … well, not quite :slight_smile:

First, I took y’alls advice and tested my old functioning adapter as well as my new adapter in my PC, and both worked as expected, so I don’t believe the hardware has failed (yet).

Then, I unplugged all USB devices and did a hard reboot, and then pulled the dmesg. It’s quite a lot, so I truncated it to the stuff where “usb” shows up. If you think more would be valuable, I will happily accommodate.

Here is the log on a fresh bootup with NO USB anything plugged (not devices, not the hub):

usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
usbcore: registered new interface driver rt2800usb
loop: module loaded
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
NET: Registered protocol family 24
ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
rt3883-ehci rt3883-ehci: Ralink RT3883 built-in EHCI controller
rt3883-ehci rt3883-ehci: new USB bus registered, assigned bus number 1
rt3883-ehci rt3883-ehci: irq 26, io mem 0x101c0000
rt3883-ehci rt3883-ehci: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
nf_conntrack version 0.5.0 (976 buckets, 3904 max)
xt_time: kernel timezone is -0000
ohci_hcd: USB 1.1 ‘Open’ Host Controller (OHCI) Driver
rt3883-ohci rt3883-ohci: Ralink RT3883 built-in OHCI controller
rt3883-ohci rt3883-ohci: new USB bus registered, assigned bus number 2
rt3883-ohci rt3883-ohci: irq 26, io mem 0x101c1000
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
Initializing USB Mass Storage driver…
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
USB Serial support registered for Belkin / Peracom / GoHubs USB Serial Adapter
usbcore: registered new interface driver belkin
belkin_sa: v1.3:USB Belkin Serial converter driver
SB Serial support registered for cp210x
usbcore: registered new interface driver cp210x
cp210x: v0.09:Silicon Labs CP210x RS232 serial adaptor driver
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
USB Serial support registered for Keyspan - (without firmware)
USB Serial support registered for Keyspan 1 port adapter
USB Serial support registered for Keyspan 2 port adapter
USB Serial support registered for Keyspan 4 port adapter
usbcore: registered new interface driver keyspan
keyspan: v1.1.5:Keyspan USB to Serial Converter Driver
USB Serial support registered for MCT U232
usbcore: registered new interface driver mct_u232
mct_u232: z2.1:Magic Control Technology USB-RS232 converter driver
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
eth0: link down
eth0: link up (100Mbps/Full duplex)
ramips-wdt: timeout value 60 must be 0 < timeout < 25
root@MiOS_35020087:~#

And now here is dmesg just after plugging the existing adapter that had been working forever directly into the Vera (skipping the hub to eliminate fail points):

usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
usbcore: registered new interface driver rt2800usb
loop: module loaded
PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
NET: Registered protocol family 24
ehci_hcd: USB 2.0 ‘Enhanced’ Host Controller (EHCI) Driver
rt3883-ehci rt3883-ehci: Ralink RT3883 built-in EHCI controller
rt3883-ehci rt3883-ehci: new USB bus registered, assigned bus number 1
rt3883-ehci rt3883-ehci: irq 26, io mem 0x101c0000
rt3883-ehci rt3883-ehci: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
nf_conntrack version 0.5.0 (976 buckets, 3904 max)
xt_time: kernel timezone is -0000
ohci_hcd: USB 1.1 ‘Open’ Host Controller (OHCI) Driver
rt3883-ohci rt3883-ohci: Ralink RT3883 built-in OHCI controller
rt3883-ohci rt3883-ohci: new USB bus registered, assigned bus number 2
rt3883-ohci rt3883-ohci: irq 26, io mem 0x101c1000
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
usbcore: registered new interface driver usbserial
USB Serial support registered for generic
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial Driver core
Initializing USB Mass Storage driver…
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
USB Serial support registered for Belkin / Peracom / GoHubs USB Serial Adapter
usbcore: registered new interface driver belkin
belkin_sa: v1.3:USB Belkin Serial converter driver
USB Serial support registered for cp210x
usbcore: registered new interface driver cp210x
cp210x: v0.09:Silicon Labs CP210x RS232 serial adaptor driver
USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver ftdi_sio
ftdi_sio: v1.6.0:USB FTDI Serial Converters Driver
USB Serial support registered for Keyspan - (without firmware)
USB Serial support registered for Keyspan 1 port adapter
USB Serial support registered for Keyspan 2 port adapter
USB Serial support registered for Keyspan 4 port adapter
usbcore: registered new interface driver keyspan
keyspan: v1.1.5:Keyspan USB to Serial Converter Driver
USB Serial support registered for MCT U232
usbcore: registered new interface driver mct_u232
mct_u232: z2.1:Magic Control Technology USB-RS232 converter driver
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
eth0: link down
eth0: link up (100Mbps/Full duplex)
ramips-wdt: timeout value 60 must be 0 < timeout < 25
root@MiOS_35020087:~#

I used the highly-technical method of scrolling-up-and-down-really-fast to compare the two as I’m not really sure what I’m looking for, but I can’t find anything really different (maybe a breakdown in my method of comparing).

I don’t know what the: dmesg | grep tty does, but it reports the following regardles of whether anything is plugged in (nothing, hub only, adapter 1, adapter 2, directly, through the hub), in all scenarios it reports:

serial8250: ttyS0 at MMIO 0x10000500 (irq = 13) is a 16550A
serial8250: ttyS1 at MMIO 0x10000c00 (irq = 20) is a 16550A

Any other thoughts?

Futzle, if I go with an IP-serial adapter, I take it there is a plug-in for those adapters to create some kind of virtual adapter that my security system (and hopefully my MCA-C5) can be pointed at instead of pointing them at the serial-usb adapter? In other words, my plugins that want to use the serial adapter don’t require modification?

There’s no doubt, Vera is not seeing your USB serial ports. I don’t know why, especially if one use to work but no longer does.

Probably. Responsible plugin authors give users the option of specifying a local serial port or a remote IP and port. It’s like one line of code so it’s hardly an imposition on the developer. I don’t use either of the plugins you mention, or if the authors are active on the forum.

In the absence of cooperation by the plugin authors, there is a little plugin called IPSerial which makes a remote host look like a local port. It may require a bit of archaeology to locate.

Or you can hand-edit your plugin implementation file to insert that one line.

Pro tip: here is how to see how the output of a command has changed over time:

# dmesg > /tmp/file1
# dmesg > /tmp/file2
# diff /tmp/file1 /tmp/file2

If you do something interesting between the file1 and file2 lines, say, connecting a USB device, that third command will show you the differences, which are likely due to whatever “something” you did.