そこで、最近指定されたキーボードを購入し、ロジクールゲームソフトウェアがそれをどのように使用するかを知るためにリバースエンジニアリングを行ってきました。その過程で、基本的なf1-6をg1-6からバインド解除するために、いくつかのマジックパケットがデバイスに送信されたことがわかりました。しかし、この部分以降は状況が厳しくなりました。特殊キー(m1-3、mr、g1-6)のいずれも標準ツールに従ってスキャンコードを報告せず、すべてビットロジックを使用して同じ使用法ff00.0003の隠しレポートを送信します。
各キーは、次の形式のhidレポートに送信されます。
03 gg mm
ここで、ggはg#=(0x01 <<#-1)、mmはm#=(0x01 <<#-1)です。 [mrはこの数学演算ではm4と見なされます。したがって、g1とg2を同時に押すと、
04 03 01
この値が一緒にANDになります。
BTN_TRIGGER_HAPPY?
したがって、隠しレポートを既知のスキャンコード(たとえば)にマップすることで、xbindkeysなどを使用してユーザースペースから簡単に再マップすることができる特別に便利な方法が見つかりません。
このキーボードに関する膨大な情報ダンプは以下にあります。https://github.com/GSeriesDev/gseries-tools/blob/master/g105/info、それが役に立つなら。
ベストアンサー1
これで、Logitech G105キーボード用のLinuxドライバがあります。sidewinderd、githubで利用可能。