Lynx-EyEDの電音鍵盤 新館

広帯域制御屋の駄文とか

Android端末からXBee Wi-Fiにtelnetでログイン

telnetでXBee Wi-Fiにアクセスする

今日の夕方、閉まりかけの秋月に飛び込んで買ったXBee Wi-Fi
XBeeWi−Fiモジュール(PCBアンテナタイプ): 無線、高周波関連商品 秋月電子通商 電子部品 ネット通販
早速動かしてみようと思いました。
Android4.0以降とiOSデバイスはad-hoc接続ができるはずなので、どちらかのスマホで何かしら遊べるはずです。
XBee Wi-Fiの設定
今回、MacOSX LionのターミナルでXBee Wi-Fiの設定をしました。

写真には写っていませんが、XBee本の付録基板の裏に低ESR電解コンデンサ470uFを2個並列に、またXBeeの電源と基板上で生成された3.3Vの間に4.7uHのフィルタを載せてます。
f:id:Lynx-EyED:20120724232641j:plain
さて、CP2104はそのままではMacがUSB-UARTと認識しないので下記のページの[tools]タブをクリックしてドライバを頂いてきます。(Mac_OSX_VCP_Driver.zip)




USB to UART Bridge



インストールし、OSX再起動後、ターミナル.appから

$ screen /dev/tty.SLAB_USBtoUART

と打ち込むとUARTにアクセスできるはずです。
f:id:Lynx-EyED:20120724233414p:plain
ここで、XBeeの設定を行います。
■参考URL
XBee Wi-Fiをアンドロイド端末とアドホックする! - SE組込人 - Yahoo!ブログ

さきほどの画面で

+++

と入力するとATコマンドモードになり、

OK

と返してくるはずです。しばらく時間が経つとクローズしてしまうので、その場合は再度+++と入力します。
今回自分が設定したコマンドは以下の部分。かっこ内は説明ですので入力しない。

ATAH1          (ネットワークタイプ:クリエイタ)
ATMA1          (アドレシングモード:Static,0はDHCP)
ATIDhoge      (SSID:hoge <- 適当)
ATCH1          (アクセスポイントのチャネル:1<-適当に選んだ)
ATMY192.168.2.205    (XBee自身のIPアドレス:192.168.2.205 <- 任意)
ATDL192.168.2.201     (通信相手のIPアドレス:192.168.2.201)
ATMK255.255.255.0    (サブネットマスク)

と入力。
念のため

ATC0

と打ち込んだときに

2616      (10進数で9750:XBee Wi-Fiのデフォルトポート番号)

と出る事を確認。違ったら

ATC02616

と入力する
ターミナルは閉じないでそのままにして、Androidのad-hoc設定をします。


Android側の設定
Android4.0.4(CM9)のPHOTONからアクセスしてみます。
先ほどXBeeの設定が終わっているので[設定]->[無線とネットワーク:Wi-Fi]->hoge(ad-hoc network)が見えているはずです。

f:id:Lynx-EyED:20120724235942p:plain
これを長押しして出てくるメニューで、[ネットワークを変更]を選び
詳細オプションを表示をチェックし、
f:id:Lynx-EyED:20120725000333p:plain
以下の項目を設定します。

  • プロキシ設定:なし
  • IP設定:静的
  • IPアドレス:192.168.2.201
  • ゲートウェイ:192.168.0.1
  • ネットワークプレフィックス長:24

ここまで入力すると、[保存]のボタンがタップできるようになります。
保存する。
Wi-Fi設定でhogeに接続したのを確認してから、Androidアプリの端末エミュレータを起動します。
telnetでXBeeにアクセス。先ほど設定したXBeeIPアドレス:192.168.2.205、ポート9750なので

$  telnet 192.168.2.205:9750


入力する。エラーメッセージが何も出なければ接続成功です。
のでこんな感じに端末から入力すると、
f:id:Lynx-EyED:20120725001028p:plain

Mac OSXのターミナル.appにも
f:id:Lynx-EyED:20120725001112p:plain
めでたく出現。(逆にMacのターミナルから入力しても、Android端末エミュレータに出力できます)
うんこうんこ。

おしまい。