ByteScope

USB Device Identifier

VID/PID を入力すれば、その正体が分かる。デバイスをつなげば、ブラウザが見せてくれるディスクリプタをすべて読める。

ID の照合はブラウザ内で完結します — デバイスの情報はどこにも送りません。

VID / PID を調べる

デバイスは不要です。手元にある書式のまま貼り付ければ、ベンダー名とプロダクト名が出ます。

USB\VID_1D6B&PID_0002 のような Windows のハードウェア ID も可。桁が足りなければゼロ埋めします。

ベンダー名で探す

選ぶと、その ID が上の入力欄に入ります。

つないだデバイスを識別する

ブラウザが既に持っているディスクリプタを読むだけです。デバイスを開いたり、占有したり、書き込んだりはしません。

ブラウザ対応状況

WebUSB が要るのはデバイス側だけです。どこで何が動くか

機能ChromeEdgeFirefoxSafari
VID/PID 検索とベンダー検索純粋な表引き — デバイスも許可ダイアログも不要、どのブラウザでも動作。対応対応対応対応
navigator.usb のデバイスピッカーデスクトップの Chromium 系のみ。Firefox と Safari は WebUSB を実装していません。対応対応非対応非対応
コンフィギュレーションディスクリプタの読み取り許可されたデバイスから、開かずにそのまま読み取ります。対応対応非対応非対応
Android でのデバイス接続Android では未検証です。Firefox はどのプラットフォームでも WebUSB を実装しておらず、Safari は Android に存在しません。未検証未検証非対応対象外
キーボード・ウェブカメラ・ストレージ・スマートカードChromium はこれらの保護クラスをどの OS でもピッカーに出さないため、ID による検索でしか調べられません。非対応非対応対象外対象外

検出されたブラウザ機能

  • navigator.usb
  • セキュアコンテキスト (HTTPS)

このツールについて

USB デバイスは必ず 2 つの 16 ビット数値で名乗ります。メーカーごとに割り当てられたベンダー ID と、そのメーカーが機種ごとに決めるプロダクト ID です。OS がドライバを選ぶ基準もこの 2 つで、lsusb やデバイスマネージャー、dmesg が表示するのもこの番号。フォーラムで最初に聞かれるのもこれです。このページは、その番号を名前に戻します——手で入力しても、実際につないだデバイスから読み取っても構いません。

何もつながずに VID・PID を調べる

手元にある形のまま貼り付けてください。1d6b だけでも、0x1d6b でも、lsusb が出力する 1d6b:0002 の組でも、Windows のデバイスマネージャーが詳細タブに出す USB\VID_1D6B&PID_0002 というハードウェア ID でも通ります。ベンダー名はすぐ表示され、その組み合わせが登録されていればプロダクト名も出ます。番号を覚えていなくても、logitechrealtek のように社名で検索して一覧から選べます(各社の登録製品数つき)。こちらはデバイスも許可ダイアログも特定のブラウザも不要——ただの表引きなので、Firefox でも Safari でも Chrome と同じように動きます。

つないだデバイスを識別する

Chromium 系ブラウザなら、接続ボタンからピッカーでデバイスを選べます。すでに許可済みのものは自動で並びます。各デバイスについて、ベンダー ID とプロダクト ID を名前つきで、デバイスクラス・サブクラス・プロトコル、デバイスが申告する USB 規格バージョン、リリース番号、そして公開していればメーカー名・製品名・シリアル番号を表示します。その下はコンフィギュレーションディスクリプタ——各インターフェイス、代替設定ごとのクラス 3 点セット、エンドポイントの番号・方向・転送タイプ・パケットサイズまで。ただのシリアル変換器だと思っていた機器が HID インターフェイスも名乗っていた、といった発見はここから出てきます。

名前の出どころと、外に出ていくもの

名前の元データは linux-usb.org の Linux USB プロジェクトが管理する usb.ids です。lsusb が読むのと同じ一覧で、誰でも登録申請できるボランティア運営のデータベースです。同梱しているバージョンは検索ボックスの横に表示しています。更新はこちらの手作業なので、先月出たばかりの機種は空欄になることがあります——名前が出ないのは「まだ誰も申請していない」だけで、偽物という意味ではありません。ファイルは最初の検索時にこのサイトから取得してタブ内で解析し、あとはすべてローカル処理です。入力した ID も、接続したデバイスの情報も、どこにも送信されません。アクセス解析に残るのは「このツールが使われた」ことだけです。

よくある質問

USB の VID と PID とは?

VID(ベンダー ID)は USB Implementers Forum が企業に割り当てる 16 ビットの番号、PID(プロダクト ID)はその企業が機種ごとに付ける 16 ビットの番号です。ドライバが読み込まれる前に、ホストが相手を見分けるための識別子がこの 2 つです。それぞれ 16 進 4 桁で書き、よく見かける 1d6b:0002 という表記は VID:PID をコロンでつないだだけのものです。

検索ボックスには何を貼れる?

番号だけ(1d6b)、0x 付き(0x1d6b)、どちらの書式の VID:PID の組でも、スペース区切りでも、Windows のハードウェア ID(USB\VID_1D6B&PID_0002)でも受け付けます。桁が足りない場合はゼロ埋めするので、90009 として扱います。16 進として不正なものは、黙って切り詰めずにその場でエラーにします。

デバイスが一覧やピッカーに出てこないのはなぜ?

接続したデバイスの読み取りには WebUSB を使いますが、実装しているのは Chromium 系だけです。Firefox と Safari にはピッカー自体が存在せず、そこで使えるのは上の手動検索です。Chrome でもキーボード・マウス・ウェブカメラ・大容量ストレージ・スマートカードなど保護対象クラスのデバイスはピッカーに出ませんし、ドライバに排他的に押さえられている機器も出ないことがあります。いずれも手動検索側には影響しません。

接続するとデバイスを開いたり書き換えたりする?

しません。許可した時点でブラウザが渡してくれるディスクリプタを読むだけで、open() を呼ぶことも、インターフェイスを占有することも、転送を送ることもありません。抜けば元どおりですし、アドレスバーのアイコンから許可を取り消すこともできます。

何かアップロードされる?

いいえ。ネットワーク通信は usb.ids をこのサイトから取得する 1 回だけで、検索そのものはタブ内のそのコピーに対して実行されます。入力した ID、デバイス名、シリアル番号がページの外に出ることはありません。

ベンダー名が違う・古い気がするのは?

usb.ids は公式登録簿の書き出しではなく、コミュニティが作っている一覧だからです。企業は買収され、社名を変え、ID を使い回しますが、誰にも更新の義務はありません。すでに存在しない社名が残っていることもあれば、新製品がまるごと未登録のこともあります。名前は有力な手がかり、番号のほうが事実、と考えてください。