Plug&Play USB Demo動作確認

ガジェット製作

Device – HID – Custom DemosのMacアプリをビルドして動作確認してみます。

サンプルコードを準備する

“Device – HID – Custom Demos”にはMacのサンプルアプリも含まれています。場所はここです。

PnP Demos Mac Application

元のコードは触らないように、別の場所に移します。今回はホームフォルダにDevelopmentフォルダを作成、その下にPnPDemoフォルダを作り、”Mac OS X Cocoa Objective-C”の中身をまるごとコピーします。こんな感じです。

Copy demo app

 

ビルド環境

以下の環境でビルドしました。

項目 バージョン
Mac OS X 10.8.3(Build 12D78)
Xcode 4.6.1(Build 4H512)

 

Xcodeでビルドする

次にXcodeでこのプロジェクトを開きます。Xcodeを立ち上げて、Fileメニュー → Open…メニューを選択します。

PnP Demo project open menu

プロジェクトオープンダイアログから、”HID PnP Demo.xcodeproj”を選択します。

Open demo app project

エラーがないか確認してみると、

Project errors

致命的なエラーはなさそうですが、なんか怪しげなメッセージがいろいろ出ています。が、いろいろと問題をあぶり出すためにもビルドしてみます。(って、なんか不安…)

Developer mode enable

まずは、ビルド以前の確認がありました。「デバッグ機能の一部にパスワード入力が必要なものがあり、そのような時にXcodeがパスワード要求なしに実行することを許可しますか? (これをDeveloper Modeというらしいです)」という内容です。ターミナルアプリを使われたことがある方ならご存じかもしれませんが、一部のコマンドではパスワード要求がありますが、その入力のことだと思います。

特に問題ないので “Enable” ボタンを押して進めます。

Automatic snapshots

次に、プロジェクトのクリーンアップや類似の動作の時に、自動的にプロジェクトのスナップショットを取っておくか、という質問です。取っておいても損はないと思いますので、”Enalbe”をクリックして次に。

Mac 64 bit support

なんかいろいろとうるさいですね。やっぱりすぐにビルドできるわけないか。メッセージの内容は「このままでは現在の環境で動作しないので、このバージョンのXcodeでサポートしているSDKを指定しなさい」というような感じです。SDK関係は古いものを指定しているようですので、指定しなおします。

プロジェクトのエラーメッセージの項目を開いて、”Validate Project Settings”をクリックします。

PnP demo app fix

すると、修正すべき項目が以下のようにリストされます。

Items need to be changed

なんかひとつひとつ確認するのも面倒なので、問題先送りで “Perform Changes” をクリックします。クリック後、再度ビルドすると、なんとか通りました。(Warningは結構残っていますが)

 

アプリを立ち上げてみる

とりあえず、ビルドしたアプリを立ち上げてみます。

PnP demo run

なんか動いたっぽいです。

 

PICにプログラムを書き込む

すみません。スクリーンショットなしですが、MPLAB Xで、”Device – HID – Custom Demos”のプロジェクトを “PIC16F1459” 用にビルドしてターゲットの回路に書き込みました。

書き込みは、前回と同様、エラーがいくつか出ましたが無視です (`・ω・´)

 

ターゲット回路を接続してみる

回路を接続してみます。

PnP demo dialog

動作してるっぽいです。”Device Found”となり、可変抵抗の電圧も読み取れているみたいです。

回路側の可変抵抗を回すと、

USB custom demo circuit volume  mini

電圧も変わりました。

PnP demo dialog level change

あと、アプリ側の “ToggleLED(s)”ボタンを押すと、

USB custom demo circuit toggleLED  mini

LEDが消えたりついたりします。

ということで、なんか警告を無視しましたが、とりあえず動作したようです。

このサンプルをベースにフットキーボードにデータを送るアプリが作れるかも。

 

このあとどうしよう

ここまでで、参考となるソースは揃ったので、どう進めるか考えてみました。

  • Macのサンプルアプリを公開できるように書き直す
    Macのサンプルアプリは公開してもよい条件が見当たりませんでしたので、公開できるように書き直したいな、なんて思ってます。が、敷居が高そう。
  • フットキーボードとMacアプリが通信できるようにする
    実は、フットキーボード回路に、フットキーボードのファームを書き込んで、Macのサンプルアプリをつないだところ、フットキーボードが認識されませんでした。おそらくUSB IDが異なるからかな、と思います。どうすれば認識するか調査必要です。
  • Macのアプリからデータを送って、フットキーボードの文字割り当て設定を書き換える
    少なくとも”ToggleLED(s)”ボタンでデータを送ることができたので、フットキーボードにデータを送る方法を調べてみます。そもそもキーボードに任意のデータを送れるんでしょうか。

 

変更履歴

 

日付 変更内容
2013.3.31 初版

« »