f7b7ce84e7 
								
							
								 
							
						 
						
							
							
								
								Initial implementation of mouse bot detection  
							
							
 
							
						 
						
							8 years ago  
				
					
						
							
							
								 
						
							
							
								fa00fd95dd 
								
							
								 
							
						 
						
							
							
								
								HID BotDetect functionality debugged and working:  
							
							... 
							
							
 
							
							- Implement advanced LED flash support
 - Tweak HAL_SPI_TransmitReceive to tolerate a longer SysTick interrupt
 - Tune KEYBOARD_BOTDETECT parameters
 - L-shift and R-shift are now high-speed alphanumeric keys 
							
						 
						
							8 years ago  
				
					
						
							
							
								 
						
							
							
								cf1d5da8e8 
								
							
								 
							
						 
						
							
							
								
								Build options complete & tested:  
							
							... 
							
							
 
							
							- Implement SCSI WP flag in mode parameter header
 - Refactor #ifdef names
 - #ifdef out more HID code 
							
						 
						
							8 years ago  
				
					
						
							
							
								 
						
							
							
								7cf9b67d1f 
								
							
								 
							
						 
						
							
							
								
								Implemented read-only option (Downstream only)  
							
							
 
							
						 
						
							8 years ago  
				
					
						
							
							
								 
						
							
							
								53fea530aa 
								
							
								 
							
						 
						
							
							
								
								Implemented optional build for mass storage, keyboard, and mouse  
							
							... 
							
							
 
							
							features. 
							
						 
						
							8 years ago  
				
					
						
							
							
								 
						
							
							
								a287c39b84 
								
							
								 
							
						 
						
							
							
								
								Fix for occasional freakouts on mass storage writes.  
							
							... 
							
							
 
							
							Upstream's edge-detect interrupt that starts SPI transmission was not
firing. Sometimes. On some boards only. The cause was Downstream not
allowing enough time between edges for Upstream to catch the signal.
Also misc code tidyups. 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								41c0624459 
								
							
								 
							
						 
						
							
							
								
								Startup LED flash is now asynchronous.  
							
							... 
							
							
 
							
							Not only a faster startup process, but also catches some HID devices
that only work if initialised within 500ms of powerup. 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								42d6030e7b 
								
							
								 
							
						 
						
							
							
								
								Refactor and improve HID report item parsing  
							
							
 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								a98af92c23 
								
							
								 
							
						 
						
							
							
								
								Correctly parse HID report descriptor items with unusual lengths.  
							
							... 
							
							
 
							
							Thanks Logitech. 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								c68151698b 
								
							
								 
							
						 
						
							
							
								
								Bugfixes for keyboard support: works!!!  
							
							
 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								bc2bf01cbe 
								
							
								 
							
						 
						
							
							
								
								Keyboard support implemented, but not tested  
							
							
 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								9b2b8972a4 
								
							
								 
							
						 
						
							
							
								
								Incomplete and untested implementation of keyboard support  
							
							
 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								8aec6a6ca3 
								
							
								 
							
						 
						
							
							
								
								Fix for occasional problem when attaching mouse after powerup.  
							
							... 
							
							
 
							
							It turned out we were getting a "device disconnected" interrupt while
waiting for the port to enable following reset. Simply ignoring the
disconnect interrupt allows everything to work! WTF... 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								85f965eaa0 
								
							
								 
							
						 
						
							
							
								
								Fix for occasional timeout on writes...  
							
							... 
							
							
 
							
							...Downstream was not always changing state correctly after closely
spaced interrupts.
Also improve flash-write-lockout function to avoid dependency on
optimisation level. 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								637f67fc14 
								
							
								 
							
						 
						
							
							
								
								Implement dynamic crystal frequency selection based on board revision.  
							
							... 
							
							
 
							
							Also fixed minor issue in hardware revision-detection function. 
							
						 
						
							9 years ago  
				
					
						
							
							
								 
						
							
							
								f9b7416df0 
								
							
								 
							
						 
						
							
							
								
								Sleep instead of busy-wait, approx 50% power reduction!  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								6d52d3b8fc 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'HID_parse_error_check' into USG_1.0  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								bca451bf05 
								
							
								 
							
						 
						
							
							
								
								Improve HID parser error checking  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								b4326d8ffa 
								
							
								 
							
						 
						
							
							
								
								Improve handling of >8bit input values  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								a64b89175e 
								
							
								 
							
						 
						
							
							
								
								Improved HID report parser compatibility  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								650d10f22c 
								
							
								 
							
						 
						
							
							
								
								Support disconnect/reconnect of attached HID device  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								18e811b4ee 
								
							
								 
							
						 
						
							
							
								
								HID report parser now handles collections.  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								c78f5b1150 
								
							
								 
							
						 
						
							
							
								
								HID parser and wheel support works!  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								fd14db8ccb 
								
							
								 
							
						 
						
							
							
								
								Implemented HID report parser. Untested!  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								6f944a33db 
								
							
								 
							
						 
						
							
							
								
								Fixed click-drag issue.  
							
							... 
							
							
 
							
							TODO: find out why 8-byte device interrupt endpoints totally fail.
WTF??? 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								a5f4e52e02 
								
							
								 
							
						 
						
							
							
								
								More work on enumerating cheap POS mice, arrrrgh.  
							
							... 
							
							
 
							
							Added timeout checks and retry functionality to control transaction
