少し弄ってみましたので、報告しておきます。
1. お使いの USB デバイスの正式名称、メーカー。 メーカー: TAKARATOMY 商品名: GRITTER PANEL 型番: T2SB-D02 製品へのURL: http://www.takaratomy.co.jp/products/himitsukichi/item_eg.html 説明: 16x16のLEDパネル 2. お使いの OS の バージョン(出来れば-CURRENT、-STABLE の場合はいつ頃 cvsup したかも)。 6.2-RELEASE 3. USB デバイスを認識しているところの /var/log/messages ugen0: TAKARATOMY TAKARATOMY, rev 1.10/0.01, addr 2 4. usbdevs -v の結果 Controller /dev/usb0: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), Intel(0x0000), rev 1.00 port 1 addr 2: full speed, power 500 mA, config 1, TAKARATOMY(0x0040), TAKARATOMY(0x0f30), rev 0.01 port 2 powered 5. 動作したか、しないか。 出力用Endpointに制御+データのセットを渡すことで動作する。以下サンプル。 #include<fcntl.h> main(){ int ep0; static unsigned char buf[0x6 + 0x20] = { /* control data */ 0x80, 0x03, 0x5c, 0x08, 0x00, 0x00, /* 16x16 matrix data */ 0x00, 0x00, 0xf0, 0x00, 0x89, 0x66, 0xea, 0x99, 0x8c, 0xee, 0x88, 0x88, 0x88, 0x66, 0x00, 0x00, 0x71, 0x9c, 0x4a, 0x52, 0x4a, 0x12, 0x71, 0x92, 0x48, 0x52, 0x4a, 0x52, 0x71, 0x9c, 0x00, 0x00 }; if ((ep0 = open("/dev/ugen0.2", O_WRONLY)) < 0) { perror("open(ugen0.2)"); exit(1); } if (write(ep0, buf, sizeof(buf)) < 0) { perror("write"); } close(ep0); exit(0); } 6. 他に気になる点、注意点について。 制御部の仕様は不明。少なくとも以下の指定(任意組み合わせ)は可能。 o 輝度調節(100%/75%/50%/25%) o 回転(0度/270度) o 上下反転 o 表示反転(各ドットの点灯状況を逆転) o 表示オフ 7. プライベートメールを公開してよいか(記述なければ載せます。 良い。 8. 謝辞に名前を載せてもよいかどうか(記述がなければ載せます)。 良い。 -- 渡辺 浩和@府中 <[EMAIL PROTECTED]>