Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Pour en savoir un peu plus sur l'équipe du forum.

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 04/11/2009, à 00:51

doubaf

ecran tactile packard bell

bonsoir a tous
je viens vers vous afin d avoir des infos sur comment rendre la fonction tactile a mon viseo 200t
de chez packard-bell 
j ai lu différents sujet entre autres pour les pilotes eGalaxTouch  j ai essayé mais j ai du mal faire une ou des choses du coup j ai ré installer le gentille koala et me voici

nvidia x server setting le reconnait mais  comme un acer viseo 200T
mon lcpi donne ceci

djaz@djaz-desktop:~$ lspci
00:00.0 Host bridge: Intel Corporation 4 Series Chipset DRAM Controller (rev 02)
00:06.0 PCI bridge: Intel Corporation 4 Series Chipset PCI Express Root Port (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller
00:1c.0 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 1
00:1c.3 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 4
00:1c.4 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 5
00:1c.5 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 6
00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIB (ICH10) LPC Interface Controller
00:1f.2 IDE interface: Intel Corporation 82801JI (ICH10 Family) 4 port SATA IDE Controller
00:1f.3 SMBus: Intel Corporation 82801JI (ICH10 Family) SMBus Controller
00:1f.5 IDE interface: Intel Corporation 82801JI (ICH10 Family) 2 port SATA IDE Controller
01:00.0 VGA compatible controller: nVidia Corporation G86 [GeForce 8500 GT] (rev a1)
03:00.0 IDE interface: JMicron Technology Corp. JMB368 IDE controller
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)
06:07.0 FireWire (IEEE 1394): Texas Instruments TSB43AB23 IEEE-1394a-2000 Controller (PHY/Link)
djaz@djaz-desktop:~$

j espere qu une ame charitable me guideras vers un tuto ou une solution voir un indice je vous remercie d avance
bonne soirée a rtous

Hors ligne

#2 Le 04/11/2009, à 01:05

nux94

Re : ecran tactile packard bell

nvidia x server setting le reconnait mais  comme un acer viseo 200T

acer utilise des pièce d'un peut partout pour monter leur pc donc normalement pas de souci, après l'install de karmic tu na rien toucher ?

j'ai une solution (mais je garantie pas sa marche)

1--Récupère les fichiers  evtouch-0.8.4.tar.gz et evtouch-0.8.0.tar.gz ici :

http://stz-softwaretechnik.com/~ke/touc … touch.html

2-Décompactes-les

3-ouvrir une console et taper

sudo gksudo nautilus

