2014年3月2日日曜日

トランジスタ技術2014年3月号3章 XBeeWiFiアプリ動作不良対策

トランジスタ技術2014年3月号3章 XBeeWiFiアプリ動作不良対策

<概要>

F-11D(android Ver4.03)XBeeS6Bでトラ技3月号3章のアプリ動作を確認したところ、android側のIP addressの取得ができず、動作させることができませんでした。
これをアプリ側のソフトを改造してIPaddressandroidに割り当てられたIPaddressを設定して、PortNoを変更したところ動作するようになりました。

<アプリ側のソフト変更>

アプリのソースコード”WiFiBoxController.java”を変更します。

12行目:
修正前:private String mIpAdd =null;
修正後:private String mIpAdd =”192.168.11.3”;
        (android端末に割り当てられたIP address)

13行目:
修正前:private int mPort = 0xBEE;
修正後:private int mPort = 0x2616;
(0xBEE では動作しなかった0x2616という値が最適なのかは不明)

としました。


XBee S6B側の変更>

“XCTU”というツールを使って設定値を変更します。
AH : Infrastracture
CE : STAmode
IP : UDP
DL : 192.168.11.4 (androidに割り付けられたIP address)
C0 : 2616
DE : 2616

と設定しました。




<動作確認>

XBeeを設定して、ルータと接続が成立すると、XBeePin15に接続したLEDが点滅します。またパソコンから
Ping 192.168.11.3
(IP address XBeeに割り当てられたIPaddress)
として応答があれば接続できていることを確認できます。


XBeeLEDが点滅していることを確認して、androidのアプリを起動して、画面に現れたキーを押すと、3byteのデータ(例:”1”を押すと“0x00 0x00 0x31)XBeeのシリアルポートから出力されます。

XBeeから出力されるシリアルデータは、XBeeとパソコンの間をUSB-Serial変換ボードで接続しました。パソコン側では、XCTUのコンソール画面で、XBeeからのシリアルデータを確認しました。