back to article Open-source hardware hacking effort 'smacked down' by USB overlords

The USB Implementers Forum (USB-IF), the organisation that oversees the USB standard, has apparently sent the director of a small British electronics firm away with a flea in his ear for daring to suggest how it could make the lives of open-source hardware developers easier and cheaper. Arachnid Labs’ Nick Johnson decided that …

COMMENTS

This topic is closed for new posts.
  1. Anonymous Coward
    Anonymous Coward

    Is that unique ID sent out over the Internet along with a directory listing of what's on the USB device?

    Paranoia two months ago. A valid question today.

    1. Destroy All Monsters Silver badge

      No, but you can get the database of IDs here:

      The USB ID Repository

      So, getting listed in that database is lawyer-assisted goldening of balls, I hear?

      1. Anonymous Coward
        Anonymous Coward

        looks like rent seeking, smells like rent seeking ...

        I just took a peek at their site and found this gem.

        'The database is maintained by volunteers like you, ...'

        so if this is a volunteer led effort, where the hell is the 5 grand going ?

        1. Dan Daniels

          Re: looks like rent seeking, smells like rent seeking ...

          > so if this is a volunteer led effort, where the hell is the 5 grand going ?

          The website listed is a public Linux-USB ID database; it is not the USB Implementers Forum, which maintains the real database.

          Besides operational costs, my understanding was that the high "entrance" fee exists to ensure that only "serious" vendors are assigned a Vendor ID. The USB Vendor ID, which is a hardware register within a USB device, is only 16-bits per specification, greatly limiting the number of vendors that can sell USB devices. At the time the specification was created, no one considered that a USB peripheral could be implemented with a microcontroller or FPGA, so it was assumed there would be a limited number of manufacturers capable of creating USB devices.

          1. John Smith 19 Gold badge
            WTF?

            Re: looks like rent seeking, smells like rent seeking ...

            "At the time the specification was created, no one considered that a USB peripheral could be implemented with a microcontroller or FPGA, so it was assumed there would be a limited number of manufacturers capable of creating USB devices."

            This is one of those really stupid committee decisions. There will never be more than 64K vendors in the whole world.

            Except

            Vendors change. They merge, de-merge, go bankrupt and some are little operations. There appears to be be no "Junior" membership of the organization either.

            Seriously. ROM is cheap

            1. Dan Daniels

              Re: looks like rent seeking, smells like rent seeking ...

              > This is one of those really stupid committee decisions. There will never be more than 64K vendors in the whole world.

              The USB configuration header was based on the PCI configuration header to make it easier to reuse plug-and-play driver infrastructure. Basically, USB discovery works a lot like PCI discovery, at least as far as driver loading goes.

              PCI was created in the early 1980s. FPGAs did not exist and creating ICs was limited to large corporations and universities that could afford to tape-out designs. Transistors were expensive and had to be justified, so at the time, it was reasonable assume there would be few vendors capable of creating PCI devices and to limit the Vendor ID size to 16 bits.

    2. Dan Daniels

      > Is that unique ID sent out over the Internet along with a directory listing of what's on the USB device?

      The USB Vendor ID is a hardware register within the USB device itself. It is used to support plug-and-play driver discovery along with the USB Product ID. It is unique to a USB vendor, but every USB device from that vendor will have the same USB Vendor ID, while different products will have different USB Product IDs.

  2. Neil Lewis

    So, if the forum insists on being so restrictive, fork.

    A new USB ID standard is clearly needed for open source hardware, which would likely have no problem finding support from free software. No need to play the forum's game at all. You'd need to install an extra piece of free software to work with free hardware in order to bypass the restrictions. Big deal.

    1. Charles 9

      And what if your open-source signature happens to cross with one of the Forum's signatures? That's the main reason for the standards: to prevent confusion.

      Perhaps the best solution (provided they can obtain it) is to obtain a single Vendor ID and combine it with a single Product ID (with a class of 0xEF--Miscellaneous) and use them to indicate that the device will use a USB SUBsystem that can be used to support open-source hardware in its own way. Perhaps one of the already-open providers can supply one product ID--say 0xFFFF, and use that as a magic number to invoke a new USB driver system. Since it would be using an already-existent ID, what could the Forum do about it?

      1. Jordan Davenport

        One option might be to use an incompatible format for the ID, one that would require the additional software mentioned by the original poster. That piece of software would have to operate at a pretty low level, though.

        1. Anonymous Coward
          Anonymous Coward

          > One option might be to use an incompatible format for the ID

          The USB Vendor ID is a 16-bit unsigned integer with no format.

      2. This post has been deleted by its author

    2. This post has been deleted by its author

    3. the spectacularly refined chap

      So, if the forum insists on being so restrictive, fork.

      A new USB ID standard is clearly needed for open source hardware, which would likely have no problem finding support from free software. No need to play the forum's game at all. You'd need to install an extra piece of free software to work with free hardware in order to bypass the restrictions. Big deal.

      That doesn't work. The VID assignment process is predicated on signing the USB Adopter's Agreement. This is a reciprocal arrangement that grants all adopters royalty-free licences to any underlying IP (patents etc) needed to make the underlying technology work. If you don't sign the agreement with the USB-IF you don't get those rights.

      For the private developer working on their kitchen table that isn't an issue but it does mean you can't sell any rip-off devices. Which kind of leaves you where you were when you started unless you are willing to risk umpteen patent lawsuits.

      Yes, this is definitely a problem and has been for a number of years. The USB-IF started clamping down on third-party licensing a few years ago for this very reason, but ultimately your options amount to either paying a one-time fee to the USB-IF or doing a patent search and attempting to identify all underlying patents and licensing those with the relevant rights holders.

      That process is going to cost far more than $5000. It would do so even under FRND terms, not there are any FRND undertakings given or asked for outside the scope of the Adopter's Agreement. The door fee at first sight certainly seems to be a decent chunk of change, but in reality the single-fee model makes the legalese for USB far less problematic than many competing interfaces.

      1. Gordon 10

        Lighting/Thunderbolt

        Out of interest how much does it cost to go here? Definately more on the hardware side and knowing Intel and Apple more on the licensing side?

      2. Suricou Raven

        Patents.

        USB 1.1 came out in 1996. US patent term is 20 years. So any essential patents must expire by 2016. Give it a couple more years, and that problem will be solved. So long as you don't need USB2.0. Patent terms have so far avoided the state of perpetual extension that became of copyright.

        There's still the possibility that a troll might have a post-1996 patent which they claim is still essential to USB. Such a claim could be disproven by pointing to USB as prior art, but the legal costs in fighting even this trivial-to-win case are going to be far more than most open-source projects can afford. Also, you'd have to be very careful about not including any post-1996 revisions that might include patented technology.

  3. Nigel 11

    Dead vendor squatting?

    How about finding a vendor ID for a vendor that long ago went out of business, and "squatting" that with openly allocated product IDs that the defunct vendor never used (and in light of its corporate death, never will).

    Not perfect, but maybe the right way to force the issue?

    1. Charles 9

      Re: Dead vendor squatting?

      According to the USB ID List, there's an unknown vendor with code 0xABCD and a product "PetCam" with a product code 0xCDEE. Perhaps this one with a Product code 0xFFFF?

      1. Robert Carnegie Silver badge

        Re: Dead vendor squatting?

        There was something about a $4,000 yearly membership fee.

        0xABCD looks a bit suspicious, doesn't it? PetCam... I suppose it might be a camera that your pet wears at it gads about and you can see later what it's been up to, but the USB cord would be a bit awkward.

        A bit like the kitten with the magnetic collar to open the cat flap, sitting mewing where it's stuck itself to the refrigerator...

    2. HollyHopDrive

      Re: Dead vendor squatting?

      Here's an idea - why don't they buy a vendor ID, then use that to invent as USB dongle that has a different type of interface. Lets call it BSU for arguments sake.

      Now this device has a USB plug at one end (obviously) and a BSU interface at the other. You can now licence or give away BSU vendor ID's depending upon your need.

      Then sell some USB to BSU converters and some bridging drivers to make 'legecy devices' work on the new BSU interface. Also, put the BSU specification, hardware and design under GPL or some such like. So now Intel or Asus or whoever can licence free put BSU devices on their motherboards.

      Hardware manufacturers can then also start making BSU devices without licence fees.

      While clearly a mad idea - would it take off? I'd certainly be willing to pay some crowsourcing to find out plus the chance see that buch of USB controlling goons fucked up and put out of business.....

      Nobody likes a bully.....

      1. Charles 9

        Re: Dead vendor squatting?

        But that would essentially defeat the "U" in USB (Universal). Part of the goal is to use USB more universally. It would be much easier to use a single Vendor/Product ID combination to indicate an alternate product code scheme for them. This could be implemented all in software without any need to change out existing USB hardware.

      2. david 12 Silver badge

        Re: Dead vendor squatting?

        >that has a different type of interface. Lets call it BSU for arguments sake.

        Let's call it Bluetooth for aruments sake.

    3. Gordon 10

      Re: Dead vendor squatting?

      Take that one step further and find someone who had a VID and went bust/into admistration and buy them along with the rights to use their VID. With a bit of searching effort you could probably find one with no other assets for < 5k.

  4. dssf

    INT WTF is that forum smoking? Please, give me some so I can de-discombobulate...

    INT WTF is that forum smoking? Please, give me some so I can de-discombobulate...

    "The forum’s response, we're told, was thus: a cease-and-desist request demanding written assurances from Johnson that he “will no longer promote the purchase of a community vendor ID or product IDs for sale, transfer, or use by a third party”. It also apparently told him to “delete all references to the USB-IF, VIDs and PIDs for transfer, resale or sublicense from your website and other marketing materials”."

    Sounds like that not-for-profit is going through a pre-apoplectic fit, asking him to retract his request lest he gain traction or give ideas that will become unstoppable ideas the not-for-profit gatekeeping entity cannot withstand.

    If that is true, if the forum really said that, then I hereby hurl at it words of utter contempt and venom and vile that cannot even yet be formulated in the only language I can speak (English). And, if that forum indeed asked the petitioner to remove from his OWN SITE the ideas and requests he is seeking, then that forum is indeed deserving of the utmost in competition.

    Maybe, to jar them out of their entrenched position, someone needss to make a "shim" into which other products would fit. Then, a maker or small-run devices need only LABEL his/her product, etc in a code, and embed an image of the product so that the consumer or prosumer can readily identify it by burned-in identifying and image information. And, if a maker of short-run devices can, then he/she should make it "writable" to the extent that consumers/prosumers can assign their OWN asset tag or property information for their own inventory/asset purposes. That can "disambiguify" what device is what. If a series of them can be daisychained, then color-coding or labeling them would be necesssary anyway, especially if in a rat's nest arrangement in a dozen or more.

    Some entities are frackin cozy-comfy cock-blocking gatekeepers that get a little too powerful and need a boot or a booting. AS I SEE THINGS, he is not making an unreasonable request. If it happens to upset or disturb an entity/not-for-profit that would see its business model implode from legit competition (not made-up, politicial or vindictive competition backed by destructive levels of backing), then too bad.

    This sounds as contentious (to some) as ICANN or other entities gatekeeping and selectively billing for various extensions to the Internet.

  5. DJO Silver badge

    Split IDs

    If it's $5k for a vendor ID with 64k product ID's then 1 vendor ID could be split into 4096 blocks of 16 product IDs, sell each block for $5 plus $1 year per device produced would more than cover the $5k and any surplus would cover administration costs. There's no technical or economic reason except discouraging small businesses, hobbyists and students why the USB IF couldn't implement such a scheme.

  6. GloriousVictoryForThePeople

    They should just get on and do it.

    USB-IF can huff and puff and threaten to pull the vendor id, but if hundreds of products around just ignore them and use it, no other manufacturer in its right mind would accept that VID, and so it would de-facto remain free.

  7. ~mico
    Mushroom

    I wonder...

    Do they have legal basis for their Cease&Desist letter? Is it illegal to merely express an idea nowadays? I think their USB driver needs rebooting...

  8. ecofeco Silver badge

    Frankly tired of USB

    USB is a great concept. Too damn bad every mfg makes the connectors more flimsy than used toilet paper.

    Can we move on to something better now?

    1. the spectacularly refined chap

      Re: Frankly tired of USB

      I'm beginning to feel exactly the same now. It's interesting to read the USB 1.x specs which make great play of their only being two connectors and one cable. Even then things weren't completely perfect because you still had low-current and high-current ports. Now if you go through all the possible permutations - version, connector, current, speed (which is not implied by version), on the go - you end up with upwards of 30 different USB ports.

      Most of my work is embedded engineering and these days we try to avoid USB where ever possible, it's simply too much work keeping up to date. The lack of any consistent host-side API is a big no-no too. Ethernet typically adds a couple of pounds per device but the software stack (at both host and device ends) is an order of magnitude more straightforward: unless you are stamping out 10000+ it generally ends up cheaper, especially if you need to support more than one host platform.

    2. Evan Essence
      Flame

      Re: Frankly tired of USB

      How much time has been wasted around the world, since USB came along, with consumers trying to insert a plug one way and failing, turning the plug over and trying it that way, then turning the plug over again and finally succeeding in inserting it the way they tried in the first place? FFS.

  9. Oh Homer
    Mushroom

    "Cease and desist"? Seriously?

    Barking a "cease and desist" order to someone who's merely asking a polite question, is not exactly what one expects from a non-profit standards organisation, especially when the question is nothing more sinister than an appeal for help implementing this standard, for the benefit of other open standards.

    But then I forgot, like so many of these "standards" bodies, the USB-IF is basically just a front for monopolists, specifically in this case Apple, Microsoft and Intel.

    https://en.wikipedia.org/wiki/USB_Implementers_Forum

    Personally I'd say "screw you" and find some alternate mechanism to identify USB hardware, preferably one that doesn't require spending five grand on a poxy four-digit number.

  10. Paul Hovnanian Silver badge

    Protecting USB-IF Members' Interests?

    It is my understanding that Texas Instruments will share their VID for their USB chipset and issue a PID to customers who don't want to go with their own VID/PID setup.

    Similar to what Arachnid proposes to do except that TI is selling a product. And perhaps they want to protect this market from those who chose to go with a competitor or bit-bang their own USB implementation.

    http://www.ti.com/mcu/docs/mcuorphan.tsp?contentId=65684&DCMP=USB&HQS=Other+OT+430usb

  11. rurwin

    Patent Exhaustion

    What is everyone getting so worked up about. This is the way patents work, and it is perfectly rational, including the existing companies who issue product IDs.

    By implementing the USB interface, a product necessarily uses patented technology and techniques. The USB-IF is willing to license those patents at the rate of $4000 plus $5000 per vendor (IIUC). In order to build a USB interface that is the price you have to pay. If you don't like that then go ahead and demolish the patent system.

    On the other hand companies who have already paid that license fee can sell you a chip that implements the USB interface. Because they have paid the licensing fees, the chip is licensed and the patent is "exhausted". Similar to how you can sell a second-hand book without paying royalty, you can implement a USB interface free of charge if you use a device for which the royalty fee has already been paid.

    What no company can do, especially an open-hardware consortium, is to enter into legal agreements on behalf of random members of the public, before those members are even known. The concept is clearly nonsensical. It would be the same as asking a publisher for a a book so you could copy it and give it away free. It is not going to happen and it is no surprise, couched in those terms, that the USB-IF's response was a cease and desist.

    1. Charles 9

      Re: Patent Exhaustion

      That would only be true if the USB-IF were actually enforcing patents pertaining to the system. A thorough search, however, only turns up patents for extensions of the technology (such as device implementations) rather than patents for the base technology itself. A legally-binding C&D letter would likely cite the patents in question, but we do not know what they are. Perhaps you can point us to them. Furthermore, the USB specification has been around for nearly 20 years. Allowing time for development of the implementation, there is a likelihood some or all of the base implementation patents (if any) are approaching expiration, meaning they will be accessible soon to all and sundry.

    2. This post has been deleted by its author

  12. Jason Bloomberg Silver badge
    Headmaster

    There should not really be any problem here

    Silicon companies (Atmel, FTDI, Microchip, TI etc) can and do sub-license PIDs because they make the hardware to which the VID applies; it is their component used in the product which has their VID.

    The same can be done by FPGA manufacturers and other providers of silicon for open hardware so there should not be a problem except for people building USB interfaces using discrete logic and there are very few of those.

    If open hardware silicon suppliers are not running PID sub-licensing schemes that is what the community needs to be addressing. Insisting on only using suppliers who do sub-license should soon see all the players fall in line if they want a part in that open hardware business.

    1. Anonymous Coward
      Anonymous Coward

      Re: There should not really be any problem here

      You hit the nail on the head here really.. I don't think there is a problem with custom ids for the same piece of usb hardware (with the clients own hardware behind it) but giving out sub-licensed IDs for anything and everything is basically selling something like a "sub VID". The USB-IF might have been a bit heavy handed but it's easy to see the problem with the guy's idea.

      1. Dan Daniels

        Re: There should not really be any problem here

        Keep in mind that the Vendor ID and Product ID together tell the OS what driver to load for the device.

        The reason the USB-IF is heavy-handed with allocation of Vendor IDs is to ensure that vendors do not accidentally use conflicting Product IDs. If multiple products are available to the public with the same Vendor ID and Device ID, drivers will conflict with each other, leading to erratic behavior and kernel panics.

        Part of the charter of the USB-IF is to promote interoperability and reliability of USB devices.

        1. Charles 9

          Re: There should not really be any problem here

          But the same product ID can mean completely different things between two different vendors.

          For example, Product Code 0x0000 is a CD-RW drive for one vendor (0x03EE Mistumi) and a USB Hub for another vendor (0x0403 Future Technology Devices International, Ltd). Within each vendor, the product list is unique, and it's the COMBINATION of the two the tells the OS which driver to load up.

          Anyway, this is simple to get around. Just use ONE specific Vendor/Product combination to indicate you need to invoke a subsystem driver to look up what you need now from further details. It involves a little more tedium, yes, but it's only done one per insertion and it can mostly be done in software. All the USB device itself would need is some additional way to describe itself, probably using some other basic capability. So in exchange for just ONE of the IF's codes (and if you borrow a code from an existing vendor, there may be little the IF can do about it), you can open up a whole new space of devices AND still be within the original specification.

  13. Wize

    Non-licenced USB

    What if you produced your device still using the 'test' ID?

    You wouldn't be able to claim it was a USB device, in the same way that some Sony music CDs did not have the standard CD logo, because they had some autoplay software loaded on them and therefore did not follow the correct standard.

    You could still say it plugs in to a USB port on whatever devices you are manufacturing for, you just couldn't logo your own device with the USB logo. And I'm sure that everyone knows what the connector looks like these days without even having to say what it is.

  14. tiger99

    If you think that this is bad (it is!), take a look at the truly obnoxious situation with HDMI. I need to make a device, which may cost about £100, and sell maybe 10 to 100 (maybe none) to those with the same particular need. The entire revenue would come nowhere near to covering the initial licence fee that you need, just to get a look at the specs. I can't even use someone else's chipset, because I can't get data sheets without a licence.

    It is all locked down tight in a completely misguided attempt to prevent vido piracy. As it happens, it doesn't, because serious pirates have DVD and BluRay bit-copying systems etc. My videos happen to be made by me, with full permission of all those involved, yet I am penalised by this.

    There is no reason why a completely free and open interface can not be developed. Expansion cards could be supplied for desktop PCs in the first instance, laptops would need some kind of USB (oh no!) or PCMCIA (or the later thing whose name I forget) adaptor. But if it gained popularity, motherboard manufacturers would incorporate it soon enough. The thing that would prevent it becoming universal is that the locked-down Apple empire would never adopt it.

    If someone does develop a new interface, I suggest using a circular plug, like a jack or DC power connector, to make it easy to connect for the elderly and those who are slightly visually challenged, avoiding the hassle of which way around a micro USB goes. Designing a new connector will be about half the development budget for the prototype.

    Maybe the situation with Firewire would be better than USB, but sadly it seems to be becoming obsolete. It was useful, as it was fast and could supply a serious amount of peripheral power.

    Or, with IPv6 coming along, why not just equip absolutely everything with Ethernet? I would welcome the thoughts of others on that subject.

    1. Anonymous Coward
      Anonymous Coward

      I assure you that HDMI poses for us no difficulty in obtaining high-definition media either from retail disc, from broadcast HDTV, or even PPV cable event.

      - A Pirate

    2. Charles 9

      The problem with circular plugs is that you need to be able to (1) establish a connection to several pins, for the data at the least (USB uses a pretty simple 4-plus-ground setup--two for voltage, two for data), AND (2) be electrically safe by designing it so the ground pin/shield touches first. Since USB transmits power, you can't rely on a setup like the 3.5mm plug since you might short something, not to mention the socket design leaves something to be desired in the realms of reliable connectivity. That's why even the Lightning connector is oblong: it's the most practical way to achieve both (1) and (2) in a robust way. Note that these connectors weren't just shots in the dark but carefully-considered designs with significant goals in mind (for USB, one consideration was socket grip--not too tight, not too loose).

    3. Anonymous Coward
      Anonymous Coward

      "There is no reason why a completely free and open interface can not be developed. "

      So off you go and develop it, then.

      Your problem is that 99.999999% of the users of HDMI don't have a problem that your free and open interface can solve for them, so there's no compelling reason for them to change to your interface. HDMI "just works" for a large enough set of scenarios (both on the producer and the consumer side) that the market has accepted it - try selling a TV without HDMI and see how far you get. DisplayPort might displace it in the future, but only because it offers simple "backward convertibility".

  15. Anonymous Coward
    Anonymous Coward

    shun them

    create a new registry that is open and free of charge/industry supported foundation with technical requirements for admission instead of unbelievably stupid ideas like "if you have enough money you must be legit" and after a grace period, invalidate the id's supported by these losers. if closed source OS vendors want to use them, fine. open source OS's can choose to support the "Openusb" scheme and the hardware vendors can liscense with both, either or neither and let the chips fall where they may. i always assumed "we" had a reasonably open system for assigning/obtaining vendor and product id's. this is embarrassing and maddening. these are the kinds of organizations that need to be run out of town on rails! orgs holding standards hostage needs to be iradicated. this mentality was normal 10 years ago. now it should be considered an act of agression. give them a warning then abandon them. if they try to cause trouble, make them sorry they exist!

This topic is closed for new posts.

Other stories you might like