(nautilus s'ouvre) aller dans le fichier evtouch-0.8.4 (que tu viens de décompresser

4-puis copier le fichier evtouch-drv.so et aller le coller dans le usr/lib/xorg/modules/input/

5-Edit le fichier xorg.conf en tapant la commande vim /etc/X11/xorg.conf
   Rajoute le paragraphe suivant:

Section "InputDevice"
    Identifier "touchscreen"
    Driver "evtouch"
    Option "Device" "/dev/input/event1"
    Option "DeviceName" "touchscreen"
    Option "MinX" "98"
    Option "MinY" "43"
    Option "MaxX" "940"
    Option "MaxY" "925"
    Option "ReportingMode" "Raw"
    Option "Emulate3Buttons"
    Option "Emulate3Timeout" "50"
    Option "SendCoreEvents" "On"
    Option "Calibrate" "1"
EndSection

Toujours dans le fichier xorg.conf, ajoute la ligne suivant dans la section ServerLayout  :

InputDevice "touchscreen" "CorePointer"


╔═══╗ ╔═══╗ ╔═══╗ ╔╗
║╔══╝ ║╔═╗║ ║╔═╗║ ║║
║╚══╗ ║╚═╝║ ║╚═╝║ ║╚═╗
╚═══╝ ╚═══╝ ╚═══╝ ╚══╝

Hors ligne

#3 Le 04/11/2009, à 09:48

PapsOu

Re : ecran tactile packard bell

Dis moi nux94, est-ce que ta manip pourrai s'appliquer à ce type d'écran tactile ? (voir le sujet suivant : http://forum.ubuntu-fr.org/viewtopic.php?id=350858 )

Et pour le lien que tu as donné c'est peut être mieux comme ça : http://stz-softwaretechnik.com/~ke/

J'ai essayé une méthode similaire (installer le paquet evtouch + un autre depuis un dépot non-officiel de chez Winux, modifier le Xorg) mais ça me plantait systématiquement le serveur X... résultat, démarrage en config graphique de secours...

Voila si tu as des pistes je suis preneur, le manchot me manque un peu ces derniers temps... roll

Hors ligne

#4 Le 04/11/2009, à 11:35

nux94

Re : ecran tactile packard bell

salut, désoler je ne sais pas bien lire l'anglais et la soluce que j'ai proposer viens d'un autre poste (je l'a légèrement modifier)

j'ai fait quelque recherche et je ne trouve pas grand chose (pas de page de doc a propos des écran tactile se qui serais bien nécessaire


╔═══╗ ╔═══╗ ╔═══╗ ╔╗
║╔══╝ ║╔═╗║ ║╔═╗║ ║║
║╚══╗ ║╚═╝║ ║╚═╝║ ║╚═╗
╚═══╝ ╚═══╝ ╚═══╝ ╚══╝

Hors ligne

#5 Le 04/11/2009, à 17:16

doubaf

Re : ecran tactile packard bell

bonjour a tous
salut nux 94
merci de te pencher sur mon cas
je vais essayé la manip et je te tiens au courant en esperant que sa marche
je vous souhaite une bonne soirée

Hors ligne

#6 Le 04/11/2009, à 20:30

doubaf

Re : ecran tactile packard bell

bonsoir a tous
j ai fait comme tu m as conseiller nux64 mais sa ne marche pas
j ai le meme resultat que papsou degradation significative du serveurX du coup suis ausii dans l attente dune solution ou d une nouvelle piste
merci a tous et bonne soirée

Hors ligne

#7 Le 06/11/2009, à 21:56

PapsOu

Re : ecran tactile packard bell

salut doubaf,as-tu trouvé une solution a ton problème ?

j'investigue toujours de mon côté... pour ma part, je suis pas foutu de compiler un driver...

Hors ligne

#8 Le 07/11/2009, à 16:43

doubaf

Re : ecran tactile packard bell

bonjour a tous 
salut papsou
pour ma part le projet reste entier
j arpente le forum et le net pour trouvé une solution mais rien de nouveau
j ai testé sur le  live cd   de fedora sans succes mais je ne desespere pas si je trouve quoique se soit je te fais signe
bonne fin de journée

Hors ligne

#9 Le 07/11/2009, à 21:48

bradern

Re : ecran tactile packard bell

Bonjour
Je suis aussi dans le même cas que vous j'effectue des recherches de mon cote.
Si vous avez une piste hésité pas à la faire partager.
smile

Dernière modification par bradern (Le 07/11/2009, à 21:49)

Hors ligne

#10 Le 09/11/2009, à 10:17

PapsOu

Re : ecran tactile packard bell

Salut à tous,
Pour ma part, toujours rien, j'ai fait un double boot avec Wubi (XP et Ubuntu 9.10) pour tester tout ça. Mais je reste encore sans réponses. J'ai cru comprendre que sur Launchpad, un bug été ouvert pour ce problème la. Reste, sois à être patient, sois à perdre patience à essayer de résoudre le problème soi-même...

Bon courage à tous

Hors ligne

#11 Le 14/11/2009, à 16:58

guepe

Re : ecran tactile packard bell

Bonjour à tous,
Je suis intéressé par cet écran et suis sous ubuntu 9.10. Je me demandais si tu avancais sur le sujet, et aussi comment est connecté l'écran pour sa partie tactile? USB comme une souris?

Merci, et si tu peut m'en dire un peu plus sur la qualité...

Hors ligne

#12 Le 15/11/2009, à 16:41

PapsOu

Re : ecran tactile packard bell

Salut Guepe, c'est un écran de tablet PC, donc le tout est déjà câblé. Mais le branchement est via le hub USB. J'ai vu que l'écran est considéré comme un périphérique "hiddev" et non pas un "event". J'ai vu ici un pilote pour les hiddev : http://linuxfr.org/~sporniket/27410.html  cependant, la compilation foire pour moi. Donc je stagne toujours au même point... J'vous tiens au jus si je trouve quelque chose de mieux.

Edit: j'ai eu un tuyau sur mon premier post : http://forum.ubuntu-fr.org/viewtopic.php?id=350858
J'ai pas encore testé, mais j`vous tiendrai au jus.

Dernière modification par PapsOu (Le 15/11/2009, à 16:51)

Hors ligne

#13 Le 18/11/2009, à 19:35

guepe

Re : ecran tactile packard bell

Bonsoir,
Bon, j'ai craqué pour cet écran tactile (199€ chez Carefour) j'ai 15j pour tester faire fonctionner ou le rendre ...

Je suis sous double boot XP - Ubuntu, je cherche à la fois sur les deux systèmes, pour le moment rien de concluant, ni sur l'un ni sur l'autre, les soirées vonr êtres longues wink

Merci à ceux qui avances (meme sous xp) de donner des infos !!

a bientot pour le suite

Hors ligne

#14 Le 19/11/2009, à 08:51

PapsOu

Re : ecran tactile packard bell

Salut Guepe,

lance la commande "lshal > ~/Bureau/lshal.out" et ouvre le fichier qui viens de se créer automatiquement. Repère le matos dans la grande liste et balance le retour ici, après je pourrai te dire si c'est le même écran que moi.

Si c'est une dalle TC4UM, va télécharger ici http://www.clevo.fr/contents/fr/d38.html le pilote "Touch panel drivers for Windows XP and VISTA" (l'utilitaire de config et calibrage est inclut dedans).

