BlueZ 5は再起動後にHIDデバイスを再生成します。

BlueZ 5は再起動後にHIDデバイスを再生成します。

私はユーザーの対話のためにBluetoothキーボードを使用する組み込みデバイスで作業しています。

再起動またはBlueZ再起動後に初めてキーボードが接続されると、BlueZは接続を確立し、しばらくしてから(1秒未満)、次の内容がカーネルログに表示されます。

input: DA1458x as /devices/virtual/misc/uhid/0005:00D2:0580.0001/input/input1

オペレーティングシステムは、キーの押下が表示されるまでこれを検出しません(これは論理的です)。 HIDデバイスが作成されたため、後続の再接続は正しく機能します。

デバイスの再起動により、BlueZとカーネルがデバイスを失い、入力デバイスを作成するためにキーボードを再接続する必要があるかもしれません。

使用していない場合は、メンテナンスの更新のためにデバイスを再起動するため、ユーザーエクスペリエンスには悪くなります。したがって、次に最も一般的に押すキーは電源ですが、BlueZはHIDデバイスを作成する前に送信されるため、そのキーはありません。

この問題を回避するために、BlueZ(または他の場所で実行)を開始した直後に入力デバイスを作成し、ペアリングされたキーボードにバインドするように指示できますか?

関連情報