If you’re like me, you have dozens of USB-A and USB-C cables. There are all of various quality, but I have no idea the history of each one. A lot of them came with other products and are total unknown quantity anyway.

Is there a tool to quickly test how good each cable is? Either a software or a hardware tool. Ideally it’d be nice to see something that can measure the power as well. Some charging cables are capable of fast charging, and some are not.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    17
    arrow-down
    1
    ·
    edit-2
    3 months ago

    Linux lets you see your USB tree with lsusb -t. That includes negotiated data transfer speeds.

    This doesn’t, strictly-speaking, give you the cable speed, but it does give you the link speed to another USB device, so if you have a computer with a fast USB controller and a fast USB device (probably a new hub would work well here), such that any limiting factor is the cable, you can see what speed they have negotiated over the cable, which I suppose effectively tells you what speed the cable can support.

    A snippet of mine:

    /:  Bus 004.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/5p, 20000M/x2
        |__ Port 005: Dev 005, If 0, Class=Hub, Driver=hub/4p, 5000M
            |__ Port 003: Dev 006, If 0, Class=Hub, Driver=hub/4p, 5000M
            |__ Port 004: Dev 007, If 0, Class=Hub, Driver=hub/4p, 5000M
                |__ Port 001: Dev 008, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
    /:  Bus 005.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/2p, 480M
        |__ Port 002: Dev 002, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 004: Dev 003, If 0, Class=Hub, Driver=hub/4p, 480M
                |__ Port 001: Dev 004, If 0, Class=Human Interface Device, Driver=usbhid, 12M
                |__ Port 001: Dev 004, If 1, Class=Human Interface Device, Driver=usbhid, 12M
                |__ Port 002: Dev 005, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
                |__ Port 003: Dev 006, If 0, Class=Audio, Driver=snd-usb-audio, 12M
                |__ Port 003: Dev 006, If 1, Class=Audio, Driver=snd-usb-audio, 12M
                |__ Port 003: Dev 006, If 2, Class=Human Interface Device, Driver=usbhid, 12M
    

    Those numbers there (20000M, 5000M, 480M, 12M, 1.5M) are the data transfer rates supported to the device.