最近1つ買いました。アミロVA109M機械式キーボード。 Windowsではうまく機能しますが、専用の修飾キーを押しているかどうかにかかわらず、ファンクションキーが常にメディアショートカットを有効にしているように見えるため、F1Ubuntuのインストールを混同しているようです。たとえば、このボタンだけを押すとシステムの音量が大きくなり、+を押すとシステムの音量も大きくなります。通常のキーのように機能させる方法はありません。私は多くのプログラミングを行い、多くのIDEショートカットが標準のファンクションキーに依存しているため、これが問題になります。F12FnF12FnF12F12
Fn+を押し続けてキーボードの内部設定をリセットしてみましたEscが、役に立ちませんでした。同じコンピュータにインストールされているWindowsはこのキーボードと完全に機能します。 Ubuntuの混乱を正確に診断するために私ができることはありますか?
編集:lsusb
以下を出力します。
Bus 001 Device 003: ID 05ac:024f Apple, Inc. Varmilo Keyboard
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x05ac Apple, Inc.
idProduct 0x024f
bcdDevice 1.00
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x005b
bNumInterfaces 3
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 350mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 75
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 85
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 2
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 33
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0020 1x 32 bytes
bInterval 4
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0020 1x 32 bytes
bInterval 4
答え1
これは解決することができます!
だから最近私はこれを直接調べてみましたが、Jd3eBPがAppleキーボードを装うキーボードについては正確ですが、実際には工場でVarmiloが点滅する問題かもしれません。
彼らはファームウェアとラベリングだけが異なるMacバージョンのキーボードを販売しています。基本的にMacレイアウトをサポートしているようです。キーの順序を変更できる「Windowsモード」に切り替えることも必要です。期待していましたが、このキーボードはそれ自体がAppleキーボードとして識別されているため、Macでこれを正しく処理できます。
しかし、誤ってこのファームウェアをフラッシュしたようです。すべてキーボードはMac専用のキーボードではなく、WindowsではIDを無視するので明確ではありませんが、Linuxではhid_appleドライバが有効になります。
解決策:
回答セクションに進みます。この問題を解決するための2つの大きなオプションがあります。両方をテストしたところ、2番目のオプションがより良いことがわかりました。
hid_appleをファンクションキーを正常に処理するモードに変更すると、基本的に問題が解決されると思います。これを行う方法についてはここで見つけることができ、Ubuntuでも動作します。https://wiki.archlinux.org/index.php/Apple_Keyboard#Function_keys_do_not_work。
製品とベンダーIDでキーボードが検出されないように更新してください。これは間違いなく正解ですが、より危険です。メーカーホームページからファームウェアファイルを入手できます。https://en.varmilo.com/keyboardproscenium/Driverdownload、VA87Mを使ってダウンロードしてください。アップデータ自体が動作しないので(中国語ローカライゼーションをインストールしなければならないようです)、ここで誰かに提供するアップデータを利用すればいいです。https://www.reddit.com/r/Varmilo/comments/g4sabk/fn_lock_on_va87m/、良い測定のために公式ファームウェアファイルを使用してください。これを信じられない場合は、Varmiloに電子メールを送ってください。これについてお問い合わせください。
アップデータは公式ウェブサイトでワインをインストールした後、ワインの下で私のために働いた。これにより、ベンダーと製品IDが更新され、Appleのキーボードとして表示されず、Windows専用バージョンで使用されていなかった「windows / macモードに切り替える」機能も削除されます。必要に応じて、Macファームウェアをフラッシュして以前の動作に戻すことができますが、私はこれをテストしていません。
答え2
VarmiloはUSBを正しく使用しません。避ける
他のキーボードを使ってWWWで見ることができます。間違って報告された製造元は、Apple(Varmilo VS109MおよびVarmilo VA88MがベンダーID 05acを主張している)、Cypress(サプライヤID 04b4)としてマークされています。Varmilo Z104Mが主張するように)、ROF Electronics(サプライヤーID ffff、Amilo VA87Mが主張するように)、Nordic Semiconductor(サプライヤーID 1915)Varmilo VB87Mが主張するように)、ホルテックなど
これは明らかに間違っており、深刻な問題があります。
ハードウェアデバイスがその製造元(PCI、USBなどのバス上のデバイスのリストから)をAppleとして識別し、その製品を特定のAppleキーボードで識別する場合、オペレーティングシステムがそれを処理するのは完全に合法的です。Appleのキーボードと同じです。。ベンダーID 05AC製品ID 024FはAppleアルミキーボード(アメリカ)です。
ここで問題はVA109Mです。それはキーボードではありませんか?。
FnAppleキーボードには、ほとんどのキーボードとは異なる特別で珍しいキーの意味があります。 Appleキーボードに接続されているLinuxデバイスドライバは、プライベートUSB HID「使用」を使用してAppleの特殊キーを処理する方法をhid_apple
知っています。Fn
VA109MはAppleキーボードではありません。バルミロのキーボード。 Appleのキーボードのように動作しません。 Apple特殊USB HID「使用」を表示しませんFn。ほとんどのキーボードと同様に、FnUSB経由で表示されません。別の言葉。
だからAppleキーボードのように運転してください。動作しません。
hid_apple
悪い解決策は、Linuxでドライバを無効または削除することですが、実装することも重要です。- 誤った解決策は、ドライバー
fnmode=2
のオプションを使用して変速状態hid_apple
を反転させることですFn。少なくともこれらのキーの意味をメディア/デバイス制御キーではなくファンクションキーに切り替えます。 - 正しい解決策は、VarmiloではなくベンダーIDを正しく設定する方法を知っている製造元からキーボードを購入することです。
追加読書
- フランポンデル(2020-06-17)。 udev:キーボードがAppleで誤って検出されました。。 Debian のバグ #963002.
答え3
私は私の任務の1つを完了しました。
ある日、実際のAppleキーボードをコンピュータに接続しないとしましょう。
- ファイルの作成
/etc/modprobe.d/hid_apple.conf
- 追加
options hid_apple fnmode=2
と保存 sudo update-initramfs -u
Debianディストリビューションまたはsudo mkinitcpio -P
Archディストリビューションで- 再起動
- キーボードをWindowsモードに切り替えます(この機能が利用可能な場合)。
答え4
FN + Wを3秒以上押し続けると、MACモードを終了するのに役立ちました。そしてファンクションキーはうまく機能します。この手順は、キーボードを購入した店舗のサポートマニュアルから入手したものです。