I am using version from master at PaulStoffregen/USBHost_t36 on a Teensy 4.1 and all works OK with PS4 connected via wired USB connection (great work btw). This is a branded PS4 controller I inherited from my son who now has a PS5.
All OK except D-PAD buttons which are not changing any bits in call to joystick1.getButtons(). I discovered them in axis[9] so have mapped these to my PS4 buttons object using a similar schema to that used in the Bluetooth HID joystick parser:
// N N/E E S/E S S/W W N/W
static const uint32_t dpad_to_buttons[] = {0x10000, 0x30000, 0x20000, 0x60000, 0x40000, 0xC0000, 0x80000, 0x90000};
if (dpadAxis < (uint16_t)PS4Button::DpadOff)
_buttons |= dpad_to_buttons[dpadAxis];
I am using version from master at PaulStoffregen/USBHost_t36 on a Teensy 4.1 and all works OK with PS4 connected via wired USB connection (great work btw). This is a branded PS4 controller I inherited from my son who now has a PS5. All OK except D-PAD buttons which are not changing any bits in call to joystick1.getButtons(). I discovered them in axis[9] so have mapped these to my PS4 buttons object using a similar schema to that used in the Bluetooth HID joystick parser: // N N/E E S/E S S/W W N/W static const uint32_t dpad_to_buttons[] = {0x10000, 0x30000, 0x20000, 0x60000, 0x40000, 0xC0000, 0x80000, 0x90000}; if (dpadAxis < (uint16_t)PS4Button::DpadOff) _buttons |= dpad_to_buttons[dpadAxis];