Mattlog

Gedanken und Hintergedanken. Außerdem: Computer, Autos, die dicke Katze von nebenan, Biber in der Innenstadt, meine Freundin und Ich.

Zum Panopticon...

Verantwortlich für den Inhalt dieser Seite ist Mattias Schlenker, Inhaber Mattias Schlenker IT-Consulting Mattias Schlenker work Dietrich-Bonhoeffer-Str. 3, 40667 Meerbusch. Germany work Fon +49 2132 9952906. http://www.mattiasschlenker.de

Diese Seite läuft unter Wordpress 2.x.y. News und Kommentare können als RSS-2.0-Feed abonniert werden.

Schrott wird flott: Touchscreen des B142

Bereits vor acht Jahren brachte Fujitsus B-Serie einen Touchscreen mit, der die Bedienung deutlich erleichterte — wenn die Kalibrierung erfolgreich war. Zwischenzeitlich waren die (praktisch nur für Fujitsu-Siemens B-Serie Geräte und einige Vaios) geschriebenen Treiber verschwunden, sind aber nun dank der UMPC-Manie in vielen Distributionskerneln und X.org-Distributionen enthalten. Die im Folgenden beschriebene Einrichtung sollte sich in ähnlicher Weise auch auf modernen Geräten durchführen lassen. Beachten Sie bitte: Die Anleitung bezieht sich auf X.org 7.2 oder höher, bei älteren Versionen kann auf einige Detaillösungen verzichtet werden.

Vorbereitung

Achten Sie zunächst darauf, dass das Kernelmodul evdev geladen ist. Es stellt die Kernelschnittstelle zum Event basierten Touchscreen-Treiber zur Verfügung. Daneben muss der X.org-Treiber xserver-xorg-input-evtouch installiert sein. Die Anleitung des Evtouch-Entwicklers rät zudem noch dazu, einen Dummy-Treiber zu verwenden, der PS/2-Mausevents abfängt und ins Datennirvana umleitet. Das ist notwendig, weil der Touchscreen am PS/2-Bus hängt, und neben den rohen Events PS/2-Mausevents liefert. Ist zudem der Knubbel aktiv und eine externe Maus eingesteckt, sind drei Quellen für PS/2-Events verfügbar, die nicht unterschieden werden können. Da bei mir die Dummy-Lösung fehlschlug, habe ich per UDEV-Regelsatz die Gerätedateien /dev/input/mice und /dev/input/mouse0 stillgelegt. Einziger Nachteil dieser Lösung: USB-Mäuse dürfen erst angesteckt werden, wenn der X-Server gestartet ist (kann mit einer weiteren UDEV-Regel behoben werden). Die UDEV-Regel (in der /etc/udev/rules.d/40-permissions.rules):


KERNEL=="mice", GROUP="root", MODE="0000"
KERNEL=="mouse0", GROUP="root", MODE="0000"

Rebooten Sie nach dem Anlegen der UDEV-Regeln und überzeugen Sie sich davon, dass /dev/input/mice und /dev/input/mouse0 nicht mehr lesbar sind.

Die Xorg.conf

Jetzt muss die /etc/X11/xorg.conf um ein neues Eingabegeräte erweitert werden. Ich habe diesem den bezeichnenden Namen “touchscreen” gegeben. Der Ausschnitt entspricht weitestgehend der Vorlage von STZ Softwaretechnik. Meine komplette, funktionierende xorg.conf können Sie herunterladen. Wie bei Ihrem Gerät die Event-Schnittstelle heisst, zeigt ein Blick in /dev/input — und ausprobieren.

Stoppen Sie anschließend den Loginmanager gdm, er stört bei der Kalibrierung:

/etc/init.d/gdm stop

Kalibrierung des Touchscreens

Auf Grund eines fehlenden Cursors funktionierte das Script calibrate.sh auf meinem Beta-Ubuntu nicht. Wer das Prinzip der Intervallschachtelung halbwegs verstanden hat, kann den Touchscreen jedoch innerhalb von zehn Minuten händisch kalibrieren. Als Startwerte empfiehlt sich eine MinX und MinY bei 0 zu belassen und MaxX und MaxY je nach Gerät zwischen 800 und 2500 zu setzen:

