Virtual device is not recognized as HID device

I have a virtual device, which is redirected to Mac from Windows OS. However, In MacOS, it does not recognized as a HID device even it has only one HID interface.

The device name is Virtual Fido, it more likes to be identified as an audio device. Could any one help check? Thanks.

2024-01-31 16:37:03.102014+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCallback: controller <private> (S1F0) usbServiceArray <private>(count 1) options 0x00000000
2024-01-31 16:37:03.102020+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCallback: [0] <private>
2024-01-31 16:37:03.102023+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCall: controller <private> (S1F0) usbService <private> (Virtual FIDO) options 0x00000000
2024-01-31 16:37:03.102035+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::getOrCreateLegacyControllerGated: located existing AppleUSBController@00000000
2024-01-31 16:37:03.102037+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCallGated: IOUSBHostDevice <private> (Virtual FIDO)
2024-01-31 16:37:03.102046+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::addDeviceToUsbPlane:
2024-01-31 16:37:03.102288+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCall: usbServiceCallbackGated completed with 0x00000000 and service <private>
2024-01-31 16:37:03.102302+0800 0x1df      Error       0x0                  0      0    kernel: (IOUSBFamily) AppleUSBLegacyRoot@(null): AppleUSBLegacyRoot::usbServiceCall: registering Virtual FIDO@00810000 (<private>) for matching
2024-01-31 16:37:03.104499+0800 0x247c     Info        0x0                  120    0    kernelmanagerd: Received MIG message
2024-01-31 16:37:03.105412+0800 0x247c     Info        0x0                  120    0    kernelmanagerd: Received MIG message
2024-01-31 16:37:03.105453+0800 0x284b     Default     0x0                  120    0    kernelmanagerd: Received kext load notification: com.apple.iokit.IOAudioFamily
2024-01-31 16:37:03.105460+0800 0x284b     Default     0x0                  120    0    kernelmanagerd: Received kext load notification: com.apple.driver.AppleUSBAudio
2024-01-31 16:37:03.106066+0800 0x11d6     Default     0x0                  643    0    icdd: [com.apple.imagecapture:icdd]            Device DB | Creating local devices
2024-01-31 16:37:03.106170+0800 0x512      Info        0x0                  244    0    com.apple.ifdreader: [com.apple.CryptoTokenKit:smartcard] new device skipped: 0x0e0f/0x0123 810000 (entryId=4294969016)
2024-01-31 16:37:03.106551+0800 0x11d6     Default     0x0                  0      0    kernel: (Sandbox) Sandbox: icdd(643) allow file-read-data /Library/Image Capture/Devices
2024-01-31 16:37:03.106602+0800 0x11d6     Default     0x0                  643    0    icdd: [com.apple.imagecapture:icdd]            Device DB | Creating bonjour devices
2024-01-31 16:37:03.106968+0800 0x11d6     Default     0x0                  643    0    icdd: [com.apple.imagecapture:icdd]       =>  [Matching] | [ 0x00,0x00,0x00 ]
2024-01-31 16:37:03.106989+0800 0x11d6     Default     0x0                  643    0    icdd: [com.apple.imagecapture:icdd]                Added | 0x10000011 - [USB][        Virtual FIDO ] ( 0, 0, 0) @ 0x810000 |
2024-01-31 16:37:03.107041+0800 0x11d6     Default     0x0                  643    0    icdd: [com.apple.imagecapture:icdd]           Autolaunch | 00000000-0000-0000-0031-323334353637 => (null)
2024-01-31 16:37:03.335288+0800 0x276f     Default     0x0                  424    0    trustd: [com.apple.securityd:pinningQA] could not enable test hierarchy: no UAT pinning preferences set
    | |   |         +-o VMware Virtual USB Hub@00800000  <class IOUSBHostDevice, id 0x1000003de, registered, matched, active, busy 0 (35 ms), retain 38>
    | |   |           +-o AppleUSBHostLegacyClient  <class AppleUSBHostLegacyClient, id 0x1000003e1, !registered, !matched, active, busy 0, retain 8>
    | |   |           +-o AppleUSB20Hub@00800000  <class AppleUSB20Hub, id 0x1000003e4, registered, matched, active, busy 0 (33 ms), retain 35>
    | |   |           | +-o AppleUSB20HubPort@00810000  <class AppleUSB20HubPort, id 0x1000003e7, registered, matched, active, busy 0 (33 ms), retain 16>
    | |   |           | | +-o Virtual FIDO@00810000  <class IOUSBHostDevice, id 0x1000006b8, registered, matched, active, busy 0 (3 ms), retain 20>
    | |   |           | |   +-o AppleUSBHostLegacyClient  <class AppleUSBHostLegacyClient, id 0x1000006bb, !registered, !matched, active, busy 0, retain 8>
    | |   |           | |   +-o AppleUSBHostCompositeDevice  <class AppleUSBHostCompositeDevice, id 0x1000006bf, !registered, !matched, active, busy 0, retain 4>
    | |   |           | +-o AppleUSB20HubPort@00820000  <class AppleUSB20HubPort, id 0x1000003e8, registered, matched, active, busy 0 (0 ms), retain 12>
    | |   |           | +-o AppleUSB20HubPort@00830000  <class AppleUSB20HubPort, id 0x1000003e9, registered, matched, active, busy 0 (0 ms), retain 12>

Replies

    Port Information:   0x0018
    Number Of Endpoints (includes EP0):   
    Device Descriptor   
    Current configuration:   0 (unconfigured)
    Configuration Descriptor (current config): ......................   "String 4"
        Length (and contents):   41
        Number of Interfaces:   1
        Configuration Value:   0
        Attributes:   0xC0 (self-powered)
        MaxPower:   0 mA
        Interface #0 - HID ..............................................   "Default Interface"
            Alternate Setting   0
            Number of Endpoints   2
            Interface Class:   3   (HID)
            Interface Subclass;   0
            Interface Protocol:   0
            HID Descriptor   
                Descriptor Version Number:   0x0101
                Country Code:   0
                Descriptor Count:   1
                Descriptor 1   
                    Type:   0x22  (Report Descriptor)
                    Length (and contents):   30
                    Parsed Report Descriptor:   
                          Usage Page    (61904) 
                          Usage 1 (0x1)    
                              Collection (Application)    
                                Usage 32 (0x20)    
                                Logical Minimum.........     
                                Logical Maximum.........    (-1)  
                                Report Size.............    (8)  
                                Report Count............    (64)  
                                Input...................   (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield) 
                                Usage 33 (0x21)    
                                Logical Minimum.........     
                                Logical Maximum.........    (-1)  
                                Report Size.............    (8)  
                                Report Count............    (64)  
                                Output..................   (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield) 
                              End Collection     
            Endpoint 0x84 - Interrupt Input   
                Address:   0x84  (IN)
                Attributes:   0x03  (Interrupt)
                Max Packet Size:   64
                Polling Interval:   2 ms
            Endpoint 0x04 - Interrupt Output   
                Address:   0x04  (OUT)
                Attributes:   0x03  (Interrupt)
                Max Packet Size:   64
                Polling Interval:   2 ms

``` This is the descriptor of above deivce, configuration is not set.