Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

An otherwise perfectly bog-standard anything-port (USB or otherwise) can be switched into being a non-standard port using an arbitrary electronic protocol simply by the two endpoints negotiating a switch. This negotiation may take place via the "core" protocol if that's necessary, or it can send something that is a known "error" case that complaint implementations will ignore but the secret implementations will use, or various things in between. Using an USB connector doesn't physically obligate a USB protocol.

For some examples, look at the high speed modem wars, with various proprietary protocols often running ahead of the standardized protocols by using various signals to indicate that two products of the same brand should switch to a specialized protocol. I recall a BBS I used that had a modem that was 2400bps, unless you had a Hayes 14.4 modem. Which nobody else ever did.



You almost never have USB link that directly connects two devices (host to function in USB parlance) except in case of PTP ("direct printing"). Any normal tree of USB links ("bus") contains some hubs in it, which have to understand your alternative protocol. And mayor reason why everybody uses USB is that there is large pool of silicon implementations of almost anything and well tested soft-IP so you don't have to spend large amounts of money on developing hardware dedicated to connecting two devices together, this essentially precludes anyone sane from coming up with some USB-like-but-not-quite-USB interface with same connectors. Actually, completely opposite thing happens now: many companies use completely standard high-speed interfaces (USB, PCIe...) on proprietary connectors (original XBox's controllers and memory cards, IBM/Lenovo's UltraPort/Bay, expansion ports of various mobile devices...) or with slightly stricter tolerances (to make it slightly cheaper, e.g. Intel's Direct Media Interface, which is essentially PCIe with less noise imunity).


I decided against mentioning the cost factor just because it didn't seem relevant. I certainly didn't mean that this was likely, but it certainly is possible, and if it's going to happen anywhere, on a console is where it will happen. If the Kinect did follow the original design and have onboard processing such that the stream coming out of it might actually have been considered proprietary by them, an inability to stick a USB hub between the Kinect and the XBox 360 may well have been considered by them to be a feature, not a bug.

The details of USB are mostly not germane to my point, which is that anything can pretty much do anything the designers want. (An exception for pointing out the hub issue, which doesn't affect all connectors.) Sure, there are cost/benefit tradeoffs, but that's always true.




Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: