XBeeのプログラム可能バージョンである”Programmable XBee Pro”を、X-CTUで設定しようとすると、手順どおり操作しようとしても正しく設定する事が出来ません。
X-CTUのテストボタンをクリックしても、以下のように文字化けしてしまいます。
ModemTypeすら取得できていません。
これは、Programmable版のXBeeには、プログラム可能なFreescaleのCPUと、無線通信を行うEmberのチップの2つが搭載されており、初期状態だとFreescaleに搭載されたブートローダが反応してしまうためです(Programmable版じゃない方はEmberのチップしか搭載されていません)。
XBeeの設定はEmberのチップに対して行うのですが、X-CTUはFreescaleのCPUが返事してくる事を想定していないため、工夫が必要になります。
Programmable XBee ProをX-CTUで使う
Programmable XBee Proを、X-CTUで使うには以下の手順で操作します。まず、TeraTermなどの他のソフトが立ち上がってない事を確認します。
X-CTUを起動します(手元の環境ではVer5.2.7.5でした)。

デフォルトでは通信速度(Baud)が9600になっているので、115200に変更します。
(115200にするのは初回のみで、一度でも設定をwriteしたら、次からはSerial Interfacing->BaudRateで指定した値を指定します)

Terminalタブに移動し、AssrtからRTSのチェックを外します。

下にある白いエリアでEnterを押すと、以下の様なブートローダメニューが表示されます。

B-Bypass Mode F-Update App T-Timeout V-BL Version A-App Version R-Reset > |
ここで”B”を入力した後、Enterを押します。
これで、FreescaleのCPUは反応しなくなり、EmberのRF制御用チップと対話出来る様になります。

PC Settingタブに戻り、Test/Queryボタンをクリックします。

以下のようにModem typeが表示されればOKです。

Modem Configrationタブに移り、Readボタンを押します。
ウィンドウの下部にXBeeの設定に内容が表示されます。

データを書き換えてWriteを行い、値が書き換わる事を確認します。
※設定を変更する前に、一旦ProfileのSaveを押して、現在の設定値をファイルに保存します。
※テスト的に書き換えるなら、Addressing->Desctination Address High辺りが無難です(通信相手のID指定です)。

購入したXBeeはデフォルトだとAPIモードでした。
Webの情報や入門書だと、ATモードである事を前提に書かれていることも多いので、ATモードに変更してみます。Function Setを”ZIGBEE ROUTER AT”に変更後,Writeをクリックします。
書き込みには時間が掛かるのでしばらく待ちます。

書き換えが終わるとATモードになるので、Terminalで”+++”を入力するとOKが返ってくるようになります。

一旦Bypassを選ぶと、その後はずっとEmberのチップとの対話になります。
再度FreescaleのBootloaderを操作したい場合は、XBeeをリセットすればOKです。リセットするにはピン5をLowにします(ピンピッチ変換基板にリセットスイッチがある場合はスイッチを押すだけです)。
これは逆に言うと、Programmer版XBeeは、起動するたびに”B”コマンドの入力が必要だということを意味しています。
以下の画像は、リセットをかけた後、BootloaderからBypassを選択し、ATコマンドで自分のIDを表示させたものです。

関連記事
コメントを残す