TOCOS 超簡単!無線マイコンTWE-Lite で、シリアル透過モードを少し試してみた

2014-09-12 22.22.46

半固定抵抗やボリュームでお世話になっている東京コスモス電機さんから出ている無線モジュールです。無線モジュールといえば XBee ですが、日本橋のシリコンハウス店頭の吊し在庫を見て、お値段と DIP 形状品、PC 接続すぐ出来る USB スティックタイプがあることから TWE-Lite DIP と ToCoStick を購入してみました。

TWE-Lite DIP は無線モジュール単体が DIP 形状の基板に載っているだけのものです。ToCoStick は無線モジュール + FTDI USB シリアル変換がセットになっていて USB メモリみたいなケースに入っているものです。この2つで通信してみようと思うのですが、今回は、標準で書き込まれているアプリではなく、シリアル通信専用アプリで通信してみる実験。普通に USB シリアル変換で直結すれば良いのですが、無線化も使えるかな? とふと思ったのでちょっと試してみます。

ファームの書き込みソフトや、ビルド済みアプリケーションは 東京コスモス電機 ワイヤレス事業部のメーカーサイトからダウンロードします。

2014-09-12 22.32.36

ToCoStick の書き込みは本体を USB ポートに差して TWE-Programmer.exe を起動すれば書き込み出来ますが、TWE-Lite DIP は写真のように USB シリアル変換を接続して TWE-Programmer.exe から書き込みしないといけません。このUSBシルアル変換は、たまたま手持ちのものを使用しましたが、メーカーから USBアダプター TWE-Lite R という専用のものも販売されています。アプリケーションの書き換え手順は省略させていただきます。

今回は、メーカー提供ビルド済みのシリアル通信専用アプリを設定して使用します。PC に差して使う ToCoStick を設定。TeraTerm で ToCoStick のCOMポートを開いてボーレート 115200 で接続します。キーボードから + プラスキー を何回か叩くと↓のようなメニューが出ます。

--- CONFIG/TWE UART APP V1-02-10/SID=0x810069f7/LID=0x00 -E ---
 a: set Application ID (0x67720103)
 i: set Device ID (121=0x79)
 c: set Channels (18)
 x: set RF Conf (41)
 r: set Role (0x0)
 l: set Layer (0x1)
 b: set UART baud (38400)
 B: set UART option (8N1)
 m: set UART mode (T)
 k: set Tx Trigger (sep=0x0a, min_bytes=1 dly=100[ms])
 h: set handle name []
 C: set crypt mode (0)
 o: set option bits (0x00000000)
---
 S: save Configuration
 R: reset to Defaults

i: set Device ID (121=0x79) を、121 にして親機にします。あとm: set UART mode (T) を T(透過モード)にして、S で保存します。

TWE-Lite の設定も ToCoStick と同様に。TeraTerm で TWE-Lite のCOMポートを開いてボーレート 115200 で接続します。キーボードから + プラスキー を何回か叩くと↓のようなメニューが出ます。

--- CONFIG/TWE UART APP V1-02-10/SID=0x810079a5/LID=0x65 -E ---
 a: set Application ID (0x67720103)
 i: set Device ID (1=0x01)
 c: set Channels (18)
 x: set RF Conf (41)
 r: set Role (0x0)
 l: set Layer (0x1)
 b: set UART baud (38400)
 B: set UART option (8N1)
 m: set UART mode (T)
 k: set Tx Trigger (sep=0x0a, min_bytes=1 dly=100[ms])
 h: set handle name []
 C: set crypt mode (0)
 o: set option bits (0x00000000)
---
 S: save Configuration
 R: reset to Defaults

i: set Device ID (1=0x01) を、1 にして子機とします。あと、通信のモードはm: set UART mode (T) を T(透過モード)にして、S で保存します。

2014-09-12 22.35.11

これで、準備が出来たので、適当なターゲットを TWE-Lite DIP に接続して PC と通信出来るかやってみました。今回は Raspberry Pi のマイコンボードのシリアルコンソール出力を TWE-Lite のポートに接続し、PC 側に ToCoStick を差して TeraTerm で ToCoStick の COM ポートをオープン。

スクリーンショット 2014-09-12 22.40.21

無事接続できて、コマンドも打てましたので良しとしましょう。ただし、USBシリアルで PC 直接接続したときに比べて伝送速度は遅いようで ls -l などの表示速度は遅かったです。このため数kバイト一気に流しただけであっさり文字欠落とか発生することがあります。raspberry pi のシリアルコンソールのボーレート落とすのが手っ取り早い解決方法と思います。/etc/inittab の最後に コンソール用 getty の起動があるのでそれを修正して起動しなおせばok。TWE-Lite 設定メニューに再送回数などがあるのでそういうところを調整すればいけるのかと思われますが、無線で送れる速度よりもuart の速度を下げるのがいいです。
マイコン工作物などでは1回あたりせいぜい数十バイト送ればいいと思うのですが、この程度なら無線モジュールのバッファに入るので気にしなくてもちゃんと送れます。
シリアル通信に特化したところだけで実験しましたが、モジュールには GPIO 端子や I2C, アナログ入力など一般的なマイコンの端子も出ていて使用可能なためいろいろ楽しめそうです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です