MicroPythonBLEHID icon indicating copy to clipboard operation
MicroPythonBLEHID copied to clipboard

OSX/Debian: Device updates aren't processed by central

Open ilyamordasov opened this issue 3 years ago • 9 comments

I attached the buttons, executed async mouse example, connected to Mouse device (it is exactly detected as mouse device), so I can see

Notify with report:  (0, 0, 127, 0)
Notify with report:  (0, 0, 0, 0)
Notify with report:  (0, 0, 127, 0)
Notify with report:  (0, 0, 0, 0)
Notify with report:  (0, 0, 127, 0)

when buttons are not pressed and some opposite values when I press any button. But mouse doesn't move, doesn't call menu/submenu, nothing. Could you explain what will happen, and about what this example?

ilyamordasov avatar Jul 16 '22 16:07 ilyamordasov

Are you able to test with something other than OSX?

I'm asking because there seem to be issues with Apple which are probably related to 'faking' the device information (manufacturer, version, etc).

Heerkog avatar Jul 17 '22 08:07 Heerkog

Yes, with android works like a charm

UPD: Just tried with ubuntu 20.04, it's not working too, seems the issue is not only in OSX

ilyamordasov avatar Jul 17 '22 08:07 ilyamordasov

You could try finding the (i) device information, (ii) revision information, and (iii) php information used by an Apple approved device and using the provided functions to set these values after line 37 of the async example and see if it then works.

If that doesn't work, you might need to also find (iv) the HID input report of that same device and use that. Note that changing a HID input report requires changing the code in several places, some of which is not easy to understand.

Heerkog avatar Jul 17 '22 08:07 Heerkog

A few years ago I was implementing usb hid device with stm32, will look at its descriptor, but do not remember did it work with OSX or not, but exactly worked with one of them ubuntu or osx.

ilyamordasov avatar Jul 17 '22 08:07 ilyamordasov

Please check this thread for Ubuntu. I feel the OSX and Ubuntu issues are very related and probably lead back to issues with the pnp and device information not leading the OS to the correct/any drivers.

In case you find working device and pnp information, please do let me know so I can update the examples!

Heerkog avatar Jul 17 '22 09:07 Heerkog

Ok

ilyamordasov avatar Jul 17 '22 09:07 ilyamordasov