state machine. But some times the device just won't talk, so we flash
the fault LED slowly to give the user some clue about what happened. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								b80b99d9ec 
								
							
								 
							
						 
						
							
							
								
								Fixed enumeration issues with low-speed devices:  
							
							... 
							
							
 
							
							- Unexpected second port-connected interrupt on cold boot with low-speed
device connected.
- Retry on failure to get device descriptor. (We still fail after three
attempts, but that is better than failing after the first one!)
Also changed eclipse project to use external builder. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								9918cfcb19 
								
							
								 
							
						 
						
							
							
								
								Mouse WORKS!11111 ...but only in boot mode, so no scroll wheel :(  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								b7298c5f65 
								
							
								 
							
						 
						
							
							
								
								Restructure & bugfix Upstream HID. Still some issue with Downstream...  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								4d9e26b6ef 
								
							
								 
							
						 
						
							
							
								
								Upstream HID bugfixes.  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								cda254c8bb 
								
							
								 
							
						 
						
							
							
								
								Downstream HID SPI interface done, untested.  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								56e8b99ae5 
								
							
								 
							
						 
						
							
							
								
								Downstream mouse support working!  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								e8a445a071 
								
							
								 
							
						 
						
							
							
								
								Work on Downstream HID support. Also a bunch of random tweaks.  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								b9c1b23e4b 
								
							
								 
							
						 
						
							
							
								
								Supported device classes that fail sanity checks are now reported with a  
							
							... 
							
							
 
							
							slow 'unsupported device' flash, rather than a fast 'freakout' flash. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								0d2d4d6341 
								
							
								 
							
						 
						
							
							
								
								Implement flash write lockout by spamming the unlock register, then  
							
							... 
							
							
 
							
							checking that the correct unlock sequence fails. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								25ff531917 
								
							
								 
							
						 
						
							
							
								
								Tweaks to 1.0 firmware. Not completely working yet :(  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								e29ef84861 
								
							
								 
							
						 
						
							
							
								
								Modify firmware for v1.0 hardware with STM32F401RC micro:  
							
							... 
							
							
 
							
							- Processor-specific header
 - Startup file
 - Linker script
 - Project settings
 - Debugger config script
 - Debugger project settings
 - Board revision detection routines 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								1262c5337a 
								
							
								 
							
						 
						
							
							
								
								All tabs to spaces  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								08e6846cc5 
								
							
								 
							
						 
						
							
							
								
								Add missing option to clock configuration  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								21de622469 
								
							
								 
							
						 
						
							
							
								
								Added hardware check on bootup: fault LED will light if Upstream  
							
							... 
							
							
 
							
							firmware is placed on Downstream hardware or vice versa. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								2983da24b2 
								
							
								 
							
						 
						
							
							
								
								Changed Upstream and Downstream SPI transfers back to DMA. DMA works  
							
							... 
							
							
 
							
							correctly now, either because SPI is in 16-bit mode, or because I found
all the other bugs!
Doubled SPI baudrate to 10.5Mbps. Transfer speed now limited (again) by
Downstream's lack of FIFO buffering in the USB host controller.
Also disabled DMA transaction half-complete interrupt in
stm32f4xx_hal_dma.c, as it wasn't doing anything useful. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								226e163adf 
								
							
								 
							
						 
						
							
							
								
								Improve Downstream error handling:  
							
							... 
							
							
 
							
							- Slow flash fault LED when unsupported device connected
- Disconnect downstream USB host on error 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								431a527e24 
								
							
								 
							
						 
						
							
							
								
								Tidy up commented DMA init code  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								58308c4a89 
								
							
								 
							
						 
						
							
							
								
								Added Mozilla Public License information to file headers.  
							
							... 
							
							
 
							
							Mozilla Public License v2.0 is compatible with the various licenses used
by ST and ARM. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								08c8c7a6d6 
								
							
								 
							
						 
						
							
							
								
								Code tidyup - remove unused SPI Tx-only and Rx-only routines  
							
							
 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								ce03845623 
								
							
								 
							
						 
						
							
							
								
								Completed moving Upstream to interrupt-based SPI.  
							
							... 
							
							
 
							
							Although I am not entirely convinced this is necessary, as the SPI data
stall issue only appeared with optimisation off (-O0). Perhaps re-visit
this if Upstream needs more free CPU time later... 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								b9cc31d036 
								
							
								 
							
						 
						
							
							
								
								Crazy hardware issues, about to revert Upstream SPI from DMA to  
							
							... 
							
							
 
							
							interrupt transfers 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								48a6c2e2a4 
								
							
								 
							
						 
						
							
							
								
								Bugfixes for Downstream, including one in the USB host stack!  
							
							... 
							
							
 
							
							Downstream now enumerates and accepts attached USB storage devices. 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								750c2f3a21 
								
							
								 
							
						 
						
							
							
								
								- Implement notification of Downstream USB device removal, and  
							
							... 
							
							
 
							
							corresponding Upstream disconnection
- Improve Upstream handling of TxOk signal from Downstream
- Misc tweaks 
							
						 
						
							10 years ago  
				
					
						
							
							
								 
						
							
							
								f24714cd8c 
								
							
								 
							
						 
						
							
							
								
								Revisit Upstream project to:  
							
							... 
							
							
 
							
							- Implement Upstream state machine, with Downstream-dependent device
emulation
- Add fault LED flashing
- Improve fault handling and freakouts
- Misc bug fixes 
							
						 
						
							10 years ago