usb_usb: Ignore error usage(0x01-03) report
This commit is contained in:
		
							parent
							
								
									6f5e8ce17e
								
							
						
					
					
						commit
						1efdd867c8
					
				
					 1 changed files with 18 additions and 9 deletions
				
			
		|  | @ -10,15 +10,24 @@ uint16_t usb_hid_time_stamp; | |||
| 
 | ||||
| void KBDReportParser::Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf) | ||||
| { | ||||
|     bool is_error = false; | ||||
|     report_keyboard_t *report = (report_keyboard_t *)buf; | ||||
| 
 | ||||
|     dprintf("KBDReport: %02X %02X", report->mods, report->reserved); | ||||
|     for (uint8_t i = 0; i < KEYBOARD_REPORT_KEYS; i++) { | ||||
|         if (IS_ERROR(report->keys[i])) { | ||||
|             is_error = true; | ||||
|         } | ||||
|         dprintf(" %02X", report->keys[i]); | ||||
|     } | ||||
|     dprint("\r\n"); | ||||
| 
 | ||||
|     // ignore error and not send report to computer
 | ||||
|     if (is_error) { | ||||
|         dprint("Error usage! \r\n"); | ||||
|         return; | ||||
|     } | ||||
| 
 | ||||
|     ::memcpy(&usb_hid_keyboard_report, buf, sizeof(report_keyboard_t)); | ||||
|     usb_hid_time_stamp = millis(); | ||||
| 
 | ||||
|     debug("KBDReport: "); | ||||
|     debug_hex(usb_hid_keyboard_report.mods); | ||||
|     debug(" --"); | ||||
|     for (uint8_t i = 0; i < 6; i++) { | ||||
|         debug(" "); | ||||
|         debug_hex(usb_hid_keyboard_report.keys[i]); | ||||
|     } | ||||
|     debug("\r\n"); | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 tmk
						tmk