This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MSP432E401Y: USB HID Gamepad Not Sending Data

Part Number: MSP432E401Y


Tool/software:

Hi E2E,

We are attempting to create a USB gamepad device using the MSP432E401Y LaunchPad.

While there is no dedicated gamepad example in the SDK, we found usbdhidgamepad.c/h in the MSP432E4 SimpleLink SDK and are trying to use them. We’ve modified the usb_hid_sensor_device_MSP_EXP432E401Y_tirtos_ccs example as follows:

  • Replaced the sensor driver files with usbdhidgamepad.c/h

  • Replaced the sensor init and sendReport functions with those from the gamepad driver

  • Modified sensorTaskFxn to populate the tGamePadReport structure, including dummy/incrementing values for X/Y/Z axes and button

  • Updated .syscfg to:

    • Use the gamepad HID report descriptor (g_pui8GameReportDescriptor)

    • Set the descriptor size to 46

After flashing the project to the LaunchPad, the device is recognized by the WebHID Explorer as a gamepad with this descriptor:

productName: Gamepad Example
vendorId:    0x2047 (8263) Texas Instruments Incorporated (MSP430 Group) 
productId:   0x0100 (256)
opened:      true
collections[0]
  Usage: 0001:0005 (Generic Desktop > Gamepad)
  Input reports: 0x01
Input report 0x01
  8 bits (bits 0 to 7)
    Data,Var,Abs
    Usage: 0001:0030 (Generic Desktop > X)
    Logical bounds: -127 to 127
  8 bits (bits 8 to 15)
    Data,Var,Abs
    Usage: 0001:0031 (Generic Desktop > Y)
    Logical bounds: -127 to 127
  8 bits (bits 16 to 23)
    Data,Var,Abs
    Usage: 0001:0032 (Generic Desktop > Z)
    Logical bounds: -127 to 127
  8 bits (bits 24 to 31)
    Data,Var,Abs
    Usage: 0009:0001 (Button Button 1)
    Logical bounds: 0 to 1

However, no input data appears to be sent to the host. The gamepad is visible, but values stay at 0, and no updates are seen—unlike the sensor example, which starts sending HID reports immediately after flashing.

Could someone from the team please take a look at the project (attached) and let us know:

  • What else needs to be done to get the default gamepad driver to send HID input reports?

  • Are there any required steps to trigger/report the data over USB that differ from the sensor example?

We’d appreciate any guidance or recommendations to get this working, so we can move on to building our custom gamepad logic.

Thanks in advance!

usb_hid_sensor_device_MSP_EXP432E401Y_tirtos_ccs.zip