4 ms·
Too soon! I’m currently debugging an issue where a USB 3.2 Gen 2 scientific camera is unable to negotiate a connection with Linux. Under closer inspection it se
by dayjah 6y ago
Too soon! I’m currently debugging an issue where a USB 3.2 Gen 2 scientific camera is unable to negotiate a connection with Linux. Under closer inspection it seems the USB 3.2 Gen 2 port on this relatively modern Intel NUC is being identified by the kernel as being USB 2.0. No such issues under Windows; but we’re not deploying that to the field.
So I go a bit deeper: the chip is actually a thunderbolt chip (aka USB 4.0), which is able to emulate all of the USB specs. For reasons unknown, the two controller chips on this NUC present as four controller chips; each chip presents as one USB 2 root hub and one 3 root hub. One of the chips is only available via an internal header on the board. All of the externally available USB ports (3x USB 3 ports, 1x USB 2 port, 1x Thunderbolt port) all result in connectivity to the USB 2 root hub.
Every fiber in my being wants to work out wtf is happening here; but I’m resisting because fortunately we have a vendor that can replace this NUC with one from 2016 instead of this one from 2018.
I did, of course, peek at the spec and experienced the bone-shuddering realization of how complex this whole system is. No wonder Windows BSODd when Gates first demoed USB on stage ...