This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

USB Composite not showing data after a confirmation on sending

Hey Team,

I was playing around with the composite example, and added in my own class a  and used the mouse class to implement it while changing it to suit what i have 
orgianlly to output to EP3 and removing the subclass_boot/ setting it to be a generic device from a mouse device.

on pressing a button, i set a bunch of the 'buttons' to 1 and then organise it into the report buffer and send as like the other examples do. I get no error and it goes go through but looking at the device in test mode no data seems to trigger on.

Not sure what im missing.


Main changes:

/**
 * @brief Initializer of interface descriptor for HID mouse class.
 *
 * @param interface_number Interface number.
 */
#define APP_USBD_HID_GAMEPAD_INTERFACE_DSC(interface_number)      \
        APP_USBD_HID_INTERFACE_DSC(interface_number,            \
                                   1,                           \
                                   APP_USBD_HID_SUBCLASS_NONE ,  \
                                   APP_USBD_HID_PROTO_GENERIC )


/**
 * @brief Global definition macro of app_usbd_hid_mouse_t class.
 *
 * @param instance_name     Name of global instance.
 * @param interface_number  Unique interface number.
 * @param endpoint          Input endpoint (@ref nrf_drv_usbd_ep_t).
 * @param user_ev_handler   User event handler (optional).
 * @param subclass_boot     Subclass boot (@ref app_usbd_hid_subclass_t).
 *
 * @code
   APP_USBD_HID_MOUSE_GLOBAL_DEF(my_awesome_mouse, 0, NRF_DRV_USBD_EPIN1, 3, NULL);
 * @endcode
 */

  //static uint8_t const CONCAT_2(name,  _data)[] = fuck bcnt 

     /*typedef struct {
    size_t                size;
    app_usbd_descriptor_t type;
    uint8_t const * const p_data;
    } app_usbd_hid_subclass_desc_t; */


#define APP_USBD_HID_GAMEPAD_GLOBAL_DEF(instance_name,                                                  \
                                       interface_number,                                                \
                                       endpoint,                                                        \
                                       user_ev_handler,                                                 \
                                       subclass_boot)                                                   \
    APP_USBD_HID_GENERIC_SUBCLASS_REPORT_DESC(gamepad_desc, APP_USBD_HID_GAMEPAD_REPORT_DSC(196));      \
    static const app_usbd_hid_subclass_desc_t * gamepad_descs[] = {&gamepad_desc};                      \
    APP_USBD_HID_GAMEPAD_GLOBAL_DEF_INTERNAL(instance_name,                                             \
                                              interface_number,                                         \
                                              endpoint,                                                 \
                                              user_ev_handler,                                          \
                                              subclass_boot)


#ifdef DOXYGEN
/**
 * @brief HID mouse class instance type.
 *
 * @ref APP_USBD_CLASS_TYPEDEF
 */
typedef struct { } app_usbd_hid_gamepad_t;
#else
// other examples have the config at 0,endpoiint number
/*lint -save -e10 -e26 -e123 -e505 */
APP_USBD_CLASS_TYPEDEF(app_usbd_hid_gamepad,                      \
            APP_USBD_HID_GAMEPAD_CONFIG(0, NRF_DRV_USBD_EPIN1),   \
            APP_USBD_HID_GAMEPAD_INSTANCE_SPECIFIC_DEC,           \
            APP_USBD_HID_GAMEPAD_DATA_SPECIFIC_DEC                \
);
/*lint -restore*/
#endif
// @brief Specific class constant data for HID gamepad class.
//@brief Specific class data for HID gamepad class. 



 //###########################################
 /**
 * @brief Global HID GAMEPAD instance  AT EP1 (use to be at 3, swapped mouse and controller around)
 */
 //###########################################
APP_USBD_HID_GAMEPAD_GLOBAL_DEF(m_app_hid_gamepad,                //@param instance_name     Name of global instance.
                                APP_USBD_INTERFACE_GAMEPAD,       //@param interface_number  Unique interface number.
                                NRF_DRV_USBD_EPIN1,               //@param endpoint          Input endpoint (@ref nrf_drv_usbd_ep_t).
                                hid_gamepad_user_ev_handler,      //@param user_ev_handler   User event handler (optional).
                                APP_USBD_HID_SUBCLASS_NONE        //@param subclass_boot     Subclass boot (@ref app_usbd_hid_subclass_t).
);

APP_USBD_DUMMY_GLOBAL_DEF(m_app_gamepad_dummy, APP_USBD_INTERFACE_GAMEPAD);



Code is attached and the class is in the same folders as the other classes
5658.files.rar



Test showing on pc, no lights showup:



Serial log:

The oldest data was removed. Continue...
li:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J[1;31mLogs dropped (1)[0m

<info> app: hid_gamepad_feed_descriptors

[1;32muarart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: hid_gamepad_feed_descriptors

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 0

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 1

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 0

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 1

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 0

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 1

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 0

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 1

[1;32muart_cli:~$ [1;37m[12D[J<info> app: sending button press 0

[1;32muart_cli:~$ [1;37m[12D[J<info> app: APP_USBD_HID_USER_EVT_IN_REPORT_DONE

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m[12D[J<info> app: SENDING NEW USB DATA

[1;32muart_cli:~$ [1;37m[12D[J<info> app: transfer in progress

[1;32muart_cli:~$ [1;37m






Parents Reply Children
No Data
Related