ASUS EeeTop ET2002T
Introduction
Asus launched a really nice gadget called the EeeTop ET2002T. While its predecessor, the ET1602 was an based on an Intel chipset, this one is based on the nVidia Ion platform.
The touchscreen works perfectly with the evtouch driver. The X configuration for the touch screen is almost identical to that of the ET1602.
Configuring the touch screen
Add your Eee Top as an MD
Connect your Eee Top to the LAN side of your Core (set it for PXE boot in BIOS first of course) and power it up. The Eee Top should start to PXE boot and you will see the following yellow text on screen - "We have announced ourselves to the Router..." and you should see that the script "DisklessSetup.sh" is running. This stage will take some time... be patient. The Eee Top will then reboot and continue the setup process. After a few mins the Eee Top will be sitting there in the AVwizard. The connector to use is "DVI" - even if you see a picture when you select VGA. Now we are ready to continue onto the next step...
Use Web Admin to identify the ID of your Eee Top
Go to Web Admin on your Core and then to Wizard -> Devices -> Media Directors and scroll down to the bottom of the page. The last Media Director listed will be your recently added Eee Top. Make a note of the number with a '#' in front of it next to the drop down that is used to select the room the MD should be in. This number is the 'Moon' number or unique ID of the MD.
SSH into your Eee Top
Go to your Core (or ssh into your Core from another computer), open a Konsole window and sudo yourself;
sudo su -
chroot yourself to the Eee Top
Use chroot to gain access to your Eee Top so that we can make the changes in the following steps;
chroot /usr/pluto/diskless/<Moon No. from above step>
Your prompt should change and you are now working on the Eee Top's file system.
Install the evtouch driver
apt-get install xserver-xorg-input-evtouch
Configure udev
Configure udev so it creates a stable symlink. The /dev/input/eventX
entry may change, so this symlink will be used to point to it
Create the /etc/udev/rules.d/69-touchscreen.rules
file with this content:
KERNEL=="event*", SUBSYSTEM=="input", ATTRS{modalias}=="input:b0003v1CB6p6681e0110-e0,1,3,k110,111,140,14A,ra0,1,2,3,18,mlsfw", SYMLINK+="input/evtouch"
I found the weird modalias string using udevinfo. I also found out, using Google, that the match string can only contain values from the device itself and ONLY ONE of its parents. So you can't use more than one parrent. This explains the why the vendor and product IDs arent tested above. But the modalias contains them anyway.
The touchscreen device exposes two mouse devices. So far, I couldn't get any data out of the second mouse. I can only assume it has something to do with multi-touch, but I have no proof of it. The second mouse has a slightly different modalias. Testing using the vendor and product ID resulted in /dev/input/evtouch pointing to the second mouse device, i.e. the touchscreen wouldn't work.
Setup xorg.conf
My xorg.conf looks like this right now. Notice that the Mouse Input device has had the Driver set to 'void' other wise you will get double taps whenever you touch the screen. This will of course disable the mouse. (The changes relevant to the Eee Top are in bold):
Section "ServerLayout" Identifier "XFree86 Configured" Screen 0 "Screen0" 0 0 InputDevice "Mouse0" "CorePointer" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Touch0" EndSection Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/lib/xorg/modules" FontPath "/usr/share/fonts/X11" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" FontPath "/usr/X11R6/lib/X11/fonts/CID/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" EndSection Section "Module" Load "dbe" Load "extmod" Load "record" Load "xtrap" Load "speedo" Load "type1" Load "glx" Load "int10" Load "v4l" EndSection Section "InputDevice" Identifier "Keyboard0" Driver "keyboard" Option "XkbLayout" "us" Option "XkbVariant" "basic" Option "XkbModel" "pc105" EndSection Section "InputDevice" Identifier "Mouse0" #Driver "mouse" Driver "void" Option "Protocol" "auto" Option "Device" "/dev/input/mice" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" Identifier "Touch0" Driver "evtouch" Option "device" "/dev/input/evtouch" #Option "TapTimer" "10" #Option "LongTouchTimer" "1500" Option "MinX" "180" Option "MinY" "0" Option "MaxX" "8192" Option "MaxY" "8192" Option "ReportingMode" "Raw" Option "Emulate3Buttons" "false" Option "Emulate3Timeout" "50" Option "SendCoreEvents" "on" Option "MoveLimit" "0" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown Monitor Vendor" ModelName "Unknown Monitor Model" Modeline "1920x1080" 148.5 1920 1960 2016 2200 1080 1082 1088 1125 HorizSync 20-500 VertRefresh 59-61 EndSection Section "Device" Identifier "Card0" Driver "nvidia" VendorName "Unknown Vendor Name" BoardName "Unknown Board Name" Option "LinearAlloc" "16384" #BusID "PCI:0:2:0" # Option "NoDDC" "true" Option "XvmcUsesTextures" "true" Option "renderAccel" "true" Option "NoDDCValue" Option "UseEDID" "true" Option "ExactModeTimingsDVI" "true" Option "NoLogo" "true" Option "NoBandWidthTest" "true" Option "ModeValidation" "NoDFPNativeResolutionCheck, NoEdidMaxPClkCheck, NoMaxPClkCheck, AllowInterlacedModes, AllowNon60HzDFPModes, NoEdidModes" Option "DynamicTwinView" "false" Option "UseEvents" "true" Option "ConnectedMonitor" "DFP-0" EndSection Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Modes "1920x1080" Virtual 1920 1080 EndSubSection Option "XvmcUsesTextures" "true" Option "renderAccel" "true" Option "NoDDCValue" Option "UseEDID" "true" Option "ExactModeTimingsDVI" "true" Option "NoLogo" "true" Option "NoBandWidthTest" "true" Option "ModeValidation" "NoDFPNativeResolutionCheck, NoEdidMaxPClkCheck, NoMaxPClkCheck, AllowInterlacedModes, AllowNon60HzDFPModes, NoEdidModes" Option "DynamicTwinView" "false" Option "UseEvents" "true" Option "TVStandard" "1080p" EndSection Section "ServerFlags" Option "AllowMouseOpenFail" "true" Option "BlankTime" "0" Option "StandbyTime" "0" Option "SuspendTime" "0" Option "OffTime" "0" Option "AIGLX" "Off" EndSection Section "Extensions" Option "Composite" "false" Option "RENDER" "true" EndSection
Finalize
- Reboot
- Complete the AVwizard selecting UI1
You need to reboot so that udev creates the symlink properly. That, or you open up the EeeTop to disconnect and reconnect the USB port (if there is a USB header in there of course)
- Enjoy your touchscreen