Robert Fisk
1147d2ebf9
Implemented Stop/Eject command passthrough
...
Conflicts:
Downstream/.cproject
Downstream/Inc/downstream_interface_def.h
Downstream/Middlewares/ST/STM32_USB_Host_Library/Class/MSC/Src/usbh_msc.c
Downstream/Middlewares/ST/STM32_USB_Host_Library/Class/MSC/Src/usbh_msc_scsi.c
Downstream/Src/downstream_msc.c
Upstream/Inc/upstream_interface_def.h
Upstream/Inc/upstream_msc.h
Upstream/Middlewares/ST/STM32_USB_Device_Library/Class/MSC/Src/usbd_msc_scsi.c
Upstream/Src/upstream_msc.c
5 years ago
Robert Fisk
ee148998b9
Create .bin file in post-build project setting
6 years ago
Robert Fisk
1b0b99ebbd
Sanity-check Upstream MSC parameters received from Downstream
6 years ago
Robert Fisk
086158525b
Ignore mass storage commands after receiving SCSI stop/eject
7 years ago
Robert Fisk
0c7cc00c0a
HID bot detect: 3 temporary lockouts = permanent lockout
7 years ago
Robert Fisk
1f365434f9
Dont freak out if we get two suspend events in a row
7 years ago
Robert Fisk
3276449378
Tweak HID protocol defines
7 years ago
Robert Fisk
e890e9df7a
Disconnect on SCSI eject command from host
7 years ago
Robert Fisk
c06a875050
Eclipse launch configurations changed for some reason
7 years ago
Robert Fisk
3e68c42e45
Fixed eclipse project settings & debug configurations
7 years ago
Robert Fisk
88d4cd6ca3
Allow longer constant-speed motion before blocking
7 years ago
Robert Fisk
e780948ff2
Tweak bot detect parameter
7 years ago
Robert Fisk
e4fe983da5
Jump detection now measures entire length of movement, not just the
...
proportion above the jump velocity threshold.
Also tweaked constant acceleration parameters.
7 years ago
Robert Fisk
418bba1706
Constant acceleration detector now blocks mouse movement well before
...
causing a full lockout
7 years ago
Robert Fisk
f1bb58e8c2
Maintain constant acceleration counter for several seconds, on the
...
assumption that a mouse bot would wait until the human stops using the
mouse before starting to do anything bad.
7 years ago
Robert Fisk
8403c9ee93
Restore jiggle detection.
...
This is no longer taken care of by the constant acceleration detector,
so we need to do it explicitly
7 years ago
Robert Fisk
d6f66e67bd
Reset mouse velocity history on each movement
7 years ago
Robert Fisk
3d91aa2115
Implement random-movement credit in the constant acceleration detector.
...
This makes it more forgiving of constant acceleration mid-movement, if
the beginning of the movement looks random. Handy for mice that for some
reason generate bot-like constant velocities.
7 years ago
Robert Fisk
7e4af61910
Tweak keyboard lockout threshold
7 years ago
Robert Fisk
7638e39f67
Mouse botdetect config comments
7 years ago
Robert Fisk
0c3c3a033c
Remove jiggle detector as the constant-acceleration detector already
...
does the same job.
7 years ago
Robert Fisk
84bd03b539
Implemented jiggle detection
7 years ago
Robert Fisk
8c6d54d110
Tweaks to mouse jump detection
7 years ago
Robert Fisk
b052645faa
Mouse jump detection implmented
7 years ago
Robert Fisk
324f115476
Implement mouse acceleration pulse timing. Doesn't work on realistic
...
inputs.
7 years ago
Robert Fisk
0baf8ea52b
Extend 'fast' key histogram out to 300ms
7 years ago
Robert Fisk
2deea5a646
Added error band comparison to velocity matching
7 years ago
Robert Fisk
f7b7ce84e7
Initial implementation of mouse bot detection
7 years ago
Robert Fisk
302bca3690
Re-implement keyboard bot detection based on timing histograms, rather
...
than maximum typing speed.
7 years ago
Robert Fisk
441caf6768
Tweaks to HID keyboard bot detection
7 years ago
Robert Fisk
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
7 years ago
Robert Fisk
02f6842723
HID keyboard bot detection mostly implemented. Needs more advanced LED
...
flash code, and testing.
7 years ago
Robert Fisk
fc7d0b67d7
Enable all config options by default
7 years ago
Robert Fisk
cf1d5da8e8
Build options complete & tested:
...
- Implement SCSI WP flag in mode parameter header
- Refactor #ifdef names
- #ifdef out more HID code
7 years ago
Robert Fisk
2cd86a7201
Tweak write protect SCSI sense code
8 years ago
Robert Fisk
3a94c2c863
Implemented optional build for mass storage, keyboard, and mouse
...
(Upstream). Also implemented read-only mass storage mode.
Todo:
- Test. Everything!!!
- Report write protect flag in SCSI "mode parameter header" (whatever
that is)
8 years ago
Robert Fisk
53fea530aa
Implemented optional build for mass storage, keyboard, and mouse
...
features.
8 years ago
Robert Fisk
b476df268a
Fixed devices-shrinking-by-one-block problem.
...
So it turns out the SCSI ReadCapacity10 command does not return the
device capacity. It returns the address of the last block, which is
(capacity - 1).
Also fixed Upstream's end-of-device sanity check.
8 years ago
Robert Fisk
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.
8 years ago
Robert Fisk
d38dab22ff
Meaningless update to project settings file
8 years ago
Robert Fisk
2843654ff7
Flush HID endpoint on init.
...
Fixes delayed HID events after failed wakeup attempt.
8 years ago
Robert Fisk
747681769b
Fix yesterday's HID disconnect/reconnect fix
8 years ago
Robert Fisk
eea91c8077
Fix for Upstream JTAG lockout - don't execute WFI too soon!
8 years ago
Robert Fisk
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.
8 years ago
Robert Fisk
0e42cf71dd
Correctly resume operation after HID device unplug/replug
8 years ago
Robert Fisk
e63525f868
Don't freakout when wakeup-from-sleep fails during keyboard report out.
8 years ago
Robert Fisk
7a1fe0fb65
Fix for mouse movement before waking from suspend
8 years ago
Robert Fisk
46ecbd410d
After an epic battle, suspend/resume/wakeup is now supported.
...
It turns out that suspend support on the STM32 USB core is buggy as
heck. Host mode cannot resume after suspend, and device mode cannot
receive resume or send wakeup signalling.
I managed to fake resume support by keeping Downstream and our connected
device running at full power, and simulating a wakeup event to the host
by disconnecting/reconnecting Upstream from the host.
8 years ago
Robert Fisk
32ca5cdcf9
HID class handles host restart correctly
8 years ago
Robert Fisk
c68151698b
Bugfixes for keyboard support: works!!!
8 years ago