Ensuite c'est super simple, tu lance l'utilitaire touch, tu calibre ton ecran (en 5 point c'est amplement suffisant) et après tu as des paramètre bien sympa, comme le clique droit avec timeout (1s ou plus avec ou sans notification), masquer le curseur, etc...

Pour Ubuntu, j'ai trouvé une solution fonctionnelle ici http://sourceforge.net/projects/hidtouchsuite/files/ mais pas très pratique (mise en place pas évidente si on a jamais compilé quoique se soit, obligé de recalibrer l'écran en cas de rotation de celui-ci...).

Mais pour installer ce pilote, il faut un xorg.conf, j'ai testé sous 8.04, ça marche, mais sous 9.10, quand je créé un xorg.conf, cela me plante systématiquement le serveur X au redémarrage.

Voila, si c'est pas le même écran mais qu'il est reconnu en tant que périphérique HID (ex : hiddev0) cela devrait marcher.

Courage

Dernière modification par PapsOu (Le 19/11/2009, à 08:52)

Hors ligne

#15 Le 19/11/2009, à 20:29

guepe

Re : ecran tactile packard bell

merci pour tes conseils.
Effectivement la liste est longue, je ne met que ce qui est pertinent (Optical touch Screen) :

udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'
  info.linux.driver = 'usb'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_1d6b_1_0000_00_02_0'  (string)
  info.product = 'Optical Touch Screen'  (string)
  info.subsystem = 'usb_device'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'  (string)
  info.vendor = 'Quanta Computer, Inc.'  (string)
  linux.device_file = '/dev/bus/usb/002/003'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'usb'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-2'  (string)
  usb_device.bus_number = 2  (0x2)  (int)
  usb_device.can_wake_up = false  (bool)
  usb_device.configuration_value = 1  (0x1)  (int)
  usb_device.device_class = 0  (0x0)  (int)
  usb_device.device_protocol = 0  (0x0)  (int)
  usb_device.device_revision_bcd = 0  (0x0)  (int)
  usb_device.device_subclass = 0  (0x0)  (int)
  usb_device.is_self_powered = false  (bool)
  usb_device.linux.device_number = 3  (0x3)  (int)
  usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-2'  (string)
  usb_device.max_power = 100  (0x64)  (int)
  usb_device.num_configurations = 1  (0x1)  (int)
  usb_device.num_interfaces = 1  (0x1)  (int)
  usb_device.num_ports = 0  (0x0)  (int)
  usb_device.product = 'Optical Touch Screen'  (string)
  usb_device.product_id = 12288  (0x3000)  (int)
  usb_device.speed = 12.0 (12) (double)
  usb_device.vendor = 'Quanta Computer, Inc.'  (string)
  usb_device.vendor_id = 1032  (0x408)  (int)
  usb_device.version = 1.1 (1.1) (double)

udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial_if0'
  info.linux.driver = 'usbhid'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'  (string)
  info.product = 'USB HID Interface'  (string)
  info.subsystem = 'usb'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial_if0'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'usb'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0'  (string)
  usb.bus_number = 2  (0x2)  (int)
  usb.can_wake_up = false  (bool)
  usb.configuration_value = 1  (0x1)  (int)
  usb.device_class = 0  (0x0)  (int)
  usb.device_protocol = 0  (0x0)  (int)
  usb.device_revision_bcd = 0  (0x0)  (int)
  usb.device_subclass = 0  (0x0)  (int)
  usb.interface.class = 3  (0x3)  (int)
  usb.interface.number = 0  (0x0)  (int)
  usb.interface.protocol = 0  (0x0)  (int)
  usb.interface.subclass = 0  (0x0)  (int)
  usb.is_self_powered = false  (bool)
  usb.linux.device_number = 3  (0x3)  (int)
  usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0'  (string)
  usb.max_power = 100  (0x64)  (int)
  usb.num_configurations = 1  (0x1)  (int)
  usb.num_interfaces = 1  (0x1)  (int)
  usb.num_ports = 0  (0x0)  (int)
  usb.product = 'USB HID Interface'  (string)
  usb.product_id = 12288  (0x3000)  (int)
  usb.speed = 12.0 (12) (double)
  usb.vendor = 'Quanta Computer, Inc.'  (string)
  usb.vendor_id = 1032  (0x408)  (int)
  usb.version = 1.1 (1.1) (double)

udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial_if0_hiddev'
  hiddev.application_pages = {'Unknown page 0xd0004'} (string list)
  hiddev.device = '/dev/usb/hiddev1'  (string)
  hiddev.product = 'Quanta Computer Inc. Optical Touch Screen'  (string)
  info.capabilities = {'hiddev'} (string list)
  info.category = 'hiddev'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial_if0'  (string)
  info.product = 'Quanta Computer Inc. Optical Touch Screen'  (string)
  info.subsystem = 'usb'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial_if0_hiddev'  (string)
  linux.device_file = '/dev/usb/hiddev1'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'usb'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-2/2-2:1.0/usb/hiddev1'  (string)

udi = '/org/freedesktop/Hal/devices/fuse'
  access_control.file = '/dev/fuse'  (string)
  access_control.type = 'camera'  (string)
  info.capabilities = {'access_control'} (string list)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'  (string)
  info.subsystem = 'unknown'  (string)
  info.udi = '/org/freedesktop/Hal/devices/fuse'  (string)

udi = '/org/freedesktop/Hal/devices/usb_device_1d6b_1_0000_00_02_0_if0'
  info.linux.driver = 'hub'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_1d6b_1_0000_00_02_0'  (string)
  info.product = 'USB Hub Interface'  (string)
  info.subsystem = 'usb'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_1d6b_1_0000_00_02_0_if0'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'usb'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-0:1.0'  (string)
  usb.bus_number = 2  (0x2)  (int)
  usb.can_wake_up = true  (bool)
  usb.configuration_value = 1  (0x1)  (int)
  usb.device_class = 9  (0x9)  (int)
  usb.device_protocol = 0  (0x0)  (int)
  usb.device_revision_bcd = 518  (0x206)  (int)
  usb.device_subclass = 0  (0x0)  (int)
  usb.interface.class = 9  (0x9)  (int)
  usb.interface.number = 0  (0x0)  (int)
  usb.interface.protocol = 0  (0x0)  (int)
  usb.interface.subclass = 0  (0x0)  (int)
  usb.is_self_powered = true  (bool)
  usb.linux.device_number = 1  (0x1)  (int)
  usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:02.0/usb2/2-0:1.0'  (string)
  usb.max_power = 0  (0x0)  (int)
  usb.num_configurations = 1  (0x1)  (int)
  usb.num_interfaces = 1  (0x1)  (int)
  usb.num_ports = 3  (0x3)  (int)
  usb.product = 'USB Hub Interface'  (string)
  usb.product_id = 1  (0x1)  (int)
  usb.serial = '0000:00:02.0'  (string)
  usb.speed = 12.0 (12) (double)
  usb.vendor = 'Linux Foundation'  (string)
  usb.vendor_id = 7531  (0x1d6b)  (int)
  usb.version = 1.1 (1.1) (double)

