Linux Problems:Wacom Pen Buttons

(Difference between revisions)
Jump to: navigation, search
 
Line 1: Line 1:
 
==Kernel Approach==
 
==Kernel Approach==
The kernel approach to using the Wacom "Pen Buttons" would be to integrate the commands generated by clicking the buttons into "proc" devices.  This integration would allow a script to monitor each button and perform an operation when when of the buttons is pressed, while this solution is better in the long run I do not have sufficient experience to implement it quickly (Hoover).
+
The kernel approach to using the Wacom "Pen Buttons" would be to integrate the commands generated by clicking the buttons into "proc" devices.  This integration would allow a script to monitor each button and perform an operation when when of the buttons is pressed, while this solution is better in the long run I do not have sufficient experience to implement it quickly (Hoover).  Until this solution can be implemented the X.Org driver should do, and over-riding the driver from the kernel level (ie: not passing on the button presses to the serial device) will effecitvely prevent conflicts from double implementation in the future.
  
 
==X.Org Approach==
 
==X.Org Approach==
Line 7: Line 7:
 
===Compiling Ubuntu X.Org===
 
===Compiling Ubuntu X.Org===
 
<ol>
 
<ol>
 +
<li>Why?
 +
Unfortunately, in order to compile an X.Org driver (input or otherwise) you need a complete copy of the X.Org sources that you have compiled ''in place'' at least once.  If you update your version of X.Org you will need to compile against the new sources, if you know a better way to do this then I'm all ears.
 
<li>Compiling Xorg requires (that I didn't have):
 
<li>Compiling Xorg requires (that I didn't have):
 
* bison
 
* bison
Line 24: Line 26:
 
<li>Setup fontconfig:
 
<li>Setup fontconfig:
 
<ul>
 
<ul>
<li>Setup with your system's info
+
<li>Setup with your system's info and some crutial directories:
 
<pre>
 
<pre>
 
mkdir xorg-6.8.2/xc/extras/fontconfig/
 
mkdir xorg-6.8.2/xc/extras/fontconfig/
 +
mkdir xorg-6.8.2/xc/extras/fontconfig/src/
 +
mkdir xorg-6.8.2/xc/extras/fontconfig/fc-cache/
 +
mkdir xorg-6.8.2/xc/extras/fontconfig/fc-list/
 
cp -R /usr/include/fontconfig/ xorg-6.8.2/xc/extras/fontconfig/
 
cp -R /usr/include/fontconfig/ xorg-6.8.2/xc/extras/fontconfig/
 
</pre>
 
</pre>
 
(yes, you want it to be fontconfig/fontconfig/)
 
(yes, you want it to be fontconfig/fontconfig/)
<li>Download updated font config
+
<li>Download updated font config<br>
Then place fontconfig.pc.in, fonts.conf.in, and fonts.dtd in the same folder (xc/extras/fontconfig/), get them here:
+
You need the information for fontconfig, so place the files fontconfig.pc.in, fonts.conf.in, and fonts.dtd in the same folder you just copied your local config to (xc/extras/fontconfig/).  You can get these files here:
 
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/
 
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/
<li>Download updated font config sources
+
<li>Download updated font config sources<br>
 
You need all of the files that belong in xc/extras/src/, you can download them from freedesktop.org:
 
You need all of the files that belong in xc/extras/src/, you can download them from freedesktop.org:
 
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/src/
 
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/src/
 +
<li>Download updated font config cache<br>
 +
You need all of the files that belong in xc/programs/fc-cache/ '''and''' xc/extras/fontconfig/fc-cache/, you can download them from freedesktop.org:
 +
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/fc-cache/.  You should also download fc-cache.man from http://cvs.freedesktop.org/xorg/xc/programs/fc-cache/ and place that file in both directories.
 +
<li>Download updated font config list<br>
 +
You need all of the files that belong in xc/programs/fc-list/ '''and''' xc/extras/fontconfig/fc-list/, you can download them from freedesktop.org:
 +
http://cvs.freedesktop.org/xorg/xc/extras/fontconfig/fc-list/.  You should also download fc-list.am from http://cvs.freedesktop.org/xorg/xc/programs/fc-list/ and place it in both directories.
 
</ul>
 
</ul>
 
</ol>
 
</ol>

Revision as of 22:29, 28 October 2005

Kernel Approach

The kernel approach to using the Wacom "Pen Buttons" would be to integrate the commands generated by clicking the buttons into "proc" devices. This integration would allow a script to monitor each button and perform an operation when when of the buttons is pressed, while this solution is better in the long run I do not have sufficient experience to implement it quickly (Hoover). Until this solution can be implemented the X.Org driver should do, and over-riding the driver from the kernel level (ie: not passing on the button presses to the serial device) will effecitvely prevent conflicts from double implementation in the future.

X.Org Approach

Since ther kernel provides a serial interface to the Wacom Pen Buttons, X.Org receives all of the serial information available to the kernel. Since I have experience with X.Org input drivers I will be using this information to generate X11 events when a button is pressed, this means that a script must be running (or a hotkey configured) to capture the X11 event and perform an operation.

Compiling Ubuntu X.Org

  1. Why? Unfortunately, in order to compile an X.Org driver (input or otherwise) you need a complete copy of the X.Org sources that you have compiled in place at least once. If you update your version of X.Org you will need to compile against the new sources, if you know a better way to do this then I'm all ears.
  2. Compiling Xorg requires (that I didn't have):
    • bison
    • lots of time
  3. Download Xorg Sources:
    apt-get source xorg
    
  4. I copied the Linux config file to the appropriate location (this may not be necessary):
    cp ./xc/config/cf/linux.cf ./xc/config/cf/host.cf
    
  5. The version I was compiling from Ubuntu requried me to download some files for "rman" (http://cvs.freedesktop.org/xorg/xc/extras/rman/) and copy them to the appropriate folder:
    ls ../xorg-6.8.2/xc/extras/rman/ && cp * ../xorg-6.8.2/xc/extras/rman/
    
  6. Setup fontconfig:

NOTE: I am actively working on this, these instructions are incomplete

Once these configuration steps are complete you should run "make World" from the folder xorg-6.8.2/xc/

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox