2008年8月に「Arduino meets Processing by Wifi」でFONのルータLa Foneraに代替えファームウェアDD-WRTを導入しArduinoのWifiインターフェースとして用いArduinoとProcessingを連携させる事例を発表しました。今回は代替えファームウェアに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を試すことにします。
この辺りを参考にしてインストールします。
/etc/inittab を編集します。フツーのLinuxと同じです。
ser2net.confには記述例のドキュメントがあり,これに倣ってTCPポート番号とシリアルのローカル・エコー抑止の設定をします。
OpenWRT化FoneraをAPやRouterでなくClient(APに接続するノード)として利用したい場合は,ここの編集が必要です。
upload 2009.08.16