PocketDuinoを使ってみた
■クラウドファンディングのPocketDuinoが届いた |
ちょっとハマった点などをまとめておきます。ご利用されるかたの参考になれば幸いです。
以下は私なりの解釈です。
アンドロイドのUSB-HOST機能を利用して、Androidアプリから、Arduino互換機にプログラムを転送したり通信したりすることが簡単にできるデバイスです。ArudinoProMiniとシリアル変換IC(FTDI)とマイクロUSBの端子が一つのボードに纏まったものです。
小型化にこだわらなければ、市販品を組み合わせることで同等の機能が実現できると思います。
小型化にこだわらなければ、市販品を組み合わせることで同等の機能が実現できると思います。
■Arduinoへの書き込み方法 |
マイコンのプログラムを書き換える方法として2種類提供されています。
1.いままでと同じように、Arudino IDEで書き換える方法。
2.HEXファイルを準備し、Androidから転送して書き換える方法。
後者は、自動ファームウェアアップデートみたいなことが簡単にできるってことになりますね。
Arduinoから書き換える場合には、変換ソケットが同封しているのでパソコンとUSB接続で簡単に書きこ込めました。
これはぜんぜん問題ありませんでした。いままでのPro Miniと同じ感覚で使えます。
これはぜんぜん問題ありませんでした。いままでのPro Miniと同じ感覚で使えます。
そこのファイルに以下を追加することでHEXファイルが出力されるようになります。
build_path=[.hex保存先ディレクトリ名]
とあったのですが、アンダーバーではなく.(ピリオド)なんですね。
ちょっとはまりました。
build_path=[.hex保存先ディレクトリ名]
とあったのですが、アンダーバーではなく.(ピリオド)なんですね。
ちょっとはまりました。
でも、おかげでこんな設定ができることを知りました。
中間ファイルがいろいろ出力されるようになります。
中間ファイルがいろいろ出力されるようになります。
が!
ここからが長かった。
久しぶりのAndroidアプリということもあり、いろいろハマってしまいました。
このライブラリは、シリアル(UART)の通信がラップされているようなI/Fが定義されているので、AndroidとArduinoで通信して情報を伝達するようなものになっています。
なので、インスタンスを生成して、Open -> Read or Write -> Close という非常にシンプルで分かり易い形式です。
なので、インスタンスを生成して、Open -> Read or Write -> Close という非常にシンプルで分かり易い形式です。
■なぜかOpenで例外が・・・ |
PhysicaloidLibraryにはサンプルが付属しておりそのままビルドしますが、私の環境ではビルドエラーが発生しました。
それは、対応するAPIバージョン(Level12)をダウンロードしてないからなのでAPIのVersionを変更(Level19)しました。
するとコンパイルは通るのですが、動かそうとするとなぜかOpenでVerify Errorが発生します。
なんだろう?とネットを頼るもなにも情報が見つからないので、私個人のやり方がまずいのだろうということでいろいろ設定を見直してみました。
ここの赤枠のライブラリ指定のパスがちゃんと設定されてないのが問題だったようです。
ここを一度削除して、ライブラリのパスを指定することでOpen成功し上手く動き始めました。(良かった)
ここを一度削除して、ライブラリのパスを指定することでOpen成功し上手く動き始めました。(良かった)
Androidアプリもしばらく作ってなかったので感を取り戻すのにも時間がかかりました。
これで、基本的な動作検証は行えたので、なにかコンパクトなものを作りたいです。(まだネタはありませんが・・・)
あと、このPhysicaloidLibraryは他への利用もできそうな感じです。
あと、このPhysicaloidLibraryは他への利用もできそうな感じです。