Je vais tester ta methode (pas de risque de toute façon.

Je vous tient au courant

Hors ligne

#16 Le 20/11/2009, à 21:54

guepe

Re : ecran tactile packard bell

bon, je te remercie pour toutes tes précieuses info. j'ai testé la compile, pas de probleme pour le dump des données en console. Par contre, à la fin du make de la compli du driver, j'ai ceci:

hidtouch__body.h:175: error: too many arguments to function ‘InitValuatorClassDeviceStruct’
In file included from hidtouch.c:71:
hidtouch__body.h:430:5: warning: "/*" within comment
make[2]: * [hidtouch_drv_la-hidtouch.lo] Erreur 1
make[2]: quittant le répertoire « /home/guepe/Documents/xf86-input-hidtouch-9.04.04/src »
make[1]: * [all-recursive] Erreur 1
make[1]: quittant le répertoire « /home/guepe/Documents/xf86-input-hidtouch-9.04.04 »
make: * [all] Erreur 2

il doit manquer quelque chose ...

Par contre pour ce qui est de XP (pas essentiel si ubuntu marche) ton lien abouti à une liste interminable de models et en fouillant, je n'est aps trouvé le driver en question... (pas doué le gars;)

je continu à chercher

Hors ligne

#17 Le 22/11/2009, à 10:56

guepe

Re : ecran tactile packard bell

Salut Papsou,
Après moult galères et test, voilà ou j'en suis :
Mon écran n'est pas le meme que le tient, les pilotes clévo ne fonctionnent pas sous XP (pas grave)

Sous Ubuntu 9.10, compilation ok à partir des sources cvs mais effectivement, plantage Xorg au démarrage, mais j'ai cru comprendre que la gestion de xorg avait changée, je n'ai pas insisté.

Sous Ubuntu 8.10 (pas retrouvé mon CD 8.04), compilation OK, Dump OK, mais le driver ne se charge pas au démarrage, je ne connait pas la cause, j'au du foirer quelque chose. Je contact le développeur pour essayé d'avancer.

Merci pour ton aide, j'ai bon espoir de déboucher sur une solution...

Hors ligne

#18 Le 23/11/2009, à 10:53

PapsOu

Re : ecran tactile packard bell

Bonjour guepe,

Pour cette histoire de driver qui ne se load pas au démarrage, je me demande si ça viendrai pas d'une config auto du xorg.conf au démarrage. Est-il modifié lorsque le driver ne fonctionne plus ?

Pour ma part je vais tester le support de mon matos avec d'autres distrib, style Fédora 12 ou mandriva (on sais jamais, un miracle peut bien arriver).

Bon courage pour la suite

Hors ligne

#19 Le 27/11/2009, à 12:24

guepe

Re : ecran tactile packard bell

Bonjour,
Bon, j'ai trouvé, il me manquait une section ServerLayout permettant d'associer l'écran et le driver.
Maintenant ca marche, mais la sensibilité est trop forte, il y a trop de données qui arrive et font "sauter" le curseur.
Je continu à chehrcher.

Si je peut me permettre, je te propose de regarder ce lien:
http://blog.lmartin.fr/dc2/index.php/po … u-904-LPIA

il me semble que ca correspond à ton matériel et que c'est un autre driver fonctionnel.

Bon courage

Hors ligne

#20 Le 28/11/2009, à 14:43

guepe

Re : ecran tactile packard bell

Bonjour à tous,
Une bonne nouvelle, j'ai une solution fonctionnelle pour le Packard-Bell Viseo 200t, testée sur Ubuntu 8.10, et sous  9.10. Attention si vous mettez à jour d'une version à l'autre, vous devrez recompiler le driver.

J'ai utiliser le driver de David  Sporn à télécharger ici :
http://sourceforge.net/projects/hidtouchsuite/files/

Maintenant, le Packard-Bell est un multitouch, c'est pour ca qu'il faut faire quelques adaptations et modif.
Suivez le très bon tuto fourni avec le driver, je vous met ci dessous la config testée chez moi, c'est l'adaptation des exemples données par le développeur, et ça vous évitera de chercher :

udev pour la définition du matériel, j'ai créer le fichier /etc/udev/rules.d/10-local.rules :

SUBSYSTEM=="usb", ATTRS{idVendor}=="0408", ATTRS{idProduct}=="3000", SYMLINK+="$attr{manufacturer}-$attr{product}"

à mettre sur une seule ligne

ensuite mon fichier xorg.conf :

Section "ServerLayout"
	Identifier	"Main Layout"
	Screen     0 "Default Screen"
	InputDevice	"Optical Touch Screen"
EndSection

Section "InputDevice"
	Identifier	"Optical Touch Screen"
	Driver		"hidtouch"
	Option		"SendCoreEvents"
	Option		"ReportingMode"    "Raw"
	Option		"Device"    "/dev/usb/hiddev0"
	Option		"PacketCount"    "13"
	Option		"OpcodePressure"    "852034"
	Option		"OpcodeX"    "65584"
	Option		"OpcodeY"    "65585"
	Option		"CalibrationModel" "1"
	Option		"CornerTopLeftX" "0"
	Option		"CornerTopLeftY" "0"
	Option		"CornerTopRightX" "1600"
	Option		"CornerTopRightY" "0"
	Option		"CornerBottomLeftX"     "0"
	Option		"CornerBottomLeftY"     "900"
	Option		"CornerBottomRightX"    "1600"
	Option		"CornerBottomRightY"    "900"
	Option		"CornerScreenWidth"     "1600"
	Option		"CornerScreenHeight"    "900"
EndSection

pour finir, il faut modifier le fichier source du driver avant de le compiler. Je ne sais pas si cette modif, qui n'enlève rien à la compatibilité des autres écrans sera validée et fera partie des prochaines versions. En attendant, c'est très simple, je vous propose d'ouvrir le fichier hidtouch__HdtRawData.h qui se trouve dans le répertoire src du driver et de remplacer la fonction existante par celle ci :

HdtRawData__fillFromInputInfo(HdtRawDataPtr hdtRawData, InputInfoPtr pInfo)
{
    HdtDevicePtr pDevice = pInfo->private;
    HdtConfigurationPtr configuration = &(pDevice->myConfiguration) ;
    HdtOpCodePtr op_code_setup = &(configuration->opCodeSetup) ;

    int i ;
    int firstpressure = 0 ;  /* modif video touch*/
    int firstpressureX = 0 ; /* modif video touch*/  
    int firstpressureY = 0 ; /* modif video touch*/
    struct hiddev_event packet ;
    /*int op_code ;
    int op_value ;*/

    for(i=0; i<(configuration->packetCount) ; i++) {
        read(pInfo->fd, &packet, sizeof(packet)) ;
        /*op_code = HdtRawData__fillFromInputInfo__readInt(pInfo) ;*/
        /*op_value = HdtRawData__fillFromInputInfo__readInt(pInfo) ;*/
        /*xf86Msg(X_INFO, "Read packet : \t%x\t%x\n", op_code, op_value);*/

        if((packet.hid == op_code_setup->pressure)&&(firstpressure == 0)) /* modif video touch*/
        {
            hdtRawData->pressure = (0 == packet.value)
                    ? HDT__RAW_DATA__IS_NOT_PRESSED
                    : HDT__RAW_DATA__IS_PRESSED ;
                    firstpressure = 1 ; /* modif video touch*/
        }
        else if((packet.hid == op_code_setup->x)&&(firstpressureX == 0)) /* modif video touch*/
        {
            hdtRawData->x = packet.value ;
            firstpressureX = 1 ; /* modif video touch*/
        }
        else if((packet.hid == op_code_setup->y)&&(firstpressureY == 0)) /* modif video touch*/
        {
            hdtRawData->y = packet.value ;
            firstpressureY = 1 ; /* modif video touch*/
        }
    }
}

Vous verez, il n'y a pas grand chose, juste de limiter les acquisitions à leur première valeur (1 doigt sur l'écran)

