Linux Touch Screen HOWTO Christoph Baumann, cgb@debian.org Oct 24, 2000 ÀÌÈ£¿¬guru2k@kldp.org ÀÌ ¹®¼­´Â XFree86¿¡¼­ ÅÍÄ¡ ½ºÅ©¸° ÀÔ·Â ÀåÄ¡¸¦ ¾î¶»°Ô ¼³Á¤ÇÏ´ÂÁö ±â¼úÇÑ ´Ù. ÀúÀÚ´Â ¿ÀÁ÷ EloTouch(R) ¿Í MicroTouch(R) ÀåÄ¡¸¸ »ç¿ëÇÒ ±âȸ°¡ À־ ÀÌ ÇÏ¿ìÅõ´Â ¿ÀÈ÷·Á ÀÏÁ¤ÇÑ ÀÌ ÀåÄ¡µéÀ» À§ÇÑ °ÍÀÌ´Ù. ______________________________________________________________________ ¸ñÂ÷ 1. ¾î´À Á¾·ùÀÇ ÀåÄ¡µéÀÌ ¿©±â¿¡ ±â¼úÇÏ°Ô µÇ´À³Ä? 2. ±× ÀåÄ¡¸¦ ¼³Á¤ÇÏ´Â ¹æ¹ý 3. ÀåÄ¡ ÀÛµ¿½ÃÅ°±â 4. ÅÍÄ¡ ½ºÅ©¸°°ú Æз¯·² ¸¶¿ì½º »ç¿ëÇϱâ 5. ÀÐÀ»°Å¸® Á¦¾È ______________________________________________________________________ 1. ¾î´À Á¾·ùÀÇ ÀåÄ¡µéÀÌ ¿©±â¿¡ ±â¼úÇÏ°Ô µÇ´À³Ä? ÀÌ ÇÏ¿ìÅõ´Â ½Ã¸®¾ó Æ÷Æ®(/dev/ttyS0 ȤÀº /dev/ttyS1)¸¦ ÅëÇØ ¿¬°áµÈ ÀåÄ¡ µé¿¡ Àü³äÇÑ´Ù. 2. ±× ÀåÄ¡¸¦ ¼³Á¤ÇÏ´Â ¹æ¹ý ÅÍÄ¡ ½ºÅ©¸° ÀåÄ¡´Â XF86Config ÆÄÀÏ (´ëºÎºÐ /etc/X11/XF86Config ȤÀº /etc/XF86Config) ÀÇ Xinput ºÎºÐ¿¡ ¼³Á¤µÇ¾ú´Ù. ¸ÇóÀ½¿¡ ÀåÄ¡ µå¶óÀ̹ö ¸ðµâÀÌ Á¸ÀçÇÏ´ÂÁö¸¦ È®ÀÎÇ϶ó. ±×°ÍµéÀº /usr/X11R6/lib/modules/¿¡ ÀÖ´Ù (¹«¾ùº¸´Ùµµ xf86Elo.so ¿Í xf86MuTouch.so ÀåÄ¡¿¡ ´ëÇØ ¾ð±ÞÇÑ ¸ðµâ). Áö±Ý XF86Config¸¦ º¸¶ó. °Å±â´Â ÀÌ°Í°ú °°ÀÌ º¸ÀÌ´Â ºÎºÐÀÌ ÀÖ¾î¾ß ÇÑ´Ù: Section "Files" ... ModulePath "/usr/X11R6/lib/modules" ... EndSection X ¼­¹ö¿¡ ÀÇÇØ ÀûÀçµÇ´Â ¸ðµâÀ» ¾òÀ¸·Á¸é ÀÌ °Í°ú °°Àº ºÎºÐÀÌ °Å±â¿¡ ÀÖ¾î ¾ß ÇÑ´Ù: Section "Module" Load "xf86Elo.so" EndSection Áö±Ý ´õ º¹ÀâÇÑ ºÎºÐÀÌ ÀÖ´Ù. X´Â ÀåÄ¡¿¡ °üÇÑ ¸î¸î ¸Å°³ º¯¼ö¸¦ ÇÊ¿ä·Î ÇÑ ´Ù. ÀÌ °Í°ú °°ÀÌ º¸ÀÌ´Â ÀÌ°ÍÀ» À§ÇÑ ºÎºÐ ("man XF86Config"ÀÇ ´õ¸¹Àº Ç׸ñ À» º¸¶ó): Section "Xinput" SubSection "Elographics" #the entry for a MicroTouch device would be SubSection "MicrotouchFinger" Port "/dev/ttyS1" # for a device at serial port 2 DeviceName "TouchScreen" #could be any unambiguous name MinimumXPosition 300 MaximumXPosition 3700 MinimumYPosition 300 MaximumYPosition 3700 UntouchDelay 10 #not supported with MuTouch ReportDelay 10 #not supported with MuTouch AlwaysCore #activates the device on startup EndSubSection EndSection ±× Çϵå¿þ¾îÀÇ ¼³Á¤À» À§ÇÑ µ¶Æ¯ÇÑ °úÁ¤ÀÎ MinimumXPosition, ±âŸ ÀÔ·ÂÀ» Ç϶ó (ÅÍÄ¡ ½ºÅ©¸°°ú °ü°è°¡ ÀÖ´Â ¸ð´ÏÅÍÀÇ Àå¼Ò¿¡ ´Þ·ÁÀÖ´Ù). ±× °ªÀº ´ç½Å ÀÇ ¸ð´ÏÅÍ (xmax¿Í ymax´Â X¼­¹öÀÇ ¼±ÅÃµÈ Çػ󵵿¡ ´Þ·ÁÀÖ´Ù, 1024x768 °°Àº) ÀÇ Á¡ (0,0) ¿Í (xmax,yman) ÀÌ ´ç½ÅÀÇ ÅÍÄ¡ ½ºÅ©¸°¿¡ ±â·ÏÇÏ´Â °ÍÀ» °áÁ¤ÇÑ ´Ù. ±× ÀåÄ¡ µå¶óÀ̹ö´Â ÀÌ °ªµéÀ» ÀÐ°í ´Ù¸¥ ÁÂÇ¥¸¦ ½á ³Ö´Â´Ù. ¼³¸í: --------------touch screen area----------------- I I I ########visible monitor area############## I I #x # I I # (0,0) # I I # (MinimumXPosition,MinimumYPosition) # I I # # I I # # I I # # I I # # I I # # I I # # I I # # I I # (MaximumXPosition,MaximumYPosition)# I I # (xmax,ymax)# I I # x# I I ########################################## I I I ------------------------------------------------ ÀÌ ±â·ÏÇϱâ´Â ½ÃÇè°ú ¿¡·¯ ȤÀº ÀåÄ¡ÀÇ ¹Ì¼÷ÇÑ Ãâ·Â Àб⿡ ÀÇÇØ ³¡³¯¼ö ÀÖ´Ù (¸î¸î ½Ã¸®¾ó Æ÷Æ® ÇÁ·Î±×·¡¹ÖÀÌ ÇÊ¿äÇÏ´Ù, "The Linux Serial Programming HOWTO" ¸¦ º¸¶ó). Eletouch¿Í MicroTouch ±Ùº»ÀÇ °ËÁ¤ µµ±¸°¡ Á¸Àç ÇÑ´Ù (ÀÌ ¹®¼­ÀÇ ÀúÀÚ¿¡ ÀÇÇØ ¾²¿©Á³°í, ftp://metalab.unc.edu/pub/linux/X11/xutils/touchcal-0.1.tar.gz ) ¿¡¼­ ãÀ» ¼ö ÀÖ´Ù). 3. ÀåÄ¡ ÀÛµ¿½ÃÅ°±â X¸¦ ½ÃÀÛÇÑ ÈÄ¿¡, ¿¢½ºÅ͹̳ο¡¼­ ±× ¸í·É¾î¸¦ ÃĶó xsetpointer ¿¡´Â XF86ConfigÀÇ DeviceName "....." ÀÇ ÁÙ¿¡ Á¤ÀÇÇÑ À̸§À» ½á¶ó, ¿¹¸¦ µé¸é TouchScreenÀÏ °ÍÀÌ´Ù. ÀåÄ¡¸¦ ½ÃÀÛÇÒ¶§¸¶´Ù ÀÛµ¿ ½ÃÅ°·Á¸é ÅÍÄ¡ ½ºÅ©¸°ÀÇ AlwaysCore¸¦ ¼±ÅÃÇضó. 4. ÅÍÄ¡ ½ºÅ©¸°°ú Æз¯·² ¸¶¿ì½º »ç¿ëÇϱâ ÅÍÄ¡ ½ºÅ©¸°°ú Æз¯·· ¸¶¿ì½º¸¦ »ç¿ëÇÏ·Á¸é Xinput-sectionÀÇ mouse specs¸¦ µî·Ï ½ÃÄÑ¾ß ÇÑ´Ù. ÀÌ Á¤ÀÇ´Â Pointer-section ¿¡µµ °°ÀÌ ÀÖ¾î¾ß ÇÑ´Ù. ¾Æ·¡¿¡ PS/2-mouseÀÇ ¿¹°¡ ÀÖ´Ù: Section "Xinput" SubSection "Mouse" Protocol "PS/2" Port "/dev/mouse" #could also be /dev/psaux DeviceName "Mouse" AlwaysCore EndSubSection ... EndSection ¸î¸î »ç¶÷µéÀº ÀÌ °ÍÀ» ÁÖ¸ñÇÏ°Ô ÇÑ´Ù. ƯÈ÷ AlwaysCore ¿É¼ÇÀÇ °ü½À. ±× µé ¸ðµÎ¿¡°Ô °¨»çÇÑ´Ù. 5. ÀÐÀ»°Å¸® Á¦¾È o XF86ConfigÀÇ ¸ÇÆäÀÌÁö o http://www.elotouch.com/Support/linux.asp o http://www.hof-berlin.de/tablet/tablet.html (ÀÌ URLÀ» ¾Ë·ÁÁØ Christer Olofsso ¿¡°Ô °¨»çÇÑ´Ù.) o ´ç½ÅÀÇ ÅÍÄ¡ ½ºÅ©¸°°ú ÇÔ²² ¹ÞÀº ¸Þ´º¾ó :-)