みつきんのメモ

組み込みエンジニアです。Interface誌で「Yocto Projectではじめる 組み込みLinux開発入門」連載中

Yocto環境でLogitech Unifyingデバイスが動かない場合

はじめに

Jetson NanoにYocto環境を作ってLogtech Unifyingのキーボード・マウスを接続したが、 全く反応しなかった。

原因

イメージに必要なドライバがインストールされていないことが原因だった。

下記のコマンドでカーネルコンフィグを確認したところ必要なデバイス[m]になっている。

$ bitbake virtual/kernel -c menuconfig

関連ありそうなドライバ

結局hid_logitech_hidppが必要だったが、依存関係的にhid_logitech_djも必要らしい。

対処

local.confに下記の設定を追加する。

# logitech unifying drivers
IMAGE_INSTALL_append = " \
                     kernel-module-hid-logitech-dj \
                     kernel-module-hid-logitech-hidpp \
"

まとめ

Logitech UnifyingのデバイスをYocto環境で使用する場合は注意が必要。

例えばkernel-modulesメタパッケージがインストールされており、 カーネルモジュールがすべてインストールされるような環境では問題にはならない。 ただ、モジュールすべてをインストールするとディスク容量を大量に消費するため、 必要最小限のみをインストールするような場合のほうが多い。

PCでは動いたデバイスが動かない場合は、次の2つを確認してみると良い。

  1. カーネルコンフィグ
  2. 必要なモジュールがイメージにインストールされているか

意外と2は見落としがち。