Pour la gestion du multi clic, on va attendre la sortie de cette fonctionalité dans gnome, et on verra après

Enjoy it

Dernière modification par guepe (Le 04/12/2009, à 19:29)

Hors ligne

#21 Le 16/12/2009, à 13:35

sylles

Re : ecran tactile packard bell

Salut Guepe,

Je pense avoir le même écran que toi. Voici le résultat de la commande lshal :

udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'
  info.linux.driver = 'usb'  (string)
  info.parent = '/org/freedesktop/Hal/devices/usb_device_1d6b_1_0000_00_1d_0'  (string)
  info.product = 'Optical Touch Screen'  (string)
  info.subsystem = 'usb_device'  (string)
  info.udi = '/org/freedesktop/Hal/devices/usb_device_408_3000_noserial'  (string)
  info.vendor = 'Quanta Computer, Inc.'  (string)
  linux.device_file = '/dev/bus/usb/006/002'  (string)
  linux.hotplug_type = 2  (0x2)  (int)
  linux.subsystem = 'usb'  (string)
  linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-1'  (string)
  usb_device.bus_number = 6  (0x6)  (int)
  usb_device.can_wake_up = false  (bool)
  usb_device.configuration_value = 1  (0x1)  (int)
  usb_device.device_class = 0  (0x0)  (int)
  usb_device.device_protocol = 0  (0x0)  (int)
  usb_device.device_revision_bcd = 0  (0x0)  (int)
  usb_device.device_subclass = 0  (0x0)  (int)
  usb_device.is_self_powered = false  (bool)
  usb_device.linux.device_number = 2  (0x2)  (int)
  usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-1'  (string)
  usb_device.max_power = 100  (0x64)  (int)
  usb_device.num_configurations = 1  (0x1)  (int)
  usb_device.num_interfaces = 1  (0x1)  (int)
  usb_device.num_ports = 0  (0x0)  (int)
  usb_device.product = 'Optical Touch Screen'  (string)
  usb_device.product_id = 12288  (0x3000)  (int)
  usb_device.speed = 12.0 (12) (double)
  usb_device.vendor = 'Quanta Computer, Inc.'  (string)
  usb_device.vendor_id = 1032  (0x408)  (int)
  usb_device.version = 1.1 (1.1) (double)

