その1、環境整備
kup:~# mknod /dev/ttyUSB0 c 188 0 mknod: `/dev/ttyUSB0': File exists kup:~# ls -l /dev/ttyUSB0 crw-rw---- 1 root root 188, 0 Mar 2 2005 /dev/ttyUSB0 kup:~#既にあった。
kup:/etc/init.d# mv miconapl miconapl.orig kup:/etc/init.d# cp miconapl.orig miconapl kup:/etc/init.d# vi miconapl : : kup:/etc/init.d# diff -c miconapl.orig miconapl *** miconapl.orig Fri Jun 8 04:48:09 2007 --- miconapl Sun Sep 16 20:30:20 2007 *************** *** 6,11 **** --- 6,13 ---- chroot /usr/local/buffalo /etc/init.d/checkroot.sh start chroot /usr/local/buffalo /usr/local/sbin/miconapl -b -a boot_end chroot /usr/local/buffalo /etc/init.d/FanController.sh start + chroot /usr/local/buffalo insmod /lib/modules/2.6.12.6-arm1/kernel/drivers/usb/serial/usbserial.ko + chroot /usr/local/buffalo insmod /lib/modules/2.6.12.6-arm1/kernel/drivers/usb/serial/ftdi_sio.ko ;; stop) chroot /usr/local/buffalo /etc/init.d/FanController.sh stop kup:/etc/init.d#ついでに手動でロード
kup:/etc/init.d# chroot /usr/local/buffalo insmod /lib/modules/2.6.12.6-arm1/kernel/drivers/usb/serial/usbserial.ko kup:/etc/init.d# chroot /usr/local/buffalo insmod /lib/modules/2.6.12.6-arm1/kernel/drivers/usb/serial/ftdi_sio.ko kup:/etc/init.d#
kup:/usr/local/src/KURO-RS# gcc -o rec rs_rec.c -su: gcc: command not found kup:/usr/local/src/KURO-RS# cc -o rec rs_rec.c -su: cc: command not found kup:/usr/local/src/KURO-RS#あちゃー。開発環境がない。
kup:/usr/local/src/KURO-RS# apt-get update : : kup:/usr/local/src/KURO-RS# apt-get install make gcc : : kup:/usr/local/src/KURO-RS#もう一回コンパイル
kup:/usr/local/src/KURO-RS# !cc cc -o rec rs_rec.c rs_rec.c:12:19: error: stdio.h: そのようなファイルやディレクトリはありません rs_rec.c:13:20: error: stdlib.h: そのようなファイルやディレクトリはありません rs_rec.c:14:21: error: strings.h: そのようなファイルやディレクトリはありません rs_rec.c:15:21: error: termios.h: そのようなファイルやディレクトリはありません rs_rec.c:16:20: error: unistd.h: そのようなファイルやディレクトリはありません rs_rec.c:17:19: error: fcntl.h: そのようなファイルやディレクトリはありません rs_rec.c:18:19: error: errno.h: そのようなファイルやディレクトリはありません rs_rec.c: In function 'main': rs_rec.c:30: error: 'FILE' undeclared (first use in this function) rs_rec.c:30: error: (Each undeclared identifier is reported only once rs_rec.c:30: error: for each function it appears in.) rs_rec.c:30: error: 'data_fp' undeclared (first use in this function) rs_rec.c:30: error: 'NULL' undeclared (first use in this function) rs_rec.c:31: error: storage size of 'oldTIO' isn't known rs_rec.c:32: error: storage size of 'newTIO' isn't known rs_rec.c:56: warning: incompatible implicit declaration of built-in function 'printf' rs_rec.c:59: error: 'O_RDWR' undeclared (first use in this function) rs_rec.c:59: error: 'O_NOCTTY' undeclared (first use in this function) rs_rec.c:66: warning: incompatible implicit declaration of built-in function 'bzero' rs_rec.c:68: error: 'B115200' undeclared (first use in this function) rs_rec.c:68: error: 'CS8' undeclared (first use in this function) rs_rec.c:68: error: 'CLOCAL' undeclared (first use in this function) rs_rec.c:68: error: 'CREAD' undeclared (first use in this function) rs_rec.c:71: error: 'IGNPAR' undeclared (first use in this function) rs_rec.c:74: error: 'VTIME' undeclared (first use in this function) rs_rec.c:75: error: 'VMIN' undeclared (first use in this function) rs_rec.c:76: error: 'TCIFLUSH' undeclared (first use in this function) rs_rec.c:77: error: 'TCSANOW' undeclared (first use in this function) rs_rec.c:90: warning: incompatible implicit declaration of built-in function 'memset' rs_rec.c:101: warning: incompatible implicit declaration of built-in function 'memcpy' rs_rec.c:128: warning: incompatible implicit declaration of built-in function 'fwrite' kup:/usr/local/src/KURO-RS#今度は、ヘッダがない。
kup:/usr/local/src/KURO-RS# apt-get install libc6-dev : :もう一回コンパイル
kup:/usr/local/src/KURO-RS# !cc cc -o rec rs_rec.c rs_rec.c: In function 'main': rs_rec.c:90: warning: incompatible implicit declaration of built-in function 'memset' rs_rec.c:101: warning: incompatible implicit declaration of built-in function 'memcpy' kup:/usr/local/src/KURO-RS# cc -o send rs_send.c kup:/usr/local/src/KURO-RS#警告はさておき、コンパイルできた。
kup:/usr/local/src/KURO-RS# ./rec REC_CODE /dev/ttyUSB0 ONOFF - /dev/ttyUSB0出るはずの、"rec code waiting........."が出ない。
kup:/usr/local/src/KURO-RS# ./rec REC_CODE /dev/ttyUSB0 REC_CODE - /dev/ttyUSB0 rec code waiting.........今度は"rec code waiting........."が出た。
kup:/usr/local/src/KURO-RS# ./rec REC_CODE /dev/ttyUSB0 REC_CODE - /dev/ttyUSB0 rec code waiting.........再度LinkTheater のリモコンの電源ボタンを押してみた。
Create Rec File : [REC_CODE] kup:/usr/local/src/KURO-RS# od -xc REC_CODE 0000000 ffff ffff ffff ffff ffff 07ff 0000 0000 377 377 377 377 377 377 377 377 377 377 377 \a \0 \0 \0 \0 0000020 1f00 c1f8 7e0f 0000 f81f 0fc1 e07e 3f03 \0 037 370 301 017 ~ \0 \0 037 370 301 017 ~ 340 003 ? 0000040 c000 000f 03e0 003f 0fc0 e000 0007 01f8 \0 300 017 \0 340 003 ? \0 300 017 \0 340 \a \0 370 001 0000060 7c00 07e0 003f 0f80 e000 3f07 81f8 000f \0 | 340 \a ? \0 200 017 \0 340 \a ? 370 201 017 \0 0000100 07e0 f000 0001 e0fc 3f07 8000 001f 07e0 340 \a \0 360 001 \0 374 340 \a ? \0 200 037 \0 340 \a 0000120 f000 1f83 0000 0000 0000 0000 0000 0000 \0 360 203 037 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000140 0000 0000 0000 0000 0000 0000 0000 0000 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000200 0000 0000 0000 ffc0 ffff ffff ffff ffff \0 \0 \0 \0 \0 \0 300 377 377 377 377 377 377 377 377 377 0000220 ffff 0000 0fc0 0000 0000 0000 0000 0000 377 377 \0 \0 300 017 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000240 0000 0000 0000 0000 0000 0000 0000 0000 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0000360 kup:/usr/local/src/KURO-RS#3回目に無事動作したようだ。
kup:/usr/local/src/KURO-RS# cc -o send rs_send.c kup:/usr/local/src/KURO-RS#
kup:/usr/local/src/KURO-RS# ./send REC_CODE - 1 - /dev/ttyUSB0 Send File : [REC_CODE] kup:/usr/local/src/KURO-RS#電源の入り切りができた。
HS-DHGL でも同じであれば、send のソースを修正するなりの対策が必要。
|
|
← KURO-RS ドライバ(5)ドライバの修正 |
ハックの記録 LinkStation/玄箱 をハックしよう |
→ KURO-RS 録画構想 |