NAMEまたはPRODUCTを使用してudevルールを作成できないのはなぜですか?

NAMEまたはPRODUCTを使用してudevルールを作成できないのはなぜですか?

Bluetooth経由でBoseヘッドフォンを接続するときにトリガーされるudevルールを作成したいと思います。

udevadm monitor --kernel --propertyヘッドセットを起動して接続すると、次の結果が表示されます。

KERNEL[2226.084251] add      /devices/virtual/input/input22 (input)
ACTION=add
DEVPATH=/devices/virtual/input/input22
SUBSYSTEM=input
PRODUCT=5/9e/4020/452
NAME="Słuchawencje (AVRCP)"
PHYS="00:0d:f0:bf:f7:df"
PROP=0
EV=100007
KEY=2fc800 145200000000 0 10300 49e800000c00 e16800000000f f810000010000ffc
REL=0
MODALIAS=input:b0005v009Ep4020e0452-e0,1,2,14,k71,72,73,8A,8B,A3,A5,A6,A7,A8,AB,AE,C8,C9,D0,161,164,166,16A,16C,18B,18E,18F,190,191,192,193,195,ramlsfw
SEQNUM=3814

しかし、名前と製品を実行してもudevadm info --attribute-walk --path=/devices/virtual/input/input22存在しません。

  looking at device '/devices/virtual/input/input22':
    KERNEL=="input22"
    SUBSYSTEM=="input"
    DRIVER==""
    ATTR{uniq}==""
    ATTR{phys}=="00:0d:f0:bf:f7:df"
    ATTR{properties}=="0"

なぜ? udevルールでNAME / PRODUCTを使用できないのはなぜですか?

私のワイヤレススピーカーのような他のBluetoothデバイスの場合、udevは少し優れたパフォーマンスを発揮します。これはudevadm monitor --kernel --property私のワイヤレススピーカーの出力です。

KERNEL[2635.676303] add      /devices/virtual/input/input23 (input)
ACTION=add
DEVPATH=/devices/virtual/input/input23
SUBSYSTEM=input
PRODUCT=5/0/0/0
NAME="JBL GO 2 (AVRCP)"
PHYS="00:0d:f0:bf:f7:df"
PROP=0
EV=100007
KEY=2fc800 145200000000 0 10300 49e800000c00 e16800000000f f810000010000ffc
REL=0
MODALIAS=input:b0005v0000p0000e0000-e0,1,2,14,k71,72,73,8A,8B,A3,A5,A6,A7,A8,AB,AE,C8,C9,D0,161,164,166,16A,16C,18B,18E,18F,190,191,192,193,195,ramlsfw
SEQNUM=3834

そしてudevadm info --attribute-walk --path=/devices/virtual/input/input23印刷してください:

  looking at device '/devices/virtual/input/input23':
    KERNEL=="input23"
    SUBSYSTEM=="input"
    DRIVER==""
    ATTR{name}=="JBL GO 2 (AVRCP)"
    ATTR{properties}=="0"
    ATTR{uniq}==""
    ATTR{phys}=="00:0d:f0:bf:f7:df"

製品はまだ存在しませんが、少なくとも名前は存在します。

答え1

ルールのデバイス属性を一致させるには、次の例を使用する必要があります。

ENV{PRODUCT}

あまりにも基本プロパティ。残りはデバイスごとに異なり、ENV {PROPERTY}はこれを参照する方法です。

関連情報