Cependant, je n'arrive pas à installer le driver.
Peux-tu me dire quel fichier je dois télécharger et comment l'installer ?

Merci d'avance pour ton aide.

Hors ligne

#22 Le 16/12/2009, à 14:40

PapsOu

Re : ecran tactile packard bell

Salut, tout est expliqué dans la doc de David Sporn (prends le pdf sur SourceForge)... Fais tout pas à pas (installation des paquets gcc, xorg-input, etc..., ./configue, make sudo make install, etc...) et tout fonctionne.
C'est au moment du ./configue que la commande t'indique si tu as toutes les dépendances résolues)
C'est la première fois que j'ai compilé un driver, c'est donc bien expliqué, vu que j'y suis arrivé wink

Voila bon courage.

PS : pense à imprimer la doc, ça sert bien quand tu as besoin de recalibrer ton écran

Hors ligne

#23 Le 17/12/2009, à 15:47

sylles

Re : ecran tactile packard bell

Salut,

Je viens de suivre les instructions du manuel, mais j'ai un souci. Voila, ma démarche :

1- J'ai téléchargé les fichiers hid-device-dump-9.04.04.zip et xf86-input-hidtouch-9.04.04.zip que j'ai décompressé.

2- Pour la partie hid-device-dump, ça m'a l'air de s'être bien passé, mais quand je lance la commande sudo hidDeviceDump /dev/usb/hiddev0, j'obtiens ce message :

hid-device-dump 9.04.04
Send bug reports to http://sporniket-studio.com
Device '/dev/usb/hiddev0' could be open : ok
Packets in a row : 6

3- Après je passe à la partie hidtouch. Dans le répertoire xf86-input-hidtouch-9.04.04, je lance la commande ./configure --prefix=/usr et j'obtiens ceci :

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognize dependent libraries... pass_all
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for g77... no
checking for xlf... no
checking for f77... no
checking for frt... no
checking for pgf77... no
checking for cf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for xlf90... no
checking for f90... no
checking for pgf90... no
checking for pghpf... no
checking for epcf90... no
checking for gfortran... no
checking for g95... no
checking for xlf95... no
checking for f95... nochecking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognize dependent libraries... pass_all
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for g77... no
checking for xlf... no
checking for f77... no
checking for frt... no
checking for pgf77... no
checking for cf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for xlf90... no
checking for f90... no
checking for pgf90... no
checking for pghpf... no
checking for epcf90... no
checking for gfortran... no
checking for g95... no
checking for xlf95... no
checking for f95... no
checking for fort... no
checking for ifort... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for ftn... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether  accepts -g... no
checking the maximum length of command line arguments... 1572864
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
(cached) (cached) checking how to hardcode library paths into programs... immediate
appending configuration tag "F77" to libtool
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking if XINPUT is defined... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for XORG... yes
checking for ANSI C header files... (cached) yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands

checking for fort... no
checking for ifort... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for ftn... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether  accepts -g... no
checking the maximum length of command line arguments... 1572864
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
(cached) (cached) checking how to hardcode library paths into programs... immediate
appending configuration tag "F77" to libtool
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking if XINPUT is defined... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for XORG... yes
checking for ANSI C header files... (cached) yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands

4- Puis quand je lance la commande make, j'obtiens ceci :

make  all-recursive
make[1]: entrant dans le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04 »
Making all in src
make[2]: entrant dans le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04/src »
/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -I/usr/include/xorg -I/usr/include/pixman-1    -I../src -MT hidtouch_drv_la-hidtouch.lo -MD -MP -MF .deps/hidtouch_drv_la-hidtouch.Tpo -c -o hidtouch_drv_la-hidtouch.lo `test -f 'hidtouch.c' || echo './'`hidtouch.c
 gcc -DHAVE_CONFIG_H -I. -I.. -Wall -g -O2 -I/usr/include/xorg -I/usr/include/pixman-1 -I../src -MT hidtouch_drv_la-hidtouch.lo -MD -MP -MF .deps/hidtouch_drv_la-hidtouch.Tpo -c hidtouch.c  -fPIC -DPIC -o .libs/hidtouch_drv_la-hidtouch.o
