You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"""boot.py"""importusb_hid# fmt: off# This is only one example of a gamepad descriptor, and may not suit your needs.GAMEPAD_REPORT_DESCRIPTOR=bytes((
0x05, 0x01, # Usage Page (Generic Desktop Ctrls)0x09, 0x05, # Usage (Game Pad)0xA1, 0x01, # Collection (Application)0x85, 0x04, # Report ID (will be replaced at runtime)0x05, 0x09, # Usage Page (Button)0x19, 0x01, # Usage Minimum (Button 1)0x29, 0x10, # Usage Maximum (Button 16)0x15, 0x00, # Logical Minimum (0)0x25, 0x01, # Logical Maximum (1)0x75, 0x01, # Report Size (1)0x95, 0x10, # Report Count (16)0x81, 0x02, # Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)0x05, 0x01, # Usage Page (Generic Desktop Ctrls)0x15, 0x81, # Logical Minimum (-127)0x25, 0x7F, # Logical Maximum (127)0x09, 0x30, # Usage (X)0x09, 0x31, # Usage (Y)0x09, 0x32, # Usage (Z)0x09, 0x35, # Usage (Rz)0x75, 0x08, # Report Size (8)0x95, 0x04, # Report Count (4)0x81, 0x02, # Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position)0xC0, # End Collection
))
# fmt: ongamepad=usb_hid.Device(
report_descriptor=GAMEPAD_REPORT_DESCRIPTOR,
usage_page=0x01, # Generic Desktop Controlusage=0x05, # Gamepadreport_ids=(4,),
in_report_lengths=(6,), # This gamepad sends 6 bytes in its report.out_report_lengths=(0,), # It does not receive any reports.
)
usb_hid.enable(
(
usb_hid.Device.KEYBOARD,
usb_hid.Device.MOUSE,
usb_hid.Device.CONSUMER_CONTROL,
gamepad,
)
)
Behavior
On the Metro M4 I get the following error in boot_out.txt:
Traceback (most recent call last):
File "boot.py", line 38, in <module>
TypeError: '' object isn't subscriptable
On the QT-PY boot_out.txt is empty, and I get this message in the serial console:
You are in safe mode because:
CircuitPython core code crashed hard. Whoops!
Crash into the HardFault_Handler.
Please file an issue with the contents of your CIRCUITPY drive at
https://github.com/adafruit/circuitpython/issues
Description
I am unable to create custom USB HID devices after the API change from 7.0.0 alpha.x > beta.0.
I was trying to update my joystick library to use the updated API, but when I couldn't get that to work I tried just updating the gamepad example from the learn guide, ultimately with the same results. The code in question ran perfectly in the 7.0.0 alphas 3 through 6.
I'm not sure if this is a bug, or if I'm passing values incorrectly in the usb_hid.Device() call.
Additional information
No response
The text was updated successfully, but these errors were encountered:
CircuitPython version
Code/REPL
Behavior
On the Metro M4 I get the following error in
boot_out.txt
:On the QT-PY
boot_out.txt
is empty, and I get this message in the serial console:Description
I am unable to create custom USB HID devices after the API change from 7.0.0 alpha.x > beta.0.
I was trying to update my joystick library to use the updated API, but when I couldn't get that to work I tried just updating the gamepad example from the learn guide, ultimately with the same results. The code in question ran perfectly in the 7.0.0 alphas 3 through 6.
I'm not sure if this is a bug, or if I'm passing values incorrectly in the
usb_hid.Device()
call.Additional information
No response
The text was updated successfully, but these errors were encountered: