«前の日記(2016年09月01日) 最新 次の日記(2016年11月29日)» 編集

2016年09月05日 DigiSpark で USB key を作ってみる. [長年日記]

_ DigiSpark で USB key を作ってみる.

世の中には, キーボードの繋っていないマシンというのがある. 例えば, サーバー として置いてあるけど, KVM までは用意していないようなやつとか, 複数台デスクにマシンを 載せる必要があるんだが, いかんせんデスクは狭いので synergy みたいなツールで共有 しているだとかだ. 更に世の中には想像力の足りない情報システムとかセキュリティとかいう人たちがいる. セキュリティといえば金科玉条で、万民が平伏し意見を通せてしまう, とかいうような達の 悪い人たちだ. そんな二つが組み合わさると, とりあえずマシンには滑て BIOS パスワードをかけろ、という けったいなルールが出来上がったりする訳である.

当然, マシンを再起動する度に面倒なキーボードを探して挿して BIOS パスワードを打つ という馬鹿げたことになったりする.

で, その状態をなんとかしてしまうのもやはり技術者の性だったりするので何とかする ことを考えてみた. 要は固定文字列を吐くことのできる USB HID があればよい,

さすがに HID デバイスを一から, というのはあまりに目的に対して馬鹿げている労力に なりそうなので, なんかいいものないかと調べてみるとどうも, V-USB とかいうものがあるらしい. AVR 系のマイコンで HID を実装するためのファームの模様. Arduino を HID で使用できるようにするための定番品でもあるらしい.

更に調べると, どうも同じ AVR を使用している Arduino like で HID 接続で PC と 繋る DigiSpark なるものが. こっちは, USB TypeA コネクタ形状で直結でき, おしゃべりも最初から HID というか V-USB を組み込んだ形で通信できるようにしたものとのこと. まさに目的のものである.

早速購入. そのままポチって購入するとメール便だが, 海外発送で大体一週間程度で送られてくる. ちなみに, 元々は kickstarter のクラウドファウンディングらしく, 設計図も公開 されているものらしい. そんなわけでクローン品も amazon あたりで売っている模様. こっちはあたるも八卦的な感じで不良があるような記述も散見されるのでちょっと人柱かも.

HiLetgo Digispark Kickstarter ATTINY85 Digispark 超小型Arduino互換

HiLetgo
¥ 200

開発環境は, この辺り を見てやれば 素直に動作した. 但し, mac でだが. Linux は 1.6 系で動作しない的な記述があり, 微妙にトライ中.

起動すると, 普通の Arduino の開発環境が出るので,

のように記述して, "検証" -> "マイコンボードに書き込む" と実行して, DigiSpark を差し込むと 勝手検出してファームを更新, 更新後勝手に 5 秒毎にキー文字列を書き出す HID デバイスになる.

ああ, セキュリティにどうこう言う人たちが, 費用対効果という言葉を学習したり, してくれますように. あるいはあいつらは生活の場所を金庫のなかにでもすればちょっとは 納得するかも.

これ, USB Key とかいって商品化すると売れたりするのかね. Weekly に変更して ネットワーク経由で auto update させたりとか, wifi で携帯からボタンなりパスワードなり 入れさせたりとか色々できない訳ではないんだよね.