From c7b9fe90a6dc92bb7edf6b32849ab09f0e39de1b Mon Sep 17 00:00:00 2001 From: Adam Honse Date: Wed, 1 Apr 2020 16:57:56 -0500 Subject: [PATCH] Detect serial devices behind USB hubs --- serial_port/find_usb_serial_port_linux.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/serial_port/find_usb_serial_port_linux.cpp b/serial_port/find_usb_serial_port_linux.cpp index 8fd7400a..d076cd6d 100644 --- a/serial_port/find_usb_serial_port_linux.cpp +++ b/serial_port/find_usb_serial_port_linux.cpp @@ -58,7 +58,11 @@ std::string find_usb_serial_port(unsigned short vid, unsigned short pid) { char * usb_dev = strstr(usb_string, "/"); usb_dev++; - usb_dev = strtok(usb_dev, "/"); + char * usb_end = strstr(usb_dev, "/tty"); + *usb_end = '\0'; + + usb_end = strrchr(usb_dev, '/'); + *usb_end = '\0'; char usb_path[1024]; @@ -115,4 +119,4 @@ std::string find_usb_serial_port(unsigned short vid, unsigned short pid) return ret_string; -} /* find_usb_serial_port() */ \ No newline at end of file +} /* find_usb_serial_port() */