J'essaie de trouver le fabricant de l'appareil et le modèle de mon clavier et de mon pavé tactile afin de pouvoir écrire un fichier de configuration XOrg en le ciblant via:
Section "InputClass"
Identifier "touchpad"
MatchIsTouchpad "on"
Driver "synaptics"
MatchProduct "Product Name"
MatchVendor "Vendor Name"
EndSection
Comment puis-je découvrir le nom du produit et du fournisseur d'un appareil à l'aide d'un outil CLI? J'aimerais clouer mon pavé tactile et mon clavier Bluetooth afin de pouvoir personnaliser la configuration Xorg.
lsusb
souvent n'affiche pas de nom de produit. La réponse de ManuelSchneid3r fonctionne le mieux pour moi, qui est:xinput list
.Nom du produit de l'appareil (modèle)
Obtenez le nom du produit (ou modèle ) du périphérique xinput à l' aide de
xinput list
. La sortie d'exemple pourrait ressembler à ceci:Dans la sortie ci-dessus, le nom du modèle ou du produit de l'appareil à écran tactile est "ELAN Touchscreen".
Chemin du périphérique (nœud)
Pour obtenir le nom du fournisseur (ou fabricant ) du périphérique xinput , nous devons connaître le chemin du périphérique (également appelé nœud du périphérique) à interroger, puis demander
udevadm info
. Vous pouvez obtenir le chemin en répertoriant les propriétés xinput d'un périphérique et en recherchant la valeur 'Device Node'.Dans notre exemple précédent, la valeur du nœud de périphérique pour l'écran tactile, qui dit que c'est le cas
id=10
, peut être trouvée comme suit:Nom du fournisseur de l'appareil (fabricant)
Maintenant, nous pouvons obtenir le nom du fournisseur (ou fabricant ) du périphérique xinput en examinant la valeur de la
VENDOR
propriété retournée parudevadm info
le périphérique avec notre nom de chemin ci-dessus:Dans la sortie ci-dessus, le nom du fabricant ou du fournisseur de l'écran tactile serait "ELAN".
Configuration de XOrg
En rassemblant tout cela, nous pouvons créer une nouvelle section de configuration XOrg
InputClass
pour correspondre à des fournisseurs, des produits ou des chemins de périphériques spécifiques. En utilisant nos exemples précédents, cette section correspond à tout produit à écran tactile fabriqué par le fournisseur ELAN:Merci à @ Stéphane , @Daniel et @ ManuelSchneid3r
la source
xinput list
affiche le nom du fournisseur et du produit sur une seule ligne, séparés uniquement par un caractère d'espace. Dans mon cas, c'était TrulyErgonomic.com Truly Ergonomic Computer Keyboard au lieu de Truly Ergonomic Computer Keyboard . MaisMatchProduct
semble fonctionner avec les deux chaînes: le nom du fournisseur et du produit (tel que répertorié parxinput list
) ou uniquement le nom du produit (tel que répertorié parudevadm
).MatchProduct "Product Name"
ne fonctionne pas avec la sortie de la suggestion de Stéphanelsusb -v | grep -e idProduct -e idVendor
. Je viens de le tester.xinput list
génère la chaîne correcte qui fonctionne avecMatchProduct
la source
xinput list
que le fournisseur et le produit sont listés ensemble? Savez-vous comment déterminer lequel est lequel?xinput list
affiche le nom du produit mais pas le nom du fournisseur.udevadm info
affiche le nom du fournisseur, mais pas le nom du produit.xinput list
affichez le nom du fournisseur et du produit sur une seule ligne, séparés par un espace. J'avais besoin d'utiliser la réponse de @ DanielK pour trouver uniquement le nom du produit. Maisudevadm
montre _ au lieu d'espaces. Plus facile à utiliser pourrait être le MatchUSBID trouvé aveclsusb
oulsusb -v
.xinput list
, qui est le nom du fournisseur et du produit (au moins dans mon cas), et avec le nom du produit uniquement (que j'ai obtenu enudevadm
remplaçant les caractères _ par des espaces.J'ai trouvé les commandes suivantes utiles pour trouver le modèle / fournisseur à utiliser avec la configuration xorg.conf.
Depuis https://bbs.archlinux.org/viewtopic.php?pid=753773 : (où / dev / sdx est remplacé par le chemin d'accès du périphérique cible, par exemple / dev / input / mouse1)
Selon http://fedoraproject.org/wiki/Input_device_configuration :
la source
xinput list
l'affiche correctement, mais le nom du fournisseur et du produit ensemble sur une seule ligne.