Android ADKについて調べていたところ、「第4回名古屋Android勉強会資料」という資料を見つけました。Android ADK互換モジュールを自作する方法が記載されています。素晴らしい資料です。部品を購入して自作してみました。
MBP2012, MacOS X 10.8.5 Mountain Lion を使っています。AndroidはNexus7(2012). Android 4.4.2 を使っています。自分でインストールした後に気がついたのですが、「PIC18F14K50によるUSBの開発環境をMPLabXとMac OSXで準備する – Computer Radio RF Tech」のページがわかりやすく説明をしてあるようです。
MacOS Xには下記のソフトウェアをインストールしました。コンパイラはXC16を使っています。
- 開発環境:MAPLAB X IDE v1.95(MPLABX-v1.95-osx-installer.dmg)
- コンパイラ:XC16(xc16-v1.20–osx-installer.dmg)
- サンプルコード:magoroku15さん作成のOpenAccessoryDemo-master.zip、Microchipのライブラリに含まれるコード(microchip-libraries-for-applications-v2013-06-15-osx-installer.dmg)
Androidには、MicrochipのBasic Accessory Demoをインストールしました。
- 基本的なアクセサリデモ – Google Play の Android アプリ MICROCHIP TECHNOLOGY INC
マイコンへのプログラム書き込みにはPICkit3などが必要です。素直にPICkit3を用意しました。
マイコンのチップには、PIC24FJ64GB002を使っています。購入が必要な部品はスライドの資料に掲載されているものを使い、回路も同じ物で作成しました。基本的に秋月電子で購入しています。マイコンだけ別のところで購入しました。送料も考慮が必要です。マイコンのスペックシートがわかる人は別のチップにして秋月電子から購入するという手もありそうです。
Nexus7(2012)では、AOAプロトコルv1では動かないので、ちょっと工夫が必要です。magoroku15/OpenAccessoryDemo · GitHubからアーカイブ「OpenAccessoryDemo-master.zip」をダウンロードして展開。プロジェクトをMPLAB X IDE v1.95で開き、main.c 以外のヘッダファイル(*.h)とソースファイル(*.c)を最新版にして、不要なヘッダファイルをプロジェクトから削除しました。これをコンパイルしなおしたものをPICKit3を使って自作ボードへ書き込みをしました。
ADKもいろいろありますが、やはり値段がそれなりになりますね。独自のものは1台だけ工作だと送料などの面で値段が高くなるかもしれませんが、複数台用意したいときは重宝します。
- Arduino ADK R3
- サインスマート MEGA ADK R3 互換ボード (USBケーブル付)for Android Arduino UNO MEGA R3 Mega2560 Duemilanove Nano Robot XBee ZigBee
- RT-ADK&RT-ADS
できあいのものは、秋月電子でも「マイクロチップ Starter Kit for Android (PIC24F Version) 評価ボード単品: マイコン関連 秋月電子通商 電子部品 ネット通販」のようなものがあります。こういったものを購入して使うという手もありますが、結局のところセンサを独自につけたりするのなら、ボードから自作した方が楽しくできそうです。
Android ADKの資料は下記があります。最新のAOAプロトコル2についての詳細はインターネットで情報を収集した方が良さそうです。
- Android ADK プログラミング&電子工作バイブル (smart phone programming bible)
- Android×Arduinoでつくるクラウド連携デバイス―Android ADKで電子工作をはじめよう! ―
- PICで楽しむAndroidアクセサリの自作
追記:下記も参考になりますね。PICを使うとUSB接続のところが簡単に実現できていいですね。