最近のノートパソコンはシリアル端子の付いていない機種が多く、RIS1.0付属のシリアル接続の赤外線タワーや Spybotics付属のケーブルを使うのに不便です。 しかし、いろいろなメーカが発売している USB-シリアル変換アダプタを使って、少なくとも Linux上では快適にこれらのタワーやケーブルを使うことができます。これまで筆者の使用してきたのは、すでに倒産してしまった Justy というメーカの UCR-01 という製品です。ずいぶん前に家電屋で4,500円くらいで購入しました。 しかし最近ではもっと安価な製品が簡単に手に入るようです (例えば、[[秋月電子のUSB・シリアル変換ケーブル:http://akizukidenshi.com/catalog/items2.php?p=1&q=M-00720]] など)。 このJustyの製品には、Prolific社製の PL2303 というチップが使われています。 このデバイス用のドライバ (pl2303) は Linux 2.2 の時代から存在しているようですが、 2.4系や2.6系のカーネルでも問題なく使えました。 もしドライバ(カーネルモジュール)が自動でロードされない場合には、必要なモジュールを insmod で地道にロードしていくか、それが面倒なときには例えば modconf などのツールを使ってカーネルに組み込みます。modconfを使う場合には kernel/drivers/usb/serial の中にある必要なドライバを選びます。 このJustyの製品の場合は pl2303 というドライバを選択します。ちなみに上で紹介した秋月電子の製品もPL2303を使用しているようです。 lsmod で見たときに pl2303 (あるいはその他のドライバ), usbserial, usbcore, それと legousbtower がロードされていればいいでしょう。 実際に接続すると usb 4-2.1: new full speed USB device using address 113 pl2303 4-2.1:1.0: PL-2303 converter detected usb 4-2.1: PL-2303 converter now attached to ttyUSB0 のようなカーネルのログが残ります。ですので NQC でプログラムをRCXに転送する際には、/dev/ttyUSB0 というデバイス名をシリアルポートとして指定します。例えば、 nqc -S/dev/ttyUSB0 -d hogehoge.nqc のようなコマンドでプログラムを転送できるはずです。SpyboticsのSPCへの転送もばっちりです。 もちろん PL2303 以外のチップを使用している製品でも Linuxでサポートされているチップを積んでいれば利用できる可能性が高いでしょう。 USB-シリアル変換のサポート状況についてはカーネル付属のドキュメント Documentation/usb/serial.txt や http://www.qbik.ch/usb/devices/devices.php の「Serial (USB-to-Serial converter)」を参考にしてください。