自作回路でUSB EndPoint5 [無断転載禁止]©2ch.net
)()(()()((())()(((()(())())))((()))()((((()())((()))))(((())()(()))()()())))
)())((())(((()()))((()())()()))(())(()()()))())())(())(()((())))()()()(()(((
))()(()())())(())()))((((((()))((()))()()(())()(())()))()(())(())()())(()(((
)))))(()())(()))))()((()())())))()))(()()))))(()(((())(((((((())())()(((((((
)())((()))(())())(((()()()((())))())))()(()))(((()((()()()))((()((()))))(()(
))()))(((())()((()(()()(()((((())))))((()(()(((((()(())())))())())(())))()))
)()))(((((()))())((())())))))()()(())))())())))(((())((()((()(()()))(((()(((
)()(()(()()()()))((())(()((())))()())(()))((()()()((((())())(()()))))(()()()
)))()()())())(()()()(()(((())))((())()(()()(()))))(((()))))(())()()(((((())(
(()))()()(()())()))))))))(())(()()))(((((((())()((((()())())(())((())()())((
(()))()())(()(())((()())((()))())))))(()()))())((((()()())(())((()))(())((((
()())(())))))((())))()(((())))(())()((((()(()()()()(((()))))(()())(((()()))(
()()()(())((())())()()()())))()(())())(((()))))(())))))((())()(()((((()(()((
)()()(()((())()))()()))()()())((()())((()(()(())())(())()())())))(((((()()()
)(()))()()())))()))))(()((((())(()))()(((()())))()()))(()))((())(()(((()((((
)()())(()(((()()()(()()((()))()()()(()()))))))()()()()())())((()(()()))(((()
()()))(())))))()())(()))())(((()()())()((())()()((()())((()((((())()())()(()
)()))))(()((())(())(()(((((())((()(()))()()((()(())))((()())))(())))(()()())
)()())(()()()))(()()((()(((((()))()))))()))()()())()()))(())(()(()((()))((((
())(()())(((()(()()(())))(()(()(())))))((())((())(()()())(((()()))((())())))
)(((())())(((((()(((()))(()()()))(((())())()()()()())()()()((()))))()()())))
)(((()))())(()))()(()(())()())())(()(()()))(())((()(((((()()))())))((()(()))
()()()))()))((()(((())()(()(())()))())()((()()))()))()))(()()(())(()()(()(((
)()()(((())())))))(()((((()))())((()(()(()(()((((()(()))))())))((((())))))()
)()()((()()))))(((()()((())())((())()()))))((((((()))(()()()()()())()()())()
()))((())))()()(((()((())))()))(()(()))((((())()))))(()))((())((()()(())()((
(()(())))())()(()((()()))((((())()))))(()))(((())))(()((()())(()(((((())))))
()()))((()))(()(()((()(((())(())()()())((()())))()(()(()(())))()))()(()))(()
()))()()))))((()))()((((())())))()()(())))((()((())(()()))())(((()(()()((()(
(()(()())))))((()())))))(()))))(((((((()))((()))())(((()))((((()())((())))((
)())()))))))))(())))))))((()(((()((()())((((()(((()))())(())(()()()()((()(((
(())(()))()))()((((((())())(())()((())))())()())()()(()()))()((()(((((()))))
()((((((((())())((((()(())())()()()))()()(((()(()())))))()()))()))())))()(()
)))))))()())(()(()()))((((())))(())())))((((()(()((((()()(())))))(((()(())((
)())))))(((())(()()((()))())))))))(())())))()((()((()((((()())(()()((((((())
()))))(())((())()((()()(()()))))(()))(())(()()((())()((())()())))()()(((()((
)()()))(()(()))))))(())(()))))))()))(()((((()(()()(())(((((())()((((())(())(
())))()((()(())(((())((())(())(((()((())))()()))(())((()))(()))())))((()())(
()((((()((()(((()()))))))))))()(((((())(())()(((()()())))((())(())()(())))))
)()(()(())))(()())()(()((()))(())(()))(((((())())())))(()()((())))()()((())(
)))()(())((()(((()(((((()(()()((())))()()(((())))((()))))((()(())))))))()())
)())(()()()(())()())))())()()((()()()())()))(((()((()()))))(())())(((()((()(
()()))()()()((()(()()))()(())()))((()((()(())()(((()())()(()))))())()(()()()
)(())(((((())))())()()((()()(((()))))()))(()((())(())(()(((((((()))())))))))
)()())())(((()()((()()(())()(()())())()())))()(())(())()()())())())()(()((((
()))()()()(((())()(()((((()))()()(()(()(((())()(())(()()())((())()))))))))()
()((()()))))(()(())())(())(())))(((()()))()(()(((()))(())((()()((())(()())))
)()(())()))))())((()())(((((())()(()())))(())))((()()(()(()((()(()(())())())
))))()((()())()(()())()()())))((()())))((((()(()))))))()()()(()((((())(()(((
()())()))(()())()))()(())(((((())()()()()())(()))((()(()())((((())((()))())) Composite複合デバイスなUSB機器のreport descriptorを表示できるような
ツールはありませんか?
device descriptorならMS謹製のUSBViewで確認出来るんですが。
いくつかフリーのツールを試してみましたらComposite複合デバイスだと表示
されないものばかりでした >>4
回答になっていないけどPC-UNIX系ならその辺の情報を見られるコマンドがあるかも
Linuxならlsusbでディスクリプタにかんする情報を得られる USB Device Tree Viewerで表示されない?
http://www.uwe-sieber.de/usbtreeview_e.html
いくつかフリーのツールって何試したの? あっ、ごめん。よく読んでなかった
report descriptorね 使ったことはないけど、Windriverあたりがいろいろできた・・・かも。
昔USB弄ってたときはEZ-USBにSL811つけて任意のパケット生成できるようにしたり、
汎用USBドライバ使ってGET_DESCRIPTORして読みだしたりしたけど。 この質問なら真っ先に挙がってもいいあのツールの名前が出てこないとか
ホント不思議だわ
ちょっとでも知識ある人はもうこのスレなんか全然見てない、いまここに
いるのはド素人ばっかってことなんだろうなぁ・・・ ここに限らず本来の意味のハッカークラスの人は日本のネット界隈からほとんど姿を消しているよ
2ch以外でもそのクラスの人と情報交換できる場所はまずないし、アマエンジニアはほぼ絶滅
メーカーのコミュニティにひょっとしたら本職がいるかもってくらい >>10
知ってるなら書けばいいのに、何のためにここに来てるのか。
人格が劣化しているとしか。 2k/XP時代はSnoopyによくお世話になった物だが最近のWindows環境で動くUSBスニッファーって見たこと無いな デバイス側にUSBポートを2つ持たせて
・ホストとの接続はどちらを使ってもOK
・開いたほうのポートはハブ的に使える(別のUSBデバイスを繋げる事が出来る)
ようなことは可能でしょうか?
実現するに当たって必要であれば別途ハブコントローラ等を使うこともOKです
昔のマッキントッシュのキーボードにあったADBポートのようなイメージです ホスト側コネクタがtype-Aで、デバイス側コネクタがtype-Bだからなぁ
type-Cなら行けるのかな・・・ >>17
Type-Cって、メンドイよ。
コネクタのところに制御ICが必要だから Report DescriptorのLogical MinimumとLogical Maximumについて質問させてください
両方の値が0か0以上であるなら、設定値はunsignedだという認識
なのですが間違っていますでしょうか?
仮に 0〜150(0x96)の範囲を取るとして、report descriptorの
Logical Min/Maxは
0x15, 0x00,
0x25, 0x96
で良いという認識だったのですが、そうではなくて常にsignedで
0x15, 0x00
0x26, 0x96, 0x00
としないとダメなんでしょうか?
>If both the Logical Minimum and Logical Maximum extents are
>defined as positive values (0 or greater) then the report field
>can be assumed to be an unsigned value. 自作のUSBキーボードがBIOSで認識しない・・・
一体なにが気に食わないんだか Descriptorの中にboot deviceを示すビットが無かったっけ。 >>21
ごめん、独り言だったのでかなり端折ってた
PICにMicrochipのサンプルコード載せてUSBキーボード作ろうとしてるんだけど
うちにあるマシン5台では全く問題ないのに会社のintel macのEFIだけキーボードを
認識しないんだ。これもOSが起動すれば問題なく動く
なのでBOOTプロトコルにはそれなりに対応してる気がするんだけど何が駄目なのか
全く分からない・・・
microchipのサンプルはなぜかGET_REPORTが実装されてないと言う謎仕様なんだけど
GET_REPORTを実装して今日確認しても駄目だった(というかLED仕込んで確認したけど
GET_REPORTは全然呼ばれなかった・・・) USBキーボードなんて既製品があるんだからそれと比べればいいのでは・・・ >>22
Mac謹製のキーボード使え
って言う神のお告げじゃねーの? まあ、
>Mac謹製のキーボード
をつなげてUSBバスアナライザ通せば参考にはなる罠
キーボードじゃないけど別のデバイス作った時
DFU interface descriptor が無いとOSXには蹴られたな。
理由は知らん。DFUの機能を実装する必要はなかった。 キーボードに限らないけど既製品がある場合はそれをパクるのが最も安全 22とは別人なんだけどちょっとやぶ用でUSBキーボのデスクリ調べてたり
するんだけど、世の中の一般的なキーボってLED点灯制御のためにOUTの
エンポイ用意してないケースの方が圧倒的に多いのかな
見た感じわざわざINとOUTのエンポイ用意してるキーボードの方が少ない そりゃまぁ、HIDはInterruptOUTのエンドポイントはoptionalだし
HIDだとコントロール転送で送れば良いわけだから
わざわざエンドポイント入れてるほうが少なくても不思議じゃないよね そもそも標準的にはLED制御はSet_Report(Output)リクエストでやることになってるから特殊なキーボードでないとOutのエンドポイントなんて要らんでしょ
http://d.hatena.ne.jp/hanya_orz/touch/20140425/p1 USBホスト側ってライセンス料かかりますか? デバイス側はIDやテスト認証でかかりそうですけど。 USBロゴ使わないならデバイス側も適当なVIDPIDでいいでしょ USBロゴ(に関わる認証も)取らずに他人に使わせるとかありえんだろ w >>40
ありえるかどうか、の話ですが。
デバイス側も、民生機器ならともかく、少量生産しかしない機器ならUSBロゴなし製品は割と当たり前にあります。
そんな用途にFTDIのVIDをそのまま使ったものがたくさんあるわけで。
草を生やすのは無駄な煽りか、認識が狭いせいですね。 >>41
> そんな用途にFTDIのVIDをそのまま使ったものがたくさんあるわけで。
そりゃそういう風に使っていいって言ってるからだよ...
まさか勝手に使ってるとでも思ってたのか?
http://www.ftdichip.com/Support/Knowledgebase/index.html?caniuseftdisvidformypr.htm
> 認識が狭いせいですね。
ブーメラン乙 w >>42
>そりゃそういう風に使っていいって言ってるからだよ...
>まさか勝手に使ってるとでも思ってたのか?
いまいち仰っていることがわかりません。
というか「勝手」という言葉が情緒的な要素を含んでいるような気がします。
オレオレ解釈ではいけないので デジタル大辞林 から「勝手」です。
「1. 他人のことはかまわないで、自分だけに都合がよいように振る舞うこと。また、そのさま」
だそうです。
俺的解釈では「勝手に」は「当事者の許可を得ずに」だったのですが、上の意味に含まれてしまいますね。
もともとFTDIが製品のデフォルトとして設定したPIDについてはそのまま使って良いとしているわけですが、
「まさか、他人のことはかまわないで、自分だけに都合がよいようにして使ってるとでも思ってたのか?」
ですかね?
ちなみに、FTDIのチップが出回りだして何年かした頃に、
「VID、PIDをいちいち許可を得ずに無料で使えるなんて都合が良すぎるのではないのか」
と思って、FTDI社にメールで質問したことがありまして、そのときには、
・もちろんロイヤリティフリーで使える
・USB Implementers Forum のルールとも矛盾しない
という返事をもらっています。
>>42の中のリンク先の
Q. FTDIのVIDは私の製品で使えるの?
の内容ですが、
>FTDIのベンダーIDは、FTDIのデバイスを使った製品を使った製造者によって使われることができる
>(※)ただし、それはFTDIが発行したPIDとともに使われなければならない。
>FTDIは、FTDIのVIDとともに使われる、8個のPIDを無料で配分することができる。
>FTDIのVIDとともに使うPIDをリクエストする方法は以下の通り。
(※)は俺が追加しました。この行の「FTDIが発行(原文ではissued by FTDI)」を、その下の
「リクエストして発行されたもの」として解釈されたのでしょうか。俺がFTDIからもらった返事と矛盾しないように解釈するなら、
デフォルトで設定されたPIDも、issued by FTDI なのではないかと思います。
VIDをユーザーが使えるようにしているのはFTDIの戦略上とても重要なことです。
もし、「リクエストして発行されたものに限る」ということだと、ワーストケースでは顧客が約8000企業に限定されてしまいます。
そんな戦略にするかな、って気はしますよ。
俺がFTDIに質問したのはもうずいぶん前です。もしかしたらルールが変わっているかもしれません。
機会があれば、また質問するようにします。 ×>FTDIのベンダーIDは、FTDIのデバイスを使った製品を使った製造者によって使われることができる
○>FTDIのベンダーIDは、FTDIのデバイスを使った製品の製造者によって使われることができる >>43-44
ディフォルトのPIDも(勝手に使決めたものじゃなくて)FTDIから許可もらってる
って言うだけのことだろ w
そもそも>>38はFTDIに限った話じゃないし >>45
俺、>>38には言及してませんよ。
>>40の認識についてコメントしたのです。 >>40もFTDIに限った話じゃないだろ
それぐらいの応用力もないとか他人との会話辛くないか? で、FTDIやシリコンラボのブリッジICを使って、そのままのVID、PIDを使って製品を作って販売しても、USB-IFのルールに抵触はしません。
でも>>38の言うような、適当なVID,PIDのものを頒布販売はまずいでしょうね。実際に訴訟になったケースがあるかどうかは知りませんが。
USB-IFからアクションがあったといえば、
VIDを取った企業が、PIDを分割販売していたケースがいくつかあって、それらはUSB-IFから実際に警告を受けて、
・PIDの分割販売を停止したケース
・VIDの使用許可と取り消されたケース
があったはずです。
頒布販売をせずに、クローズな実験室だけで使うぶんになら、適切なVID、PIDを選んで使うのは大丈夫だと思います。