Okay, here comes... Please bear in mind that this is based on my memory so some things/names might be not exact but you should have an idea of what I'm trying to convey. Feel free to point out inconsistencies and I'll edit/correct them.
1. Downolad and install Puppy Linux 4.0 on a CF card.
Download a puppy-4.00-k2.6.21.7-seamonkey.iso from:
http://distro.ibiblio.org/pub/linux/...ns/puppylinux/
There are several ways to install. I had to use a separate machine for this. Burned the ISO on a CD and booted it. There is an install script which you need to run from the menu ('System Utilities'??). I had a CF reader connected to USB and wanted to do an install using a "CF wich will be used as a hard drive" option but the script died. I ended up doing an "Install to HD" option with the CF card used as hard drive. I've used a 2.5 IDE-to-CF adapter similar to this one:
http://www.addonics.com/products/fla...ad44midecf.asp
Since I had one lying around and it was less hustle for me to do that then to troubleshoot the install script. I already had one full partition with ext2 filesystem on the CF card before attempting to put the card with the adapter into the helper notebook.
I hope the installation process works for you and you won't need an adapter. The script asks some basic questions about partitions and does formatting and copying but I've found that a pre-formatted ext2
partition works better for the script. Besides, when GRUB is invoked as a last step during the installation it's straightforward to setup it to /dev/hda since this is how it'll be when the card is in the Visionplate.
2. Stick the CF with the installed Puppy into the Visionplate and boot with the mouse and keyboard attached.
I had a USB hub attached to one of the ports. Comes in handy for a USB ethernet adapter or using a flash drive for some extra files (see #4). Make sure you pick Xorg during the boot. Puppy will create a xorg.conf, wich will need to be edited later.
3. Open the terminal and
Code:
modprobe evdev && modprobe mk712
Do a
Code:
cat /proc/bus/input/devices
and look for the "Touchscreen MK712 section". There should be a line that looks something
like H: Handlers=mouse1 event2. If you see it, the /dev/input/event2 will be your touchscreen device node. Usually, that is the default with USB and keyboard attached. To confirm kill X with Crtl-Alt-Backspace and do a
Code:
cat /dev/input/event2
and tap on the screen a couple of times. You should see some binary garbage characters, which is a good thing and means that the touchscreen is responding. Ctrl+C quits the cat command and
gets you back to X.
4. Download evtouch-0.8.7.tar.gz (link at the bottom of the page) from:
http://www.conan.de/touchscreen/evtouch.html#config%22.
For #4 through #6 I basically followed the instructions for evtouch installation from the link just above. You can either download the file and untar it directly on the Visionplate if you have networking set up or use another computer and copy it to a USB flash drive and then connect the drive to the hub and mount it on the Visionplate (that's what I did).
5. Untar the evtouch-0.8.7.tar.gz somewhere and copy evtouch_drv.so to /usr/lib/xorg/modules/input/
6. Edit /etc/X11/xorg.conf and add the following (it's a good idea to make a backup copy of xorg.conf first just in case):
a. Add the following line to the section "ServerLayout"
Code:
InputDevice "touchscreen0" "CorePointer"
b. Add a new InputDevice section with the following text
Code:
Section "InputDevice"
Identifier "touchscreen0"
Driver "evtouch"
Option "DeviceName" "touchscreen"
Option "Device" "/dev/input/event2"
Option "SwapX" "false" ## default false
Option "SwapY" "true"
Option "MinX" "152"
Option "MinY" "224"
Option "MaxX" "4031"
Option "MaxY" "4001"
Option "ReportingMode" "Raw"
Option "SendCoreEvents" "On"
EndSection
Note the second option statement uses event2 node as an argument and it has to be the same as shown by
cat /proc/bus/input/devices in #3. You will have to change event2 to whatever eventX showed up as the touchscreen. Also note the SwapY "true" option. With "false" I initially had Y-axis movements reversed and the cursor would move okay along X-axis but in the opposite direction vertically. You can change back to "false" if that happens to you with the current "true" option.
7. Kill X with Ctrl-Alt-Backspace and run it again with
(This assumes you already have the edits in xorg.conf so X is run with the new options)
8. Feel free to experiment with other evtouch options - everything is documented on the homepage.
9. You can make the touchscreen modules to load on every boot. Just edit /etc/rc.d/rc.local and add the necessary commands there
Code:
modprobe evdev
modprobe mk712
Now, by all means it's not the end. This just gets the touchscreen to respond but things need to improve to work perfectly. I already mentioned the touchscreen weirdness. Curious if anybody else would experience similar behavior.
Another thing to watch out for is that unlike udev, hotplug in Puppy assigns device nodes depending what peripherals are connected at boot time. This means that if you disconnect your mouse and keyboard and boot, your touchscreen will default to /dev/input/event0 but the xorg.conf will still be set up to use /dev/input/event2. One way to get around this is to use different xorg configurations as per below (see #(10))
http://www.murga-linux.com/puppy/vie...fc4292217e07e1
Okay, now let the fun begin - looking forward to hear some good news!