Skip Navigation

You're viewing a single thread.

11 comments
  • I have 55 USB ports and 16 RS232 ports on my machine at work.

    So yes, I'm interested in this. Thanks!

    • I'm interested in why you need all those ports.

      • I work in a company that makes a range of measurement devices that talk over serial port. Some talk UART, some talk RS232, others talk RS422. I need to be able to test several of those at the same time - or maybe not, but when I'm sitting at home and working remotely, I like to have one of each kind already connected, ready to use. That's one USB port (for a FTDI USB-to-serial converter cable) or real RS232 port connected per device.

        All those devices also have a second UART serial port to dump tracing information onto. Most of my test devices have the trace serial port connected also. That's another USB port per device.

        And then most - not all, but most - have a JTAG programmer attached to them, to debug then and reflash their firmwares. That's one USB port for each JTAG programmer.

        And I have several programmable bench power supplies controlling power to several batches of those devices. Each one of those power supplies uses one USB port.

        And I have 3 cameras watching the goings on with those devices, one per USB bus (Linux won't allow more for bandwidth reason) to make alignment easier.

        And to debug some of the devices, I have them talking through "snoop cables", i.e. a regular serial cable to control the device, but with the Rx line connected to a second cable's Rx line, and the Tx line connected to a third cable's Rx line, so that, by watching what comes through the 2 snoop cables, I know exactly what gets transferred to / from the device, if I have any doubt about what goes on at the hardware level.

        And then I have a couple of USB-controlled precision tilt tables to align 3 of the devices. That's 3 more USB ports - although the tilt table's controllers also act as USB hubs, so I get two USB ports back for every main one I use.

        And then I have oddball devices connected, like a servo controller for another application, a USB-to-serial cables out of which I only use the RTS line to turn a laser pointer on and off.

        And then a trackball, a keyboard, a 3D Space Mouse for CAD'ing...

        This is one of my USB hubs:

        I've been at the same company doing this stuff for years. Things add up over the years 🙂

        • Yep, knew it was worth asking that question.

        • I hope you have a spreadsheet of all that. I'd smoke something pretty quick trying to remember which port has the power supply for X device.

          • No need. I have better than that: dev file aliases. So I have for example

            /dev/crs1, the device
            /dev/crs1_pwr, the PSU for that device (if it's powered alone)
            /dev/crs1_snoop_rx, the serial cable that snoops on the device's Rx line
            /dev/crs1_snoop_tx, the serial cable that snoops on the device's Tx line
            /dev/crs1_jtag, the JTAG adapter that programs / debugs that device
            /dev/crs1_tilt_x, the X axis of the tilt table the device is mounted on
            /dev/crs1_tilt_y, the X axis of the tilt table the device is mounted on

            Each point to some nondescript /dev/ttyUSB? or /dev/ttyACM? but the aliases have meaningful names, so I don't need to remember anything.

            That's the power of udev 🙂 And also one of the many reasons why Linux is better than Windows.

11 comments