趣味の電子工作などの記録。時にLinuxへ行ったり、ガジェットに浮気したりするので、なかなかまとまらない。
RSS icon
  • GitHubでUSBのProduct IDを小分けしてるようです

    投稿日 2015年 4月 4日 コメントはありません

    またいつものHack a Dayから。

    オリジナルのUSB機器を作るには、USBのベンダIDとプロダクトIDが機器ごとに必要なわけですが、これらを取得するには USB-IF(USB Imprementers Forum)から5000ドルでベンダIDのライセンスを購入する必要があります。ベンダIDを入手すると16ビット分(=65536機種分)のプロダクトIDが手に入りますが、ほとんどの会社はそんなにたくさん使いません。

    なので、この余ったIDをオープンソースのハードウェアプロジェクトに提供するようなことをpid.codesというプロジェクトがGitHubのリポジトリを使って行っているようです。(プロジェクトをforkすることでPIDを割り当てるということみたいです。ただ、なんでも割り当てられるわけではなく条件がある。)

    USBのベンダIDを取得する際の契約でIDの小分けは禁止されていて、実際にここで小分けされているベンダIDの0x1209(オリジナルはInterBiometricsという会社らしいです)はUSB-IFからライセンスを取り消されてしまっているようですが、かといって、USB-IFはこのベンダIDを他の第三者に割り当てることもできないので、結局は唯一無二のベンダID(とプロダクトID)として存在し続けるということになっているようです。

    OSレベルでベンダID 0x1209を拒否する実装でもしない限り、実質的には唯一無二のIDとして大きな支障なく使えてしまう、ということでしょう。Microsoft(ベンダID: 0x045e)もUSB-IFのメンバーのようです(https://www.usb.org/members_landing/directory/ で検索すると出てくる)ので、ひょっとしたらWindowsでは使えなくなる可能性はあるかもしれませんけどね。


    コメントをどうぞ(日本語のみ/Only in Japanese)

    日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)