Open FFBoard
Open source force feedback firmware
hid_device.c File Reference

Go to the source code of this file.

Classes

struct  hidd_interface_t
 

Functions

static TU_ATTR_ALWAYS_INLINE uint8_t get_index_by_itfnum (uint8_t itf_num)
 
TU_ATTR_WEAK void tud_hid_set_protocol_cb (uint8_t instance, uint8_t protocol)
 
TU_ATTR_WEAK bool tud_hid_set_idle_cb (uint8_t instance, uint8_t idle_rate)
 
TU_ATTR_WEAK void tud_hid_report_complete_cb (uint8_t instance, uint8_t const *report, uint16_t len)
 
TU_ATTR_WEAK void tud_hid_report_failed_cb (uint8_t instance, hid_report_type_t report_type, uint8_t const *report, uint16_t xferred_bytes)
 
bool tud_hid_n_ready (uint8_t instance)
 
bool tud_hid_n_report (uint8_t instance, uint8_t report_id, void const *report, uint16_t len)
 
uint8_t tud_hid_n_interface_protocol (uint8_t instance)
 
uint8_t tud_hid_n_get_protocol (uint8_t instance)
 
bool tud_hid_n_keyboard_report (uint8_t instance, uint8_t report_id, uint8_t modifier, const uint8_t keycode[6])
 
bool tud_hid_n_mouse_report (uint8_t instance, uint8_t report_id, uint8_t buttons, int8_t x, int8_t y, int8_t vertical, int8_t horizontal)
 
bool tud_hid_n_abs_mouse_report (uint8_t instance, uint8_t report_id, uint8_t buttons, int16_t x, int16_t y, int8_t vertical, int8_t horizontal)
 
bool tud_hid_n_gamepad_report (uint8_t instance, uint8_t report_id, int8_t x, int8_t y, int8_t z, int8_t rz, int8_t rx, int8_t ry, uint8_t hat, uint32_t buttons)
 
void hidd_init (void)
 
bool hidd_deinit (void)
 
void hidd_reset (uint8_t rhport)
 
uint16_t hidd_open (uint8_t rhport, tusb_desc_interface_t const *desc_itf, uint16_t max_len)
 
bool hidd_control_xfer_cb (uint8_t rhport, uint8_t stage, tusb_control_request_t const *request)
 
bool hidd_xfer_cb (uint8_t rhport, uint8_t ep_addr, xfer_result_t result, uint32_t xferred_bytes)
 

Variables

CFG_TUD_MEM_SECTION tu_static hidd_interface_t _hidd_itf [CFG_TUD_HID]
 

Function Documentation

◆ get_index_by_itfnum()

static TU_ATTR_ALWAYS_INLINE uint8_t get_index_by_itfnum ( uint8_t  itf_num)
inlinestatic

Definition at line 64 of file hid_device.c.

◆ hidd_control_xfer_cb()

bool hidd_control_xfer_cb ( uint8_t  rhport,
uint8_t  stage,
tusb_control_request_t const *  request 
)

Definition at line 262 of file hid_device.c.

◆ hidd_deinit()

bool hidd_deinit ( void  )

Definition at line 199 of file hid_device.c.

◆ hidd_init()

void hidd_init ( void  )

Definition at line 195 of file hid_device.c.

◆ hidd_open()

uint16_t hidd_open ( uint8_t  rhport,
tusb_desc_interface_t const *  desc_itf,
uint16_t  max_len 
)

Definition at line 208 of file hid_device.c.

◆ hidd_reset()

void hidd_reset ( uint8_t  rhport)

Definition at line 203 of file hid_device.c.

◆ hidd_xfer_cb()

bool hidd_xfer_cb ( uint8_t  rhport,
uint8_t  ep_addr,
xfer_result_t  result,
uint32_t  xferred_bytes 
)

Definition at line 373 of file hid_device.c.

◆ tud_hid_n_abs_mouse_report()

bool tud_hid_n_abs_mouse_report ( uint8_t  instance,
uint8_t  report_id,
uint8_t  buttons,
int16_t  x,
int16_t  y,
int8_t  vertical,
int8_t  horizontal 
)

Definition at line 164 of file hid_device.c.

◆ tud_hid_n_gamepad_report()

bool tud_hid_n_gamepad_report ( uint8_t  instance,
uint8_t  report_id,
int8_t  x,
int8_t  y,
int8_t  z,
int8_t  rz,
int8_t  rx,
int8_t  ry,
uint8_t  hat,
uint32_t  buttons 
)

Definition at line 176 of file hid_device.c.

◆ tud_hid_n_get_protocol()

uint8_t tud_hid_n_get_protocol ( uint8_t  instance)

Definition at line 133 of file hid_device.c.

◆ tud_hid_n_interface_protocol()

uint8_t tud_hid_n_interface_protocol ( uint8_t  instance)

Definition at line 129 of file hid_device.c.

◆ tud_hid_n_keyboard_report()

bool tud_hid_n_keyboard_report ( uint8_t  instance,
uint8_t  report_id,
uint8_t  modifier,
const uint8_t  keycode[6] 
)

Definition at line 137 of file hid_device.c.

◆ tud_hid_n_mouse_report()

bool tud_hid_n_mouse_report ( uint8_t  instance,
uint8_t  report_id,
uint8_t  buttons,
int8_t  x,
int8_t  y,
int8_t  vertical,
int8_t  horizontal 
)

Definition at line 151 of file hid_device.c.

◆ tud_hid_n_ready()

bool tud_hid_n_ready ( uint8_t  instance)

Definition at line 104 of file hid_device.c.

◆ tud_hid_n_report()

bool tud_hid_n_report ( uint8_t  instance,
uint8_t  report_id,
void const *  report,
uint16_t  len 
)

Definition at line 110 of file hid_device.c.

◆ tud_hid_report_complete_cb()

TU_ATTR_WEAK void tud_hid_report_complete_cb ( uint8_t  instance,
uint8_t const *  report,
uint16_t  len 
)

Definition at line 87 of file hid_device.c.

◆ tud_hid_report_failed_cb()

TU_ATTR_WEAK void tud_hid_report_failed_cb ( uint8_t  instance,
hid_report_type_t  report_type,
uint8_t const *  report,
uint16_t  xferred_bytes 
)

Definition at line 94 of file hid_device.c.

◆ tud_hid_set_idle_cb()

TU_ATTR_WEAK bool tud_hid_set_idle_cb ( uint8_t  instance,
uint8_t  idle_rate 
)

Definition at line 81 of file hid_device.c.

◆ tud_hid_set_protocol_cb()

TU_ATTR_WEAK void tud_hid_set_protocol_cb ( uint8_t  instance,
uint8_t  protocol 
)

Definition at line 76 of file hid_device.c.

Variable Documentation

◆ _hidd_itf

CFG_TUD_MEM_SECTION tu_static hidd_interface_t _hidd_itf[CFG_TUD_HID]

Definition at line 61 of file hid_device.c.