Robert Fisk
1b3fe91564
(add forgotten files)
...
Conflicts:
Upstream/Src/upstream_statemachine.c
5 years ago
Robert Fisk
16e964702a
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
cc73a13ad7
Sanity-check Upstream MSC parameters received from Downstream
6 years ago
Robert Fisk
7200f319b4
Ignore mass storage commands after receiving SCSI stop/eject
7 years ago
Robert Fisk
f3117a32a6
HID bot detect: 3 temporary lockouts = permanent lockout
7 years ago
Robert Fisk
d2e3ab0227
Dont freak out if we get two suspend events in a row
7 years ago
Robert Fisk
a0c086bbf1
Disconnect on SCSI eject command from host
7 years ago
Robert Fisk
8600b9ee09
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
2ff93c15af
Constant acceleration detector now blocks mouse movement well before
...
causing a full lockout
7 years ago
Robert Fisk
3c072d2e54
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
a2edc90302
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
9d88557c83
Reset mouse velocity history on each movement
7 years ago
Robert Fisk
4cf08bb1b4
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
3866e50b47
Remove jiggle detector as the constant-acceleration detector already
...
does the same job.
7 years ago
Robert Fisk
8b412903a3
Implemented jiggle detection
7 years ago
Robert Fisk
67d5c52a3b
Tweaks to mouse jump detection
7 years ago
Robert Fisk
0cf0d7c796
Mouse jump detection implmented
7 years ago
Robert Fisk
35a523f768
Implement mouse acceleration pulse timing. Doesn't work on realistic
...
inputs.
Conflicts:
Upstream/.settings/language.settings.xml
7 years ago
Robert Fisk
b2cea5dad4
Added error band comparison to velocity matching
7 years ago
Robert Fisk
bdcb77cabb
Initial implementation of mouse bot detection
...
Conflicts:
Downstream/.cproject
Upstream/.cproject
Upstream/.settings/language.settings.xml
7 years ago
Robert Fisk
e33e6eafdc
Re-implement keyboard bot detection based on timing histograms, rather
...
than maximum typing speed.
7 years ago
Robert Fisk
4f5e6fd3f8
Tweaks to HID keyboard bot detection
7 years ago
Robert Fisk
bd40794d50
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
7a70c5826b
HID keyboard bot detection mostly implemented. Needs more advanced LED
...
flash code, and testing.
7 years ago
Robert Fisk
19f91b391d
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
d629327ae4
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)
7 years ago
Robert Fisk
835c54f480
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
41c2e05ded
Fix yesterday's HID disconnect/reconnect fix
8 years ago
Robert Fisk
754789393d
Fix for Upstream JTAG lockout - don't execute WFI too soon!
8 years ago
Robert Fisk
a3ba77433f
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
d2b982c0e9
Correctly resume operation after HID device unplug/replug
8 years ago
Robert Fisk
c63f4f7829
Don't freakout when wakeup-from-sleep fails during keyboard report out.
8 years ago
Robert Fisk
ae4472bd5d
Fix for mouse movement before waking from suspend
8 years ago
Robert Fisk
0e1dba7c46
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
4e023d378c
HID class handles host restart correctly
8 years ago
Robert Fisk
1f144d6cab
Bugfixes for keyboard support: works!!!
8 years ago
Robert Fisk
e78c526cb8
Keyboard support implemented, but not tested
8 years ago
Robert Fisk
34b152cce9
Incomplete and untested implementation of keyboard support
...
Conflicts:
Upstream/Upstream Debug.launch
8 years ago
Robert Fisk
3fa8a5f2ff
Bugfix to allow reconnecting HID devices
8 years ago
Robert Fisk
b760f5fc9d
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.
Conflicts:
Upstream/Src/interrupts.c
8 years ago
Robert Fisk
b3e3931b75
Minor fix for startup hardware-detection function
8 years ago
Robert Fisk
3a0cd8f587
Tweak USB descriptor strings
8 years ago
Robert Fisk
7e073a091d
Sleep instead of busy-wait, approx 50% power reduction!
8 years ago
Robert Fisk
fa98307a3b
HID class: handle host restart gracefully
8 years ago
Robert Fisk
518b728f1d
Implement multi-PID support so that Windows will recognise each device
...
class as a separate device.
9 years ago
Robert Fisk
655b0e56a8
Support disconnect/reconnect of attached HID device
9 years ago
Robert Fisk
4b9607dbc3
HID parser and wheel support works!
9 years ago
Robert Fisk
7fb0a7e7ad
Fixed click-drag issue.
...
TODO: find out why 8-byte device interrupt endpoints totally fail.
WTF???
9 years ago
Robert Fisk
0fb24d928a
Fixed bug in Upstream MSC. I have no idea why it worked before...
9 years ago
Robert Fisk
979011bba5
Mouse WORKS!11111 ...but only in boot mode, so no scroll wheel :(
9 years ago