Some HID devices are not enumerated on M2 Mac

On my Apple Silicon MacMini, hidutil list does not list the connected Atmel-ICE (a hardware debugger from Microchip). On my Intel Mac, it does. And both run Sonoma.

It is also enumerated as a HID device on the Linux and the Windows virtual machine running on the MacMini. So, this looks like a bug to me.

Answered by DTS Engineer in 822525022

On my Apple Silicon MacMini, hidutil list does not list the connected Atmel-ICE (a hardware debugger from Microchip). On my Intel Mac, it does. And both run Sonoma.

The main reason an accessory would be "hidden" from hidutil like this is a driver of some sort claimed the device, "hiding" it from the HID system. The next step for investigating something kit this is to use IORegistryExplorer.app to walk the IORegistry, allowing you to see what's actually happened in the driver stack. This forum post has direction on where you can download it and some basic guidance on using it.

It is also enumerated as a HID device on the Linux and the Windows virtual machine running on the MacMini. So, this looks like a bug to me.

Possibly. It all depends on what's actually attaching to it.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware

Accepted Answer

On my Apple Silicon MacMini, hidutil list does not list the connected Atmel-ICE (a hardware debugger from Microchip). On my Intel Mac, it does. And both run Sonoma.

The main reason an accessory would be "hidden" from hidutil like this is a driver of some sort claimed the device, "hiding" it from the HID system. The next step for investigating something kit this is to use IORegistryExplorer.app to walk the IORegistry, allowing you to see what's actually happened in the driver stack. This forum post has direction on where you can download it and some basic guidance on using it.

It is also enumerated as a HID device on the Linux and the Windows virtual machine running on the MacMini. So, this looks like a bug to me.

Possibly. It all depends on what's actually attaching to it.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware

Hi Kevin,

Thanks! That helped. Comparing the output of IORegistryExplorer.app of my current installation with a fresh one showed that in my current installation the entry

UsbExclusiveOwner String AppleUserUSBHostHIDDevice

was missing. I then tried to disable and enable Login Items & Extensions. At some point, I was successful, but unfortunately cannot say, what the culprit was. In any case, now it works. So, your suspicion was right!

Thanks, Bernhard

Thanks! That helped. Comparing the output of IORegistryExplorer.app of my current installation with a fresh one showed that in my current installation the entry

UsbExclusiveOwner String AppleUserUSBHostHIDDevice

was missing.

"AppleUserUSBHostHIDDevice" is the generic Apple USB HID DEXT so, yes, this would have indicated that "something else" hand claimed that particular device. For future reference, the next thing to look at here would have been to see object were attached underneath that object. In the working case, it would have been "AppleUserUSBHostHIDDevice" and in the failing case it would have been "something else", which would probably pointed you toward the real issue. Notably:

I then tried to disable and enable Login Items & Extensions.

USB devices can be opened from user space, which will detach the HID driver. However, those user client connections will also be visible in the IORegistry and the properties of the connection include the property "IOUserClientCreator", which list the pid and process name of the user space process.

__
Kevin Elliott
DTS Engineer, CoreOS/Hardware

Some HID devices are not enumerated on M2 Mac
 
 
Q