I’m tired of monkeying around with a powered USB hub and multiple USB to Serial adapters. I have had that working, but never for more than a few days. So, I’m trying a new toy that came in the other day: Gearmo USB RS232 Convert 4x. It’s one USB device with four serial ports dangling from it (FTDI chipset). I’ve plugged it in directly and also through my powered USB hub and have the same results.
When I telnet into my Vera Lite, everything looks beautiful. Here is the dmesg before and after comparison:
root@MiOS_35023548:~# dmesg > /tmp/dmesg-pre
root@MiOS_35023548:~# dmesg > /tmp/dmesg-post
root@MiOS_35023548:~# diff -u /tmp/dmesg-pre /tmp/dmesg-post
— /tmp/dmesg-pre
+++ /tmp/dmesg-post
@@ -243,3 +243,32 @@
ftdi_sio 1-1:1.2: device disconnected
ftdi_sio ttyUSB3: FTDI USB Serial Device converter now disconnected from ttyUSB3
ftdi_sio 1-1:1.3: device disconnected
+usb 1-1: new high speed USB device using rt3883-ehci and address 4
+ftdi_sio 1-1:1.0: FTDI USB Serial Device converter detected
+usb 1-1: Detected FT4232H
+usb 1-1: Number of endpoints 2
+usb 1-1: Endpoint 1 MaxPacketSize 512
+usb 1-1: Endpoint 2 MaxPacketSize 512
+usb 1-1: Setting MaxPacketSize 512
+usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0
+ftdi_sio 1-1:1.1: FTDI USB Serial Device converter detected
+usb 1-1: Detected FT4232H
+usb 1-1: Number of endpoints 2
+usb 1-1: Endpoint 1 MaxPacketSize 512
+usb 1-1: Endpoint 2 MaxPacketSize 512
+usb 1-1: Setting MaxPacketSize 512
+usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB1
+ftdi_sio 1-1:1.2: FTDI USB Serial Device converter detected
+usb 1-1: Detected FT4232H
+usb 1-1: Number of endpoints 2
+usb 1-1: Endpoint 1 MaxPacketSize 512
+usb 1-1: Endpoint 2 MaxPacketSize 512
+usb 1-1: Setting MaxPacketSize 512
+usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB2
+ftdi_sio 1-1:1.3: FTDI USB Serial Device converter detected
+usb 1-1: Detected FT4232H
+usb 1-1: Number of endpoints 2
+usb 1-1: Endpoint 1 MaxPacketSize 512
+usb 1-1: Endpoint 2 MaxPacketSize 512
+usb 1-1: Setting MaxPacketSize 512
+usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB3
However, none of the four adapters are showing up in the Vera ui6 GUI for me to use. Reboots, reloads, plugin/unplug at all different stages (including power cycling it with/without device plugged in). I’ve looked at the serproxy.ports discussions and manual adds, but I don’t think that’s the issue here (not sure though), and I’m pretty sure they dispensed with the file anyway since it doesn’t appear to exist on the Vera lite. I don’t think it’s a matter of the device failing to power up, because it’s all being detected like clockwork on the TTY side. And I get the same results when plugging it directly in, and also through my powered USB hub.
Any idea how to get these devices which are being picked up by the unit to show up in the GUI? Can I manually add the “Serial Port Configuration” entries to the GUI via some startup LUUP?
Actually I do think that serproxy.ports is what you are missing. The log you’ve listed shows that the kernel is recognizing the USB device. Now to tell the Vera layer it’s ok to talk to them, and to do that it’s the serproxy.ports file you need to edit.
Any tips on doing that? The items from CJ’s post describing the method doesn’t appear to apply any more. I have the device/vendor ids from lsusb, but nowhere to put them:
root@MiOS_35023548:~# lsusb
Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001
Bus 001 Device 004: ID 0403:6011
root@MiOS_35023548:~#
(I think the last one is the device, but I can plug/unplug to confirm…)
I’ve searched the entire structure from the root for serproxy.ports and I’m confident it’s not on my Vera, although other serproxy* files are:
I assumed they did away with that architecture, but obviously not! I added the file per the instructions in other threads, and at first was very hopeful. LUUP reloads and one of the adapters (USB3, which would be the 4th serial port) shows up in the serial config. However, not the other 3. Also, LUUP continues to load without ever stopping. Reboot, same thing. I pulled the serproxy.log file which was a complete guess (albeit with good odds of success). I have attached it hereto. Although I had to truncate it as it continually looped the exact same thing, until I deleted the serproxy.ports file again. Both the recurring loop and the “status quo” (no serproxy.ports) are in the attached.
While I don’t really understand it, I have a couple of guesses. From the log, it appears that serproxy.ports does it’s job, it recognizes the adapter, and recognizes all four parts of it as we can see from the earlier dmesg. It then actually says “==Created 4 child devices” which I love to see! However, I only actually see one of them in the serial config part of the GUI now as mentioned above, and LUUP just keeps reloading itself. The logs show that it recognizes all four, however they are all assigned the same id: “usb-rt3883-ehci-1” which is the same one which showed up in the serial config in the GUI. Should each not have their own id? The log shows the paths being different (usb0, usb1, etc), but the id being the same. This may not be it at all, but it was the only sense I could find from the logs…
I fear you may be right: there’s only one USB device but four serial ports, and something in serproxy is expecting a 1:1 relationship. It’s probably beyond our power to fix, since we don’t have the source to serproxy. You could try to get Vera support to look at it.
What to do next? You don’t have to use serproxy. All (“all”) it is doing is arranging for ser2net configuration and for creation of Vera devices that connect to the TCP ports that ser2net is listening on. If you run the strings command on /usr/bin/serproxy you can see (fragments of) some of the commands it is running. If you can replicate the same commands yourself then you may find that it works without using serproxy. You’ll have to experiment and keep copious backups for when you break something.
Best Home Automation shopping experience. Shop at Ezlo!