Funnel は Ruby ベースのクライアントライブラリと、 Java ベースの Funnel サーバーを提供しています。 これが「公式」な方法だと思います。 Gainer と Funnel は、どちらも小林茂氏を中心に開発されているからです。
このページで配布しているライブラリは、 Gainer I/O モジュールを Funnel サーバー抜きで Ruby から使います。 シンプルかつ、非公式です :)
ちなみに、Gainer I/O モジュールはコンピュータ側からみれば単なるシリアルポートです。 テキストベースの簡単なプロトコルさえ理解してしまえば、 どの言語からも簡単に制御できます。
シリアルポートの制御に ruby-termios を使っています。あらかじめインストールしておいて下さい。
gainer-ruby-0.0.2.tar.gz (2008-02-03)
patch などを送る際には、 Subversion レポジトリ の trunk との差分をとってもらえると助かります。
I/O モジュール上の LED を点灯し、一秒後に消灯するスクリプトを以下に示します。
require 'gainer' gainer = Gainer::Serial.new('/dev/cu.usbserial-A50025mT') gainer.led = true sleep(1) gainer.led = false
Gainer::Serial#initialize は、 第一引数に Gainer が接続された USB ポートに対応するデバイスファイルを、 第二引数にコンフィグレーションをとります。 第二引数は省略可能です。省略した場合コンフィグレーションは 1 になります。
その他の API については、まだ文章がありません。 いまのところは examples/ のスクリプト群を参照してください。