Varmilo는 USB를 올바르게 사용하지 않습니다. 피하다.

Varmilo는 USB를 올바르게 사용하지 않습니다. 피하다.

최근에 하나 샀어요아밀로 VA109M기계식 키보드. Windows에서는 잘 작동하지만 전용 수정자 키를 누르고 있는지 여부에 관계없이 기능 키가 항상 미디어 바로 가기를 활성화하는 것처럼 보이기 F1때문에 Ubuntu 설치를 혼동하는 것 같습니다 . 예를 들어, 이 버튼만 누르면 시스템 볼륨이 커지고, +를 누르면 시스템 볼륨도 커지게 됩니다 . 일반 키처럼 작동 하도록 할 수 있는 방법은 없습니다 . 저는 프로그래밍을 많이 하고 많은 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 드라이버가 활성화됩니다.

해결책:

답변 섹션으로 이동하세요. 이 문제를 해결하기 위한 두 가지 큰 옵션이 있습니다. 두 가지를 모두 테스트한 결과 두 번째 옵션이 더 나은 것으로 나타났습니다.

  1. hid_apple을 기능 키를 정상적으로 처리하는 모드로 변경하면 기본적으로 문제가 해결될 것이라고 믿습니다. 이 작업을 수행하는 방법에 대한 지침은 여기에서 찾을 수 있으며 Ubuntu에서도 작동합니다.https://wiki.archlinux.org/index.php/Apple_Keyboard#Function_keys_do_not_work.

  2. 제품 및 공급업체 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 키보드로 식별하는 경우 운영 체제에서 이를 처리하는 것은 완전히 합법적입니다.애플 키보드랑 똑같네요. 공급업체 ID 05AC 제품 ID 024F는 Apple 알루미늄 키보드(미국)입니다.

여기서 문제는 VA109M입니다.그거 키보드 아닌가요?.

FnApple 키보드에는 대부분의 키보드와는 다른 특별하고 특이한 키 의미가 있습니다 . Apple 키보드에 연결되는 Linux 장치 드라이버는 개인 USB HID "사용"을 사용하여 Apple의 특수 키를 처리하는 방법을 hid_apple알고 있습니다 .Fn

VA109M은 Apple 키보드가 아닙니다. 바르밀로 키보드 입니다. 애플 키보드처럼 작동하지 않습니다. Apple 특수 USB HID "사용"을 표시하지 않습니다 Fn. 대부분의 키보드와 마찬가지로 FnUSB를 통해 표시 되지 않습니다.별말씀을요.

그러니 Apple 키보드처럼 운전하세요.작동하지 않습니다.

  • hid_apple좋지 않은 해결책은 Linux에서 드라이버를 비활성화하거나 제거하는 것이지만 구현하는 것도 중요합니다.
  • 잘못된 해결 방법은 운전자 fnmode=2의 옵션을 사용하여 변속 상태 hid_apple를 반전시키는 것 입니다 Fn. 최소한 이러한 키의 의미를 미디어/장치 제어 키가 아닌 기능 키로 전환합니다.
  • 올바른 해결 방법은 Varmilo가 아닌 공급업체 ID를 올바르게 설정하는 방법을 알고 있는 제조업체에서 키보드를 구입하는 것입니다.

추가 읽기

답변3

나는 내 임무 중 하나를 완료했습니다.

어느 날 실제 Apple 키보드를 컴퓨터에 연결하지 않는다고 가정해 보겠습니다.

  1. 파일 만들기/etc/modprobe.d/hid_apple.conf
  2. 추가 options hid_apple fnmode=2및 저장
  3. sudo update-initramfs -uDebian 배포판 또는 sudo mkinitcpio -PArch 배포판에서
  4. 재시작
  5. 키보드를 Windows 모드로 전환합니다(이 기능을 사용할 수 있는 경우).

답변4

FN + W를 3초 이상 누르고 있으면 MAC 모드를 종료하는 데 도움이 되었습니다. 그리고 기능키는 잘 작동합니다. 이 지침은 키보드를 구입한 매장의 지원 설명서에서 가져온 것입니다.

관련 정보