Edisonにつないだカメラモジュール(OV7670)のデータをAndroidスマホに送信するプログラムを作った時のメモです。
通信プログラム
今回はRFCOMMを使って、Androidをサーバー、Edisonをクライアントとして実装しました。
Edison側プログラムは下記を参考に実装できます。
An Introduction to Bluetooth Programming
Channel設定
Androidスマホのchannelは『5』???。
正確なところは解りませんが、とりあえずLogcatに表示されていたChannel数を設定したら通信できました。
<追記>
開いているChannelが自動でやり当てられるようです。
http://stackoverflow.com/questions/18591020/determining-bluetoothserversocket-channel
Bluetoothを有効にするのを忘れずに
以前『Intel EdisonでBluetoothを試してみる』でも書きましたが、Bluetoothを有効にするのを忘れずに。
※よく忘れるので、なんならブート後に自動的に有効にしてもいいかも
rfkill unblock bluetooth
あとがき
通信データ量を減らすためにEdison側でJPG圧縮した後、送信するようにしました。
まずデータサイズを送信して、次にJPGデータを送信するようにしたのですが、受信はInputStreamなことを失念していて、初め同期が取れなくてちょいハマりましたが、割と簡単に実装することができました。