特殊:Badtitle/NS100:TabletSetupWizardpen:修订间差异
小无编辑摘要 |
小无编辑摘要 |
||
(未显示同一用户的4个中间版本) | |||
第2行: | 第2行: | ||
{{Languages|UbuntuHelp:TabletSetupWizardpen}} | {{Languages|UbuntuHelp:TabletSetupWizardpen}} | ||
== Known tablets working with the Wizardpen-driver == | == Known tablets working with the Wizardpen-driver == | ||
The setup has been tested with the following USB tablets. | The setup has been tested with the following USB tablets. Non-USB tablets are not covered by this guide. | ||
Non-USB tablets | |||
=== Known Tablet Names (The packaging) === | === Known Tablet Names (The packaging) === | ||
* Acecad Flair II GT-504 | * Acecad Flair II GT-504 | ||
* DigiPro 5.5×4” Graphics Tablet | |||
* Digital Ink Pad (A4 format) | |||
* G-pen | * G-pen | ||
* Genius Wizardpen | * Genius Wizardpen | ||
* Genius Mousepen | * Genius Mousepen | ||
* Genius | * Genius Easypen i405 | ||
* Genius | |||
* iBall | * iBall | ||
* Manhattan | * Manhattan | ||
* Pentagram | * Pentagram | ||
* QWare | * QWare | ||
* Trust TB-3100 | |||
* Trust TB-5300 | |||
* Trust TB-6300 | |||
* UC-LOGIC | * UC-LOGIC | ||
* iBall Tablet PF8060 | |||
* AIPTEK HyperPen 10000 U | |||
* AIPTEK Slim Tablet U600 Premium II | |||
If your tablet is working using this guide, but not listed here, please add it to the list above. (If you don't have an account, then email me: drpjkurian@gmail.com | |||
* Tablet | |||
* | |||
* Tablet | |||
If your tablet is working, but not listed here, please | |||
== Setting up your tablet == | == Setting up your tablet == | ||
=== General information === | === General information === | ||
As of march 2010 the latest wizardpen driver from [https://launchpad.net/wizardpen Wizardpen on Launchpad] is available for Ubuntu/Debian as '''xserver-xorg-input-wizardpen''', with the following apt(itude) settings:<pre><nowiki> | |||
deb http://ppa.launchpad.net/doctormo/xorg-wizardpen/ubuntu jaunty main | |||
deb-src http://ppa.launchpad.net/doctormo/xorg-wizardpen/ubuntu jaunty main </nowiki></pre> | |||
It should install without hassle, includes HAL configs and drivers. You still should include the driver in xorg.conf (Section "InputDevice") as mentioned below. | |||
=== Installing needed packages === | === Installing needed packages === | ||
Open a terminal | Open a terminal | ||
Install some needed packages - Run this command: | Install some needed packages - Run this command: | ||
<pre><nowiki> | <pre><nowiki> | ||
sudo apt-get install xutils libx11-dev libxext | sudo apt-get install xutils libx11-dev libxext-dev build-essential \ | ||
xautomation xinput xserver-xorg-dev xutils-dev libtool \ | |||
autoconf | |||
</nowiki></pre> | </nowiki></pre> | ||
=== Downloading | === Downloading the driver === | ||
You can download the latest driver from [https://launchpad.net/wizardpen Wizardpen on Launchpad]. Either try to find a deb or a source package there, or get the latest version using bzr. If you choose to install a source package you can just extract it and skip to "Building and installing the driver". | |||
To install bzr run: | |||
<pre><nowiki> | <pre><nowiki> | ||
sudo apt-get install bzr | |||
bzr branch lp:wizardpen | |||
</nowiki></pre> | </nowiki></pre> | ||
Now we need to generate the ./configure script: | |||
<pre><nowiki> | <pre><nowiki> | ||
./autogen.sh | |||
</nowiki></pre> | </nowiki></pre> | ||
=== Building and installing the driver === | |||
Run these commands from the directory you installed the source: | |||
Configure, make and install: | |||
<pre><nowiki> | <pre><nowiki> | ||
./configure --with-xorg-module-dir=/usr/lib/xorg/modules | |||
make && sudo make install | |||
</nowiki></pre> | </nowiki></pre> | ||
Check the integrity of the driver installation by typing the command. | |||
<pre><nowiki> | <pre><nowiki> | ||
ls /usr/lib/xorg/modules/input/wizardpen_drv.* | |||
</nowiki></pre> | </nowiki></pre> | ||
It should give the output as follows | |||
<pre><nowiki> | <pre><nowiki> | ||
/usr/lib/xorg/modules/input/wizardpen_drv.la | |||
/usr/lib/xorg/modules/input/wizardpen_drv.so | |||
</nowiki></pre> | </nowiki></pre> | ||
Type the following command in the terminal to know the make of the Pentablet. | |||
<pre><nowiki> | <pre><nowiki> | ||
grep -i name /proc/bus/input/devices | |||
</nowiki></pre> | </nowiki></pre> | ||
Please note down the make of the tablet which you have to use in the next step. | |||
Create a new .fdi file by using the following command in terminal | |||
<pre><nowiki> | <pre><nowiki> | ||
sudo vi /etc/hal/fdi/policy/99-x11-wizardpen.fdi | |||
</nowiki></pre> | </nowiki></pre> | ||
Press 'I' so that INSERT appears | |||
Paste the following template in the terminal | |||
<pre><nowiki> | <pre><nowiki> | ||
<?xml version="1.0" encoding="ISO-8859-1" ?> | |||
<deviceinfo version="0.2"> | |||
<device> | |||
<!-- This MUST match with the name of your tablet obtained --> | |||
<!-- in Step 2 specified previously --> | |||
<match key="info.product" contains="NAME OF YOUR TABLET"> | |||
<merge key="input.x11_driver" type="string">wizardpen</merge> | |||
<merge key="input.x11_options.SendCoreEvents" type="string">true</merge> | |||
<!-- Modify these configuration accordingly --> | |||
<!-- See CONFIGURATION OPTIONS section for the full-set of --> | |||
<!-- configurable options --> | |||
<merge key="input.x11_options.TopX" type="string">5619</merge> | |||
<merge key="input.x11_options.TopY" type="string">6554</merge> | |||
<merge key="input.x11_options.BottomX" type="string">29405</merge> | |||
<merge key="input.x11_options.BottomY" type="string">29671</merge> | |||
</match> | |||
</device> | |||
</deviceinfo> | |||
</nowiki></pre> | </nowiki></pre> | ||
Please insert the name of your tablet where i have mentioned NAME OF YOUR TABLET. You can do this by moving the cursor in the terminal with arrow keys. | |||
Click Esc and type :wq and press Enter to save the file you have created. | |||
Reboot your machine. It should work. | |||
=== Calibration === | |||
8060 | |||
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconHint2.png Note: In the subsection, you'll find output from calibrate. If your tablet is listed there, you can just use that output instead. | |||
* If you tablet isn't listed, I would love to recieve an email with the output, and the model of your tablet. (See email at the end of the page.) | |||
If you want to calibrate yourself, just proceed. | |||
Enter the "calibrate"-directory - Run this command: | |||
<pre><nowiki> | <pre><nowiki> | ||
cd calibrate | |||
</nowiki></pre> | </nowiki></pre> | ||
Calibrate in order to find the edges of your tablet/digitizer - Run this command: | |||
<pre><nowiki> | <pre><nowiki> | ||
sudo ./wizardpen-calibrate /dev/tablet-event | |||
sudo | |||
</nowiki></pre> | </nowiki></pre> | ||
You may find "/dev/tablet-event" missing, try this command to help find the correct value | |||
<pre><nowiki> | <pre><nowiki> | ||
ls /dev/input/by-id/ | |||
</nowiki></pre> | </nowiki></pre> | ||
Example corrected "/dev/tablet-event" location. Use the value for rc.local and xorg.conf | |||
<pre><nowiki> | <pre><nowiki> | ||
/dev/input/by-id/usb-WALTOP_International_Corp._Slim_Tablet-event-if00 | |||
</nowiki></pre> | </nowiki></pre> | ||
Save the output from wizardpen-calibrate (the last 10 lines) - You'll need it later in this [[UbuntuHelp:HowTo|HowTo]]. | |||
==== Calibration output (If calibrate for some reason doesn't work) ==== | |||
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconHint2.png Skip this section if calibrate worked for you. | |||
Genius G-Pen F610 (WALTOP SlimTablet) : | |||
<pre><nowiki> | <pre><nowiki> | ||
Section "InputDevice" | |||
Identifier "WizardPen Tablet" | |||
Driver "wizardpen" | |||
Option "Device" "/dev/input/by-id/usb-WALTOP_International_Corp._Slim_Tablet-event-if00" | |||
Option "TopX" "295" | |||
Option "TopY" "210" | |||
Option "BottomX" "20000" | |||
Option "BottomY" "12500" | |||
EndSection | |||
</nowiki></pre> | </nowiki></pre> | ||
Tablet W5540U (UC-Logic): | Tablet W5540U (UC-Logic): | ||
<pre><nowiki> | <pre><nowiki> | ||
Section "InputDevice" | Section "InputDevice" | ||
Identifier "WizardPen Tablet" | Identifier "WizardPen Tablet" | ||
Option "SendCoreEvents" "true" | Option "SendCoreEvents" "true" | ||
Driver "wizardpen" | Driver "wizardpen" | ||
Option "Device" "/dev/tablet-event" | Option "Device" "/dev/tablet-event" | ||
Option "TopX" "2199" | Option "TopX" "2199" | ||
Option "TopY" "3598" | Option "TopY" "3598" | ||
Option "BottomX" "30325" | Option "BottomX" "30325" | ||
Option "BottomY" | Option "BottomY" "29278" | ||
EndSection | EndSection | ||
</nowiki></pre> | </nowiki></pre> | ||
第133行: | 第152行: | ||
<pre><nowiki> | <pre><nowiki> | ||
Section "InputDevice" | Section "InputDevice" | ||
Identifier "WizardPen Tablet" | Identifier "WizardPen Tablet" | ||
Option "SendCoreEvents" "true" | Option "SendCoreEvents" "true" | ||
Driver "wizardpen" | Driver "wizardpen" | ||
Option "Device" "/dev/tablet-event" | Option "Device" "/dev/tablet-event" | ||
Option "TopX" "826" | Option "TopX" "826" | ||
Option "TopY" "2626" | Option "TopY" "2626" | ||
Option "BottomX" "32747" | Option "BottomX" "32747" | ||
Option "BottomY" | Option "BottomY" "32762" | ||
EndSection | EndSection | ||
</nowiki></pre> | </nowiki></pre> | ||
第148行: | 第165行: | ||
<pre><nowiki> | <pre><nowiki> | ||
Section "InputDevice" | Section "InputDevice" | ||
Identifier "WizardPen Tablet" | Identifier "WizardPen Tablet" | ||
Option "SendCoreEvents" "true" | Option "SendCoreEvents" "true" | ||
Driver "wizardpen" | Driver "wizardpen" | ||
Option "Device" "/dev/tablet-event" | Option "Device" "/dev/tablet-event" | ||
Option "TopX" "0" | Option "TopX" "0" | ||
Option "TopY" "1553" | Option "TopY" "1553" | ||
Option "BottomX" "32541" | Option "BottomX" "32541" | ||
Option "BottomY" "32762" | Option "BottomY" "32762" | ||
Option " | EndSection | ||
Option | </nowiki></pre> | ||
Tablet W8060U (Trust TB-6300) | |||
<pre><nowiki> | |||
Section "InputDevice" | |||
Identifier "WizardPen Tablet" | |||
Option "SendCoreEvents" "true" | |||
Driver "wizardpen" | |||
Option "Device" "/dev/tablet-event" | |||
Option "TopX" "0" | |||
Option "TopY" "234" | |||
Option "BottomX" "32747" | |||
Option "BottomY" "32762" | |||
EndSection | EndSection | ||
</nowiki></pre> | </nowiki></pre> | ||
=== Setting up X === | === Setting up X === | ||
Now we are ready to edit the xorg.conf file | Now we are ready to edit the xorg.conf file. | ||
Take a backup - Run this command: | Take a backup - Run this command: | ||
<pre><nowiki> | <pre><nowiki> | ||
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup | sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup | ||
第170行: | 第198行: | ||
sudo vim /etc/X11/xorg.conf | sudo vim /etc/X11/xorg.conf | ||
</nowiki></pre> | </nowiki></pre> | ||
Press '''"I"''' - So that '''"-- INSERT --"''' appears | Press '''"I"''' - So that '''"-- INSERT --"''' appears | ||
Insert the output from calibrate into xorg.conf: (just place it below your generic mouse | Insert the output from calibrate into xorg.conf: (just place it below your generic mouse) | ||
Add the following line in the "ServerLayout" section: | Add the following line in the "ServerLayout" section: | ||
<pre><nowiki> | <pre><nowiki> | ||
InputDevice "WizardPen Tablet" "AlwaysCore" | InputDevice "WizardPen Tablet" "AlwaysCore" | ||
</nowiki></pre> | </nowiki></pre> | ||
Save the file, and exit the editor | Save the file, and exit the editor (Press "ESC" and write ":wq" and press "Enter") | ||
==== Making X start without a tablet connected ==== | ==== Making X start without a tablet connected ==== | ||
Now, the driver should NOT be initialized, if the tablet is NOT found | Now, the driver should NOT be initialized, if the tablet is NOT found | ||
The wizardpen-driver does not support hotplugging, so we should run a script on startup, to define whether or not the tablet is present. | The wizardpen-driver does not support hotplugging, so we should run a script on startup, to define whether or not the tablet is present. | ||
Open '''/etc/rc.local''' - Run this command: | Open '''/etc/rc.local''' - Run this command: | ||
第184行: | 第212行: | ||
sudo vim /etc/rc.local | sudo vim /etc/rc.local | ||
</nowiki></pre> | </nowiki></pre> | ||
Press '''"I"''' - So that '''"-- INSERT --"''' appears | Press '''"I"''' - So that '''"-- INSERT --"''' appears | ||
...and insert some code: (insert it JUST above "exit 0") | ...and insert some code: (insert it JUST above "exit 0") | ||
<pre><nowiki> | <pre><nowiki> | ||
XORG_CONF=/etc/X11/xorg.conf | XORG_CONF=/etc/X11/xorg.conf | ||
if [ -e /dev/tablet-event ]; then | if [ -e /dev/tablet-event ]; then | ||
sed -ie 's/^\(\s*\)\#\(\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\1\2/' "$XORG_CONF" | sed -ie 's/^\(\s*\)\#\(\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\1\2/' "$XORG_CONF" | ||
echo "Udev created /dev/tablet-event = Tablet present | echo "Udev created /dev/tablet-event = Tablet present - Tablet-driver enabled" | ||
else | else | ||
sed -ie 's/\(^\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\#&/' "$XORG_CONF" | sed -ie 's/\(^\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\#&/' "$XORG_CONF" | ||
echo "Udev did NOT create /dev/tablet-event = tablet NOT present | echo "Udev did NOT create /dev/tablet-event = tablet NOT present - Tablet-driver disabled" | ||
fi | fi | ||
</nowiki></pre> | </nowiki></pre> | ||
Save the file, and exit the editor | Save the file, and exit the editor (Press "ESC" and write ":wq" and press "Enter") | ||
Now you can test udev's ability to detect the tablet - Run this command: | Now you can test udev's ability to detect the tablet - Run this command: | ||
<pre><nowiki> | <pre><nowiki> | ||
sudo /etc/init.d/rc.local start | sudo /etc/init.d/rc.local start | ||
</nowiki></pre> | </nowiki></pre> | ||
The output will tell you if it is present or not | The output will tell you if it is present or not - And it should match reality (try to disconnect it, and try again - connect, and then again - etc...) | ||
You should now be able to restart X and have the tablet working as a mouse. | You should now be able to restart X and have the tablet working as a mouse. | ||
I'm still working on a way to support hotplugging, but the above code-example will make X start without a present tablet. | I'm still working on a way to support hotplugging, but the above code-example will make X start without a present tablet. | ||
=== Configuring the buttons on the pen === | === Configuring the buttons on the pen === | ||
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconHint2.png Special thanks to riesenpixel for writing the following part about the button-configuration. | |||
There are two ways to change the button mapping: | |||
==== The first way (Not very smart, since it also change the behaviour of your generic mouse) ==== | |||
If you want to change the button mapping for all devices running in core mode, you should use xmodmap. (not recommended, try the second way first) | |||
Show the current configuration: | |||
<pre><nowiki> | |||
xmodmap -pp | |||
</nowiki></pre> | |||
You will get a table like this: | |||
{|border="1" cellspacing="0" | |||
| Physical Button || Button Code | |||
|- | |||
| 1 || 1 | |||
|- | |||
| 2 || 2 | |||
|- | |||
| 3 || 3 | |||
|- | |||
| 4 || 4 | |||
|- | |||
| 5 || 5 | |||
|- | |||
| 6 || 6 | |||
|- | |||
| 7 || 7 | |||
|- | |||
| 8 || 8 | |||
|- | |||
| 9 || 9 | |||
|} | |||
For example, if you now want to change the middle button and the right button, execute the following command: | |||
<pre><nowiki> | |||
xmodmap -e "pointer = 1 3 2" | |||
</nowiki></pre> | |||
Here is a list of numbers with their corresponding function: | Here is a list of numbers with their corresponding function: | ||
{|border="1" cellspacing="0" | {|border="1" cellspacing="0" | ||
第247行: | 第283行: | ||
| 5 || Scroll down | | 5 || Scroll down | ||
|} | |} | ||
=== | If you want to disable a button (maybe because you know that one of the buttons causes some problems), use zero. Example (should disable the right click): | ||
<pre><nowiki> | |||
xmodmap -e "pointer = 1 2 0" | |||
</nowiki></pre> | |||
To reset the xmodmap-configuration, use this command: | |||
<pre><nowiki> | |||
xmodmap -e "pointer = default" | |||
</nowiki></pre> | |||
==== The second way ==== | |||
If you are using more devices than just the tablet (e. g. mouse+tablet or multiple tablets a. s. o.) you can use this second way to change the mapping just for one device. | |||
Step 1: Find the name of the device you want to change, e.g. with this command: | |||
xsetpointer -l | |||
alternatively you can use this command: | |||
xinput list | |||
Step 2: execute this command to swap the middle and the right button ("WizardPen Tablet" is the device – if you want to change the configuration of another device, you have to change the name; use the table above to define other buttons) | |||
<pre><nowiki> | |||
xinput set-button-map "WizardPen Tablet" 1 3 2 | |||
</nowiki></pre> | |||
Hint: If you experience problems with the buttons, use: | |||
<pre><nowiki> | |||
xinput set-button-map "WizardPen Tablet" 1 0 0 | |||
</nowiki></pre> | |||
or, if you have a pen with 32 buttons ;) | |||
<pre><nowiki> | |||
xinput set-button-map "WizardPen Tablet" 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | |||
</nowiki></pre> | |||
...to disable all buttons on your pen (for instance if you just want to draw). | |||
== Troubleshooting - See this if you have any problems == | == Troubleshooting - See this if you have any problems == | ||
=== Everything worked great, except the mouse doesn't move at all === | |||
This is known to be an issue with WP8060 at least, and possibly other models. | |||
Fortunately, there is a common fix as well. You need to go back into /etc/X11/xorg.conf and modify the InputDevice section a little: | |||
<pre><nowiki> | |||
Section "InputDevice" | |||
Identifier "Tablet" | |||
Option "Name" "UC-LOGIC Tablet WP8060U" | |||
Option "SendCoreEvents" "true" | |||
Driver "wizardpen" | |||
Option "TopX" "2650" | |||
Option "TopY" "3563" | |||
Option "TopZ" "10" | |||
Option "BottomX" "30733" | |||
Option "BottomY" "29715" | |||
Option "BottomZ" "511" | |||
EndSection | |||
</nowiki></pre> | |||
The whole block is shown to indicate context. The main thing to change is the | |||
<pre><nowiki> | |||
Option "Name" "UC-LOGIC Tablet WP8060U" | |||
</nowiki></pre> | |||
part. Set the name to whatever type you have. | |||
Reboot the XServer by logging out and back in, or typing <code><nowiki>sudo /etc/init.d/gdm restart</nowiki></code>, or reboot your computer, and you're good to go. | |||
=== After X server restart, display reverts to "Safe Mode" === | |||
From xtoast's suggestion on the [[UbuntuHelp:UserDocumentation/PageDiscussion|discussion|page]] (linked at the bottom of this article), I found the ServerLayout line provided in the [[UbuntuHelp:TabletSetupWizardpen#Setting_up_X|Setting|up X]] section above causes my xorg.conf to 'forget' basic video display settings. I used the line suggested on the discussion page instead: | |||
<pre><nowiki> | |||
InputDevice "Tablet" "SendCoreEvents" | |||
</nowiki></pre> | |||
Restarted the PC and everything worked. I did not follow the rest of the advice on the linked page because just modifying the ServerLayout line resolved my problem. | |||
=== The command cat /var/log/Xorg.0.log | grep "wizardpen" outputs errors === | === The command cat /var/log/Xorg.0.log | grep "wizardpen" outputs errors === | ||
The output of | The output of <pre><nowiki> | ||
<pre><nowiki> | |||
cat /var/log/Xorg.0.log | grep "wizardpen" | cat /var/log/Xorg.0.log | grep "wizardpen" | ||
</nowiki></pre> | </nowiki></pre> | ||
may reveal several errors, some of them are: | may reveal several errors, some of them are: | ||
Module present, but with compilation-errors: | Module present, but with compilation-errors: | ||
<pre><nowiki> | <pre><nowiki> | ||
(II) LoadModule: "wizardpen" | (II) LoadModule: "wizardpen" | ||
(II) Loading /usr/lib/xorg/modules/input/wizardpen_drv.so | (II) Loading /usr/lib/xorg/modules/input/wizardpen_drv.so | ||
dlopen: /usr/lib/xorg/modules/input/wizardpen_drv.so: undefined symbol: __stack_chk_fail_local | dlopen: /usr/lib/xorg/modules/input/wizardpen_drv.so: undefined symbol: __stack_chk_fail_local | ||
(EE) Failed to load /usr/lib/xorg/modules/input/wizardpen_drv.so | (EE) Failed to load /usr/lib/xorg/modules/input/wizardpen_drv.so | ||
(II) UnloadModule: "wizardpen" | (II) UnloadModule: "wizardpen" | ||
(EE) Failed to load module "wizardpen" (loader failed, 7) | (EE) Failed to load module "wizardpen" (loader failed, 7) | ||
(EE) No Input driver matching `wizardpen' | (EE) No Input driver matching `wizardpen' | ||
</nowiki></pre> | </nowiki></pre> | ||
Module missing: | Module missing: | ||
<pre><nowiki> | <pre><nowiki> | ||
(II) LoadModule: "wizardpen" | (II) LoadModule: "wizardpen" | ||
(WW) Warning, couldn't open module wizardpen | (WW) Warning, couldn't open module wizardpen | ||
(II) UnloadModule: "wizardpen" | (II) UnloadModule: "wizardpen" | ||
(EE) Failed to load module "wizardpen" (module does not exist, 0) | (EE) Failed to load module "wizardpen" (module does not exist, 0) | ||
(EE) No Input driver matching `wizardpen' | (EE) No Input driver matching `wizardpen' | ||
</nowiki></pre> | </nowiki></pre> | ||
=== The Xserver is not starting after playing with the xorg.conf file === | === The Xserver is not starting after playing with the xorg.conf file === | ||
Wow - That's bad | Wow - That's bad - First of all, check that you set everything right. | ||
Well, I suggest that you drop me an email, telling me what went wrong | Well, I suggest that you drop me an email, telling me what went wrong. | ||
And then just restore the backup we created - run this command: | And then just restore the backup we created - run this command: | ||
<pre><nowiki> | <pre><nowiki> | ||
第288行: | 第371行: | ||
</nowiki></pre> | </nowiki></pre> | ||
=== Everything seems to work, except pressure sensitivity === | === Everything seems to work, except pressure sensitivity === | ||
All the tablets mentioned in "known tablets" has pressure sensitivity support in Linux | All the tablets mentioned in "known tablets" has pressure sensitivity support in Linux. | ||
If pressure-sensitivity doesn't work, there are 3 possible causes | If pressure-sensitivity doesn't work, there are 3 possible causes: | ||
1. The driver is not properly installed | 1. The driver is not properly installed | ||
2. The tablet is not supported by this driver | 2. The tablet is not supported by this driver | ||
3. The application is not properly configured, to accept pressure sensitivity. | 3. The application is not properly configured, to accept pressure sensitivity. | ||
Please make sure that your favourite application supports pressure sensitivity. | Please make sure that your favourite application supports pressure sensitivity. | ||
{|border="1" cellspacing="0" | {|border="1" cellspacing="0" | ||
第301行: | 第385行: | ||
| Inkscape || Full support || [[UbuntuHelp:TabletSetupInkscape|TabletSetupInkscape]] | | Inkscape || Full support || [[UbuntuHelp:TabletSetupInkscape|TabletSetupInkscape]] | ||
|- | |- | ||
| Gimp || Full support - but problems with 2.2.13|| [[UbuntuHelp:TabletSetupGIMP]] | | Gimp || Full support - but problems with 2.2.13|| [[UbuntuHelp:TabletSetupGIMP|TabletSetupGIMP]] | ||
|} | |} | ||
Please tell me about other applications | Please tell me about other applications. | ||
=== Pressure sensitivity works, but is not calibrated well === | === Pressure sensitivity works, but is not calibrated well === | ||
The section we inserted into xorg.conf holds some options to calibrate the area of the tablet, but I haven't put in options to configure pressure sensitivity, since it varies a lot. | The section we inserted into xorg.conf holds some options to calibrate the area of the tablet, but I haven't put in options to configure pressure sensitivity, since it varies a lot. | ||
第309行: | 第393行: | ||
Option "TopZ" "10" | Option "TopZ" "10" | ||
Option "BottomZ" "511" | Option "BottomZ" "511" | ||
Where "TopZ" represents the lowest pressure-level to accept, and "BottomZ" represents the maximum pressure-level to accept. | |||
Where "TopZ" represents the lowest pressure-level to accept, and "BottomZ | === The tablet is automatically detected as a generic mouse === | ||
In ''addition'' to the Wizardpen configuration, my system automatically configured the tablet as a generic, relative-positioned mouse. This double configuration caused the mouse pointer to move out of sync with the tablet's absolute position. Explicitly defining X11's CorePointer Device prevented auto-configuration of the tablet, leaving Wizardpen the only driver using the device (the desired behavior). For an example configuration, see the forum post: [http://ubuntuforums.org/showthread.php?t=944946 How do I -disable- tablet control of the mouse?]. | |||
=== I have problems not solved by the above troubleshooting === | === I have problems not solved by the above troubleshooting === | ||
Try one of these forums: | |||
http://www.stud.fit.vutbr.cz/~xhorak28/unb/forum.php | |||
http://ubuntuforums.org/showthread.php?t=1337260 | |||
=== Related articles === | |||
Talking about hotplugging: (haven't tested it - Please mail me in case it works, and should be implemented here) | |||
http://deadcabbit.blogspot.com/2007/07/linux-genius-wizardpen-setup-for-udev.html | |||
./ | |||
---- | ---- | ||
[[category:CategoryHardware]] | [[category:CategoryHardware]] | ||
[[category:UbuntuHelp]] | [[category:UbuntuHelp]] |
2010年5月20日 (四) 00:21的最新版本
文章出处: |
{{#if: | {{{2}}} | https://help.ubuntu.com/community/TabletSetupWizardpen }} |
点击翻译: |
English {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/af | • {{#if: UbuntuHelp:TabletSetupWizardpen|Afrikaans| [[::TabletSetupWizardpen/af|Afrikaans]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ar | • {{#if: UbuntuHelp:TabletSetupWizardpen|العربية| [[::TabletSetupWizardpen/ar|العربية]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/az | • {{#if: UbuntuHelp:TabletSetupWizardpen|azərbaycanca| [[::TabletSetupWizardpen/az|azərbaycanca]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/bcc | • {{#if: UbuntuHelp:TabletSetupWizardpen|جهلسری بلوچی| [[::TabletSetupWizardpen/bcc|جهلسری بلوچی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/bg | • {{#if: UbuntuHelp:TabletSetupWizardpen|български| [[::TabletSetupWizardpen/bg|български]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/br | • {{#if: UbuntuHelp:TabletSetupWizardpen|brezhoneg| [[::TabletSetupWizardpen/br|brezhoneg]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ca | • {{#if: UbuntuHelp:TabletSetupWizardpen|català| [[::TabletSetupWizardpen/ca|català]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/cs | • {{#if: UbuntuHelp:TabletSetupWizardpen|čeština| [[::TabletSetupWizardpen/cs|čeština]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/de | • {{#if: UbuntuHelp:TabletSetupWizardpen|Deutsch| [[::TabletSetupWizardpen/de|Deutsch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/el | • {{#if: UbuntuHelp:TabletSetupWizardpen|Ελληνικά| [[::TabletSetupWizardpen/el|Ελληνικά]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/es | • {{#if: UbuntuHelp:TabletSetupWizardpen|español| [[::TabletSetupWizardpen/es|español]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/fa | • {{#if: UbuntuHelp:TabletSetupWizardpen|فارسی| [[::TabletSetupWizardpen/fa|فارسی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/fi | • {{#if: UbuntuHelp:TabletSetupWizardpen|suomi| [[::TabletSetupWizardpen/fi|suomi]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/fr | • {{#if: UbuntuHelp:TabletSetupWizardpen|français| [[::TabletSetupWizardpen/fr|français]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/gu | • {{#if: UbuntuHelp:TabletSetupWizardpen|ગુજરાતી| [[::TabletSetupWizardpen/gu|ગુજરાતી]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/he | • {{#if: UbuntuHelp:TabletSetupWizardpen|עברית| [[::TabletSetupWizardpen/he|עברית]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/hu | • {{#if: UbuntuHelp:TabletSetupWizardpen|magyar| [[::TabletSetupWizardpen/hu|magyar]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/id | • {{#if: UbuntuHelp:TabletSetupWizardpen|Bahasa Indonesia| [[::TabletSetupWizardpen/id|Bahasa Indonesia]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/it | • {{#if: UbuntuHelp:TabletSetupWizardpen|italiano| [[::TabletSetupWizardpen/it|italiano]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ja | • {{#if: UbuntuHelp:TabletSetupWizardpen|日本語| [[::TabletSetupWizardpen/ja|日本語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ko | • {{#if: UbuntuHelp:TabletSetupWizardpen|한국어| [[::TabletSetupWizardpen/ko|한국어]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ksh | • {{#if: UbuntuHelp:TabletSetupWizardpen|Ripoarisch| [[::TabletSetupWizardpen/ksh|Ripoarisch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/mr | • {{#if: UbuntuHelp:TabletSetupWizardpen|मराठी| [[::TabletSetupWizardpen/mr|मराठी]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ms | • {{#if: UbuntuHelp:TabletSetupWizardpen|Bahasa Melayu| [[::TabletSetupWizardpen/ms|Bahasa Melayu]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/nl | • {{#if: UbuntuHelp:TabletSetupWizardpen|Nederlands| [[::TabletSetupWizardpen/nl|Nederlands]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/no | • {{#if: UbuntuHelp:TabletSetupWizardpen|norsk| [[::TabletSetupWizardpen/no|norsk]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/oc | • {{#if: UbuntuHelp:TabletSetupWizardpen|occitan| [[::TabletSetupWizardpen/oc|occitan]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/pl | • {{#if: UbuntuHelp:TabletSetupWizardpen|polski| [[::TabletSetupWizardpen/pl|polski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/pt | • {{#if: UbuntuHelp:TabletSetupWizardpen|português| [[::TabletSetupWizardpen/pt|português]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ro | • {{#if: UbuntuHelp:TabletSetupWizardpen|română| [[::TabletSetupWizardpen/ro|română]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/ru | • {{#if: UbuntuHelp:TabletSetupWizardpen|русский| [[::TabletSetupWizardpen/ru|русский]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/si | • {{#if: UbuntuHelp:TabletSetupWizardpen|සිංහල| [[::TabletSetupWizardpen/si|සිංහල]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/sq | • {{#if: UbuntuHelp:TabletSetupWizardpen|shqip| [[::TabletSetupWizardpen/sq|shqip]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/sr | • {{#if: UbuntuHelp:TabletSetupWizardpen|српски / srpski| [[::TabletSetupWizardpen/sr|српски / srpski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/sv | • {{#if: UbuntuHelp:TabletSetupWizardpen|svenska| [[::TabletSetupWizardpen/sv|svenska]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/th | • {{#if: UbuntuHelp:TabletSetupWizardpen|ไทย| [[::TabletSetupWizardpen/th|ไทย]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/tr | • {{#if: UbuntuHelp:TabletSetupWizardpen|Türkçe| [[::TabletSetupWizardpen/tr|Türkçe]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/vi | • {{#if: UbuntuHelp:TabletSetupWizardpen|Tiếng Việt| [[::TabletSetupWizardpen/vi|Tiếng Việt]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/yue | • {{#if: UbuntuHelp:TabletSetupWizardpen|粵語| [[::TabletSetupWizardpen/yue|粵語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/zh | • {{#if: UbuntuHelp:TabletSetupWizardpen|中文| [[::TabletSetupWizardpen/zh|中文]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/zh-hans | • {{#if: UbuntuHelp:TabletSetupWizardpen|中文(简体)| [[::TabletSetupWizardpen/zh-hans|中文(简体)]]}}|}} {{#ifexist: {{#if: UbuntuHelp:TabletSetupWizardpen | UbuntuHelp:TabletSetupWizardpen | {{#if: | :}}TabletSetupWizardpen}}/zh-hant | • {{#if: UbuntuHelp:TabletSetupWizardpen|中文(繁體)| [[::TabletSetupWizardpen/zh-hant|中文(繁體)]]}}|}} |
{{#ifeq:UbuntuHelp:TabletSetupWizardpen|:TabletSetupWizardpen|请不要直接编辑翻译本页,本页将定期与来源同步。}} |
{{#ifexist: :TabletSetupWizardpen/zh | | {{#ifexist: TabletSetupWizardpen/zh | | {{#ifeq: {{#titleparts:TabletSetupWizardpen|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:TabletSetupWizardpen|1|-1|}} | zh | | }}
Known tablets working with the Wizardpen-driver
The setup has been tested with the following USB tablets. Non-USB tablets are not covered by this guide.
Known Tablet Names (The packaging)
- Acecad Flair II GT-504
- DigiPro 5.5×4” Graphics Tablet
- Digital Ink Pad (A4 format)
- G-pen
- Genius Wizardpen
- Genius Mousepen
- Genius Easypen i405
- Genius
- iBall
- Manhattan
- Pentagram
- QWare
- Trust TB-3100
- Trust TB-5300
- Trust TB-6300
- UC-LOGIC
- iBall Tablet PF8060
- AIPTEK HyperPen 10000 U
- AIPTEK Slim Tablet U600 Premium II
If your tablet is working using this guide, but not listed here, please add it to the list above. (If you don't have an account, then email me: [email protected]
Setting up your tablet
General information
As of march 2010 the latest wizardpen driver from Wizardpen on Launchpad is available for Ubuntu/Debian as xserver-xorg-input-wizardpen, with the following apt(itude) settings:
deb http://ppa.launchpad.net/doctormo/xorg-wizardpen/ubuntu jaunty main deb-src http://ppa.launchpad.net/doctormo/xorg-wizardpen/ubuntu jaunty main
It should install without hassle, includes HAL configs and drivers. You still should include the driver in xorg.conf (Section "InputDevice") as mentioned below.
Installing needed packages
Open a terminal Install some needed packages - Run this command:
sudo apt-get install xutils libx11-dev libxext-dev build-essential \ xautomation xinput xserver-xorg-dev xutils-dev libtool \ autoconf
Downloading the driver
You can download the latest driver from Wizardpen on Launchpad. Either try to find a deb or a source package there, or get the latest version using bzr. If you choose to install a source package you can just extract it and skip to "Building and installing the driver". To install bzr run:
sudo apt-get install bzr bzr branch lp:wizardpen
Now we need to generate the ./configure script:
./autogen.sh
Building and installing the driver
Run these commands from the directory you installed the source: Configure, make and install:
./configure --with-xorg-module-dir=/usr/lib/xorg/modules make && sudo make install
Check the integrity of the driver installation by typing the command.
ls /usr/lib/xorg/modules/input/wizardpen_drv.*
It should give the output as follows
/usr/lib/xorg/modules/input/wizardpen_drv.la /usr/lib/xorg/modules/input/wizardpen_drv.so
Type the following command in the terminal to know the make of the Pentablet.
grep -i name /proc/bus/input/devices
Please note down the make of the tablet which you have to use in the next step. Create a new .fdi file by using the following command in terminal
sudo vi /etc/hal/fdi/policy/99-x11-wizardpen.fdi
Press 'I' so that INSERT appears Paste the following template in the terminal
<?xml version="1.0" encoding="ISO-8859-1" ?> <deviceinfo version="0.2"> <device> <!-- This MUST match with the name of your tablet obtained --> <!-- in Step 2 specified previously --> <match key="info.product" contains="NAME OF YOUR TABLET"> <merge key="input.x11_driver" type="string">wizardpen</merge> <merge key="input.x11_options.SendCoreEvents" type="string">true</merge> <!-- Modify these configuration accordingly --> <!-- See CONFIGURATION OPTIONS section for the full-set of --> <!-- configurable options --> <merge key="input.x11_options.TopX" type="string">5619</merge> <merge key="input.x11_options.TopY" type="string">6554</merge> <merge key="input.x11_options.BottomX" type="string">29405</merge> <merge key="input.x11_options.BottomY" type="string">29671</merge> </match> </device> </deviceinfo>
Please insert the name of your tablet where i have mentioned NAME OF YOUR TABLET. You can do this by moving the cursor in the terminal with arrow keys. Click Esc and type :wq and press Enter to save the file you have created. Reboot your machine. It should work.
Calibration
8060 Note: In the subsection, you'll find output from calibrate. If your tablet is listed there, you can just use that output instead.
- If you tablet isn't listed, I would love to recieve an email with the output, and the model of your tablet. (See email at the end of the page.)
If you want to calibrate yourself, just proceed. Enter the "calibrate"-directory - Run this command:
cd calibrate
Calibrate in order to find the edges of your tablet/digitizer - Run this command:
sudo ./wizardpen-calibrate /dev/tablet-event
You may find "/dev/tablet-event" missing, try this command to help find the correct value
ls /dev/input/by-id/
Example corrected "/dev/tablet-event" location. Use the value for rc.local and xorg.conf
/dev/input/by-id/usb-WALTOP_International_Corp._Slim_Tablet-event-if00
Save the output from wizardpen-calibrate (the last 10 lines) - You'll need it later in this HowTo.
Calibration output (If calibrate for some reason doesn't work)
Skip this section if calibrate worked for you. Genius G-Pen F610 (WALTOP SlimTablet) :
Section "InputDevice" Identifier "WizardPen Tablet" Driver "wizardpen" Option "Device" "/dev/input/by-id/usb-WALTOP_International_Corp._Slim_Tablet-event-if00" Option "TopX" "295" Option "TopY" "210" Option "BottomX" "20000" Option "BottomY" "12500" EndSection
Tablet W5540U (UC-Logic):
Section "InputDevice" Identifier "WizardPen Tablet" Option "SendCoreEvents" "true" Driver "wizardpen" Option "Device" "/dev/tablet-event" Option "TopX" "2199" Option "TopY" "3598" Option "BottomX" "30325" Option "BottomY" "29278" EndSection
Tablet W8060U (UC-Logic):
Section "InputDevice" Identifier "WizardPen Tablet" Option "SendCoreEvents" "true" Driver "wizardpen" Option "Device" "/dev/tablet-event" Option "TopX" "826" Option "TopY" "2626" Option "BottomX" "32747" Option "BottomY" "32762" EndSection
Tablet PF1209 (UC-LOGIC)
Section "InputDevice" Identifier "WizardPen Tablet" Option "SendCoreEvents" "true" Driver "wizardpen" Option "Device" "/dev/tablet-event" Option "TopX" "0" Option "TopY" "1553" Option "BottomX" "32541" Option "BottomY" "32762" EndSection
Tablet W8060U (Trust TB-6300)
Section "InputDevice" Identifier "WizardPen Tablet" Option "SendCoreEvents" "true" Driver "wizardpen" Option "Device" "/dev/tablet-event" Option "TopX" "0" Option "TopY" "234" Option "BottomX" "32747" Option "BottomY" "32762" EndSection
Setting up X
Now we are ready to edit the xorg.conf file. Take a backup - Run this command:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Edit the file - Run this command:
sudo vim /etc/X11/xorg.conf
Press "I" - So that "-- INSERT --" appears Insert the output from calibrate into xorg.conf: (just place it below your generic mouse) Add the following line in the "ServerLayout" section:
InputDevice "WizardPen Tablet" "AlwaysCore"
Save the file, and exit the editor (Press "ESC" and write ":wq" and press "Enter")
Making X start without a tablet connected
Now, the driver should NOT be initialized, if the tablet is NOT found The wizardpen-driver does not support hotplugging, so we should run a script on startup, to define whether or not the tablet is present. Open /etc/rc.local - Run this command:
sudo vim /etc/rc.local
Press "I" - So that "-- INSERT --" appears ...and insert some code: (insert it JUST above "exit 0")
XORG_CONF=/etc/X11/xorg.conf if [ -e /dev/tablet-event ]; then sed -ie 's/^\(\s*\)\#\(\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\1\2/' "$XORG_CONF" echo "Udev created /dev/tablet-event = Tablet present - Tablet-driver enabled" else sed -ie 's/\(^\s*InputDevice\s\s*\"WizardPen\ Tablet\"\s\s*\"AlwaysCore\"\)\s*$/\#&/' "$XORG_CONF" echo "Udev did NOT create /dev/tablet-event = tablet NOT present - Tablet-driver disabled" fi
Save the file, and exit the editor (Press "ESC" and write ":wq" and press "Enter") Now you can test udev's ability to detect the tablet - Run this command:
sudo /etc/init.d/rc.local start
The output will tell you if it is present or not - And it should match reality (try to disconnect it, and try again - connect, and then again - etc...) You should now be able to restart X and have the tablet working as a mouse. I'm still working on a way to support hotplugging, but the above code-example will make X start without a present tablet.
Configuring the buttons on the pen
Special thanks to riesenpixel for writing the following part about the button-configuration. There are two ways to change the button mapping:
The first way (Not very smart, since it also change the behaviour of your generic mouse)
If you want to change the button mapping for all devices running in core mode, you should use xmodmap. (not recommended, try the second way first) Show the current configuration:
xmodmap -pp
You will get a table like this:
Physical Button | Button Code |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 8 |
9 | 9 |
For example, if you now want to change the middle button and the right button, execute the following command:
xmodmap -e "pointer = 1 3 2"
Here is a list of numbers with their corresponding function:
Number | Function |
0 | No action (only movement) |
1 | Left button click |
2 | Middle Button click |
3 | Right Button click |
4 | Scroll up (one click equals one step of scroll wheel in my logitech mouse) |
5 | Scroll down |
If you want to disable a button (maybe because you know that one of the buttons causes some problems), use zero. Example (should disable the right click):
xmodmap -e "pointer = 1 2 0"
To reset the xmodmap-configuration, use this command:
xmodmap -e "pointer = default"
The second way
If you are using more devices than just the tablet (e. g. mouse+tablet or multiple tablets a. s. o.) you can use this second way to change the mapping just for one device. Step 1: Find the name of the device you want to change, e.g. with this command: xsetpointer -l alternatively you can use this command: xinput list Step 2: execute this command to swap the middle and the right button ("WizardPen Tablet" is the device – if you want to change the configuration of another device, you have to change the name; use the table above to define other buttons)
xinput set-button-map "WizardPen Tablet" 1 3 2
Hint: If you experience problems with the buttons, use:
xinput set-button-map "WizardPen Tablet" 1 0 0
or, if you have a pen with 32 buttons ;)
xinput set-button-map "WizardPen Tablet" 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
...to disable all buttons on your pen (for instance if you just want to draw).
Troubleshooting - See this if you have any problems
Everything worked great, except the mouse doesn't move at all
This is known to be an issue with WP8060 at least, and possibly other models. Fortunately, there is a common fix as well. You need to go back into /etc/X11/xorg.conf and modify the InputDevice section a little:
Section "InputDevice" Identifier "Tablet" Option "Name" "UC-LOGIC Tablet WP8060U" Option "SendCoreEvents" "true" Driver "wizardpen" Option "TopX" "2650" Option "TopY" "3563" Option "TopZ" "10" Option "BottomX" "30733" Option "BottomY" "29715" Option "BottomZ" "511" EndSection
The whole block is shown to indicate context. The main thing to change is the
Option "Name" "UC-LOGIC Tablet WP8060U"
part. Set the name to whatever type you have.
Reboot the XServer by logging out and back in, or typing sudo /etc/init.d/gdm restart
, or reboot your computer, and you're good to go.
After X server restart, display reverts to "Safe Mode"
From xtoast's suggestion on the discussion|page (linked at the bottom of this article), I found the ServerLayout line provided in the Setting|up X section above causes my xorg.conf to 'forget' basic video display settings. I used the line suggested on the discussion page instead:
InputDevice "Tablet" "SendCoreEvents"
Restarted the PC and everything worked. I did not follow the rest of the advice on the linked page because just modifying the ServerLayout line resolved my problem.
The command cat /var/log/Xorg.0.log | grep "wizardpen" outputs errors
The output of
cat /var/log/Xorg.0.log | grep "wizardpen"
may reveal several errors, some of them are: Module present, but with compilation-errors:
(II) LoadModule: "wizardpen" (II) Loading /usr/lib/xorg/modules/input/wizardpen_drv.so dlopen: /usr/lib/xorg/modules/input/wizardpen_drv.so: undefined symbol: __stack_chk_fail_local (EE) Failed to load /usr/lib/xorg/modules/input/wizardpen_drv.so (II) UnloadModule: "wizardpen" (EE) Failed to load module "wizardpen" (loader failed, 7) (EE) No Input driver matching `wizardpen'
Module missing:
(II) LoadModule: "wizardpen" (WW) Warning, couldn't open module wizardpen (II) UnloadModule: "wizardpen" (EE) Failed to load module "wizardpen" (module does not exist, 0) (EE) No Input driver matching `wizardpen'
The Xserver is not starting after playing with the xorg.conf file
Wow - That's bad - First of all, check that you set everything right. Well, I suggest that you drop me an email, telling me what went wrong. And then just restore the backup we created - run this command:
sudo cp /etc/X11/xorg.conf.backup /etc/X11/xorg.conf
Everything seems to work, except pressure sensitivity
All the tablets mentioned in "known tablets" has pressure sensitivity support in Linux. If pressure-sensitivity doesn't work, there are 3 possible causes: 1. The driver is not properly installed 2. The tablet is not supported by this driver 3. The application is not properly configured, to accept pressure sensitivity.
Please make sure that your favourite application supports pressure sensitivity.
Application | Support for pressure sensitivity | Guide |
Krita | Full support since 1.6 | Non yet |
Inkscape | Full support | TabletSetupInkscape |
Gimp | Full support - but problems with 2.2.13 | TabletSetupGIMP |
Please tell me about other applications.
Pressure sensitivity works, but is not calibrated well
The section we inserted into xorg.conf holds some options to calibrate the area of the tablet, but I haven't put in options to configure pressure sensitivity, since it varies a lot. You can insert these options to enable MAX and MIN pressure sensitivity: Option "TopZ" "10" Option "BottomZ" "511" Where "TopZ" represents the lowest pressure-level to accept, and "BottomZ" represents the maximum pressure-level to accept.
The tablet is automatically detected as a generic mouse
In addition to the Wizardpen configuration, my system automatically configured the tablet as a generic, relative-positioned mouse. This double configuration caused the mouse pointer to move out of sync with the tablet's absolute position. Explicitly defining X11's CorePointer Device prevented auto-configuration of the tablet, leaving Wizardpen the only driver using the device (the desired behavior). For an example configuration, see the forum post: How do I -disable- tablet control of the mouse?.
I have problems not solved by the above troubleshooting
Try one of these forums: http://www.stud.fit.vutbr.cz/~xhorak28/unb/forum.php http://ubuntuforums.org/showthread.php?t=1337260
Related articles
Talking about hotplugging: (haven't tested it - Please mail me in case it works, and should be implemented here) http://deadcabbit.blogspot.com/2007/07/linux-genius-wizardpen-setup-for-udev.html