계속 질문을 올리네요.. 죄송합니다.
DIY data 게시판의 이재훈님 글을 보고 tslib를 install 하였습니다
*문서에는 scratch box에서 하라고 되어 있는데 잘 안되어 그냥 root 상태에서
한 후 install 된 파일 들을 /korea-dokdo/nfsmount/rootfs-aesp/usr 아래에
복사하였습니다.
그리고 나서 ts_calibrate를 실행하였더니
[root@aESOP2440]$ts_calibrate
Loading module /usr/lib/ts//input.so
Loading module /usr/lib/ts//pthres.so
Loading module /usr/lib/ts//variance.so
Loading module /usr/lib/ts//dejitter.so
Loading module /usr/lib/ts//linear.so
xres = 640, yres = 480
selected device is not a touchscreen I understand
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
TS_READ_RAW----> x = 24, y = 0, pressure = 0
이렇게 계속 같은 메시지만 뿌립니다..
LCD 화면에는
TSLIB calibration untility
Touch crosshair to calibrate
메시지가 뜨고 [+] 표시가 하나 생겼는데 눌러도 반응이 없고요..
왜 selected device is not a touchscreen I understand
라는 메시지까 뜨는지...
etc/tslib/ts.conf 파일 내용은
module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
etc/profile 에는
TSLIB_TSDEVICE=/dev/s3c2410-ts
TSLIB_CONFFILE=/etc/tslib/ts.conf
export TSLIB_TSDEVICE TSLIB_CONFFILE
을 추가 해 주었습니다..
s3c2410-ts란 걸 제가 만든 건데 이 게 문제 인가요?
그냥 open 할 때는 에러가 없거든요..
뭐 가 안맞는지를 찾아야 할 것 같네요..
if (! ((ioctl(ts->fd, EVIOCGVERSION, &version) >= 0) &&
(version == EV_VERSION) &&
(ioctl(ts->fd, EVIOCGBIT(0, sizeof(bit) * 8), &bit) >= 0) &&
(bit & (1 << EV_ABS)) &&
(ioctl(ts->fd, EVIOCGBIT(EV_ABS, sizeof(absbit) * 8), &absbit) >= 0) &&
(absbit & (1 << ABS_X)) &&
(absbit & (1 << ABS_Y)) && (absbit & (1 << ABS_PRESSURE)))) {
fprintf(stderr, "selected device is not a touchscreen I understandn");
return -1;
}