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.

You are viewing a single thread.
View all comments
16 points
*

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.

permalink
report
reply
1 point
*

@gedaliyah@lemmy.world The cables do have an “emarker”, which does let them indicate identifying information, but it apparently at least as of eight months back, that information wasn’t exposed by the Linux kernel:

https://old.reddit.com/r/UsbCHardware/comments/qm34dj/how_to_check_usb_version_of_a_usbc_cable/

Not yet. Some low-level changes need to be made to the Linux kernel and the underlying UCSI interface, so there’s not anything you can build at the moment to make it happen.

If you happen to be a skilled linux kernel engineer with experience in USB specifications and more specifically the UCSI specification, and want to help, then contribute on this mailing list: linux-usb@vger.kernel.org

Dunno about other OSes. There’s also dedicated diagnostic hardware, but unless you want that, the above approach I gave may be your best bet currently.

permalink
report
parent
reply
1 point

Neat

permalink
report
parent
reply

Ask Lemmy

!asklemmy@lemmy.world

Create post

A Fediverse community for open-ended, thought provoking questions


Rules: (interactive)


1) Be nice and; have fun

Doxxing, trolling, sealioning, racism, and toxicity are not welcomed in AskLemmy. Remember what your mother said: if you can’t say something nice, don’t say anything at all. In addition, the site-wide Lemmy.world terms of service also apply here. Please familiarize yourself with them


2) All posts must end with a '?'

This is sort of like Jeopardy. Please phrase all post titles in the form of a proper question ending with ?


3) No spam

Please do not flood the community with nonsense. Actual suspected spammers will be banned on site. No astroturfing.


4) NSFW is okay, within reason

Just remember to tag posts with either a content warning or a [NSFW] tag. Overtly sexual posts are not allowed, please direct them to either !asklemmyafterdark@lemmy.world or !asklemmynsfw@lemmynsfw.com. NSFW comments should be restricted to posts tagged [NSFW].


5) This is not a support community.

It is not a place for ‘how do I?’, type questions. If you have any questions regarding the site itself or would like to report a community, please direct them to Lemmy.world Support or email info@lemmy.world. For other questions check our partnered communities list, or use the search function.


Reminder: The terms of service apply here too.

Partnered Communities:

Tech Support

No Stupid Questions

You Should Know

Reddit

Jokes

Ask Ouija


Logo design credit goes to: tubbadu


Community stats

  • 10K

    Monthly active users

  • 2K

    Posts

  • 54K

    Comments