Arduino meets Processing via Wifi (OpenWrt)

Kimio Kosaka

 

 


2008年8月に「Arduino meets Processing by Wifi」でFONのルータLa Foneraに代替えファームウェアDD-WRTを導入しArduinoのWifiインターフェースとして用いArduinoとProcessingを連携させる事例を発表しました。今回は代替えファームウェアにOpenWrtを用いて見ます。


  1. OpenWrtを使う

    FoneraとArduinoを連携するプロジェクトには以下のものがあります。

    私を含めて,どのプロジェクトもFonera+DD-WRTを用いています。DD-WRTをArduinoのネットワーク・インターフェースとして使用する場合には次のような問題があります。

    Fonera(DD-WRT)とArduinoはシリアルで通信しますが,DD-WRTはシリアルポート(/dev/tty/0)をコンソールのポートとしています。このため,このシリアルポートからはログインプロンプトやシステムから動作状態を通知する色々なメッセージが出力されます。これを抑止するためにはコンソールポートから/dev/tts/0を切り離せば良いのですがDD-WRTにはその手段が無いのです。 このためDD-WRTをArduinoと連携させるためには工夫が必要です。 そこで,今回はシリアルポートをコンソールから簡単に切り離せるOpenWrtを試すことにします。


  2. OpenWRTのインストール

    この辺りを参考にしてインストールします。

  3. シリアル・コンソールの抑止

    /etc/inittab を編集します。フツーのLinuxと同じです。

  4. シリアル−TCP/IPリダイレクト
    • ser2netパッケージをインストールします
    • /etc/ser2net.conf を編集。

      ser2net.confには記述例のドキュメントがあり,これに倣ってTCPポート番号とシリアルのローカル・エコー抑止の設定をします。

  5. /etc/config/firewall の編集

    OpenWRT化FoneraをAPやRouterでなくClient(APに接続するノード)として利用したい場合は,ここの編集が必要です。

  6. デモ・ビデオ



  7. 概要図

    diagram

 


[return]

upload 2009.08.16

Creative Commons License