Mouse WORKS!11111 ...but only in boot mode, so no scroll wheel :(

USG_1.0
Robert Fisk 8 years ago
parent b7298c5f65
commit 9918cfcb19

@ -614,7 +614,7 @@ USBH_StatusTypeDef USBH_HID_SetProtocol(USBH_HandleTypeDef *phost,
phost->Control.setup.b.bRequest = USB_HID_SET_PROTOCOL;
phost->Control.setup.b.wValue.w = protocol != 0 ? 0 : 1;
phost->Control.setup.b.wValue.w = protocol == 0 ? 0 : 1;
phost->Control.setup.b.wIndex.w = 0;
phost->Control.setup.b.wLength.w = 0;

@ -17,8 +17,9 @@
#define HID_MOUSE_DATA_LEN 4
#define HID_KEYBOARD_DATA_LEN 0
#define HID_REPORT_DATA_LEN 8
#define HID_MOUSE_DATA_LEN 3
#define HID_KEYBOARD_DATA_LEN 0
extern USBH_HandleTypeDef hUsbHostFS; //Hard-link ourselves to usb_host.c
@ -32,7 +33,7 @@ InterfaceCommandClassTypeDef Downstream_HID_ApproveConnectedDevice(void)
if (HID_Handle->Protocol == HID_MOUSE_BOOT_CODE)
{
if (HID_Handle->length == 8)
if ((HID_Handle->length >= HID_MOUSE_DATA_LEN) && (HID_Handle->length <= HID_REPORT_DATA_LEN))
{
return COMMAND_CLASS_HID_MOUSE;
}

@ -17,8 +17,8 @@
#define HID_REPORT_DATA_LEN 8
#define HID_MOUSE_DATA_LEN 4
#define HID_MOUSE_DATA_LEN 3
#define HID_KEYBOARD_DATA_LEN 0
UpstreamPacketTypeDef* UpstreamHidPacket = NULL;
@ -138,7 +138,7 @@ void Upstream_HID_GetNextReportReceiveCallback(UpstreamPacketTypeDef* receivedPa
return;
}
for (i = dataLength; i > HID_REPORT_DATA_LEN; i++)
for (i = dataLength; i < HID_REPORT_DATA_LEN; i++)
{
receivedPacket->Data[i] = 0; //Zero out unused bytes before we send report upstream
}

Loading…
Cancel
Save