In file included from hidtouch.c:66:
hidtouch__HdtRawData.h: In function ‘HdtRawData__fillFromInputInfo’:
hidtouch__HdtRawData.h:41: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result
In file included from hidtouch.c:71:
hidtouch__body.h: In function ‘hdtOnDeviceOff’:
hidtouch__body.h:115: warning: unused variable ‘pDevice’
hidtouch__body.h: In function ‘hdtOnDeviceInit__initAxes’:
hidtouch__body.h:175: warning: passing argument 3 of ‘InitValuatorClassDeviceStruct’ makes integer from pointer without a cast
/usr/include/xorg/input.h:281: note: expected ‘int’ but argument is of type ‘int (*)(struct _DeviceIntRec *, struct xTimecoord **, long unsigned int,  long unsigned int,  struct _Screen *, BOOL)’
hidtouch__body.h:175: error: too many arguments to function ‘InitValuatorClassDeviceStruct’
In file included from hidtouch.c:71:
hidtouch__body.h:430:5: warning: "/*" within comment
make[2]: *** [hidtouch_drv_la-hidtouch.lo] Erreur 1
make[2]: quittant le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04/src »
make[1]: *** [all-recursive] Erreur 1
make[1]: quittant le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04 »
make: *** [all] Erreur 2

5- Et la commande sudo make install donne le résultat suivant :

Making install in src
make[1]: entrant dans le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04/src »
/bin/bash ../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..    -Wall -g -O2 -I/usr/include/xorg -I/usr/include/pixman-1    -I../src -MT hidtouch_drv_la-hidtouch.lo -MD -MP -MF .deps/hidtouch_drv_la-hidtouch.Tpo -c -o hidtouch_drv_la-hidtouch.lo `test -f 'hidtouch.c' || echo './'`hidtouch.c
 gcc -DHAVE_CONFIG_H -I. -I.. -Wall -g -O2 -I/usr/include/xorg -I/usr/include/pixman-1 -I../src -MT hidtouch_drv_la-hidtouch.lo -MD -MP -MF .deps/hidtouch_drv_la-hidtouch.Tpo -c hidtouch.c  -fPIC -DPIC -o .libs/hidtouch_drv_la-hidtouch.o
In file included from hidtouch.c:66:
hidtouch__HdtRawData.h: In function ‘HdtRawData__fillFromInputInfo’:
hidtouch__HdtRawData.h:41: warning: ignoring return value of ‘read’, declared with attribute warn_unused_result
In file included from hidtouch.c:71:
hidtouch__body.h: In function ‘hdtOnDeviceOff’:
hidtouch__body.h:115: warning: unused variable ‘pDevice’
hidtouch__body.h: In function ‘hdtOnDeviceInit__initAxes’:
hidtouch__body.h:175: warning: passing argument 3 of ‘InitValuatorClassDeviceStruct’ makes integer from pointer without a cast
/usr/include/xorg/input.h:281: note: expected ‘int’ but argument is of type ‘int (*)(struct _DeviceIntRec *, struct xTimecoord **, long unsigned int,  long unsigned int,  struct _Screen *, BOOL)’
hidtouch__body.h:175: error: too many arguments to function ‘InitValuatorClassDeviceStruct’
In file included from hidtouch.c:71:
hidtouch__body.h:430:5: warning: "/*" within comment
make[1]: *** [hidtouch_drv_la-hidtouch.lo] Erreur 1
make[1]: quittant le répertoire « /home/sylles/Téléchargements/xf86-input-hidtouch-9.04.04/src »
make: *** [install-recursive] Erreur 1

Je ne vois pas ce que j'ai fait de travers.

Merci de votre aide.

Hors ligne

#24 Le 20/12/2009, à 00:08

Miaou86

Re : ecran tactile packard bell

j'ai suivit la même methode que toi" sylles" et j'obtient le même message d'erreur


Ma Config : MSI gx600-53 / proc T8100 + 4GO Ram + geforce 8600m gt 512 mo
Ecran tactile Acer T230H et carte TV Hauppage 900H

Hors ligne

#25 Le 21/12/2009, à 11:29

PapsOu

Re : ecran tactile packard bell

@sylles et @Miaou86 : pour votre problème de /dev/usb/hiddev0, allez voir dans le répertoire /dev/ si le hiddev0 n'est pas ici (des fois, il n'apparait pas dans le dossier usb mais dans dev uniquement => quelle version d'Ubuntu as-tu ?)

Tu as la même erreur que moi sous Ubuntu 9.10, cela est dû à ce que le driver n'est pas conçu pour les dernières versions d'Xorg. le seul moyen de résoudre le problème c'est de downgrader vers la 8.04 - 8.10 (et pas sûr la 9.04)

Voila, courage

Dernière modification par PapsOu (Le 21/12/2009, à 11:33)

Hors ligne