Option "MinX" "0"
Option "MinY" "0"
Option "MaxX" "1000"
Option "MaxY" "1000"

Starten Sie den X-Server mit dieser Konfiguration von der Konsole mit einem simplen:

Xorg

Beendet wird der X-Server rabiat mit Strg+Alt+Backspace. Passen Sie die beiden Minimalwerte so an, dass der Mauszeiger im linken oberen Eck landet, wenn man an diese Stelle tippt und er sich beim Bewegen des Stiftes nach rechts unten um ein paar Pixel mitbewegt.

Als nächstes ist die X-Achse dran: Zieht man den Stift am oberen Rand entlang, muss der Cursor unter dem Stift entlang laufen. Bewegt sich das Kreuzchen schneller, ist der MaxX-Wert zu erhöhen, bewegt es sich langsamer, ist der Wert niedriger zu setzen. Wer hier konsequent mit der Halbierung von Intervallen arbeitet, kommt in wenigen Schritten zum Ziel.

Die gleiche Prozedur ist am linken Rand für MaxY zu wiederholen. Jetzt sollte der Mauszeiger an jeder Stelle des Bildschirms — auch beim Antippen — unterhalb des Stiftes liegen. Das hat bei meinem B142 nicht ganz geklappt: Rechts oben war der Zeiger etwa vier Punkte über dem Stift, rechts unten vier Punkte darunter. Eine kleine Korrektur der Y-Werte hat den Fehler auf zwei Punkte verringert, wobei jetzt allerdings am linken Rand oben der Zeiger zwei Punkte unter dem Stift liegt. Auf dem Foto ist übrigens die Parallaxe durch die nicht senkrechte Aufnahme zu sehen, die größer als bei modernen dünneren Touchscreens ausfällt.

Eigentlich wollte ich an dieser Stelle noch auf die Konfiguration von Matchbox eingehen. Die bei Ubuntu 7.10 mitgelieferte Version scheint jedoch eine noch nicht ganz komplette Konfiguration zu verwenden und XFCE funktioniert flott und harmoniert gut mit dem Touchscreen — ich verschiebe Matchbox deshalb erst einmal.

Weitere Beiträge in “Schrott wird flott” (die noch nicht verlinkten werden in den nächsten Wochen entstehen):

3 Antworten auf “Schrott wird flott: Touchscreen des B142”

  1. markus (September 26th, 2008 um 8:48 am)

    Sehr schöner artikel,
    ich finde es toll, dass mittlerweile die “alten” touchscreens wieder funktionieren, fast wären sie ja (unverständlicherweise) ausgestorben.

    ich habe noch ein altes panasonic toughbook cf-m34 mit einem touchscreen und dank der tablet-manie konnte ich den screen (gunzets-treiber) mit debian etch (r0) wieder ansprechen. die linux-treiber konnte man schon lange nicht mehr herunterladen und vom hersteller gibt es nur die windows-version.

  2. TFT Touchscreen (October 11th, 2008 um 9:38 am)

    Sollte man tatsächlich noch Anwendungsgebiete für diese Steinzeitgeräte finden. Mir erschließt sich momentan nicht der Sinn, wo Touchscreens doch mittlerweile kaum noch teurer als normale Monitore sind.

  3. Rolf (November 28th, 2008 um 2:23 pm)

    das B142 war zu dieser zeit wirklich ein absolutes super gerät. ist mir auch unverständlich dass es diese art nicht mehr gibt.
    ich brauchte es für gps anwendungen.
    leider sind die neuen anwendungen nur für xp geschrieben. win98se ist da out:-(
    gibt es eine möglichkeit ein “abgemagertes” xp zu installieren und gibt es treiber dazu?
    oder sonstige alternativen oder aufrüstungsmöglichkeiten (prozessor etc?)
    und noch etwas – die neuen notebooks habe immer weniger ausgänge,
    denn ich habe noch einen externen bildschirm mit touchscreen.

    mit einem neuen notebook und xp habe ich probleme mit dem touchscreen
    den kann ich zwar zur hälfte kalibrieren aber in der anwendung bleibt der cursor oben links in der ecke auf nur wenigen zentimeter liegen??

    was könnte da falsch sein? weiss jemand rat?
    habe auch noch ein B112.

    danke zum voraus

    Gruss, Rolf