Commit Graph

81 Commits

Author SHA1 Message Date
702cbe5eb0 add mode to further improve input latency while maintaining accuracy (#8)
This feels even hackier than consistency mode... we hold off on writing USB reports until the button state actually changes. Passes the input integrity benchmark with ~99.6%, but that doesn't mean much since the challenge is preserving input integrity for inputs less than 8.33ms apart.

Current rate limiter looks good from initial measurements, so will probably merge this at some point and leave it up to users to try the mode out or not. For now, I'd still recommend regular consistency mode, it's still hacky, but way less than this.

Also, not breaking because the new enum for input consistency mode is backward compatible with the bool.

Reviewed-on: #8
2024-04-08 20:53:23 +00:00
c2e4066125 chore: cancel previous clippy runs if need be 2024-04-08 22:40:38 +02:00
d49c72d9c0 feat(config): add ability to display current stick calibration values 2024-04-06 21:05:22 +02:00
c43e66f91d chore: clarify nightly 2024-04-05 23:46:05 +02:00
71aaf07b29 chore(readme): clarify default behavior 2024-04-05 23:40:07 +02:00
0249f69b91 chore: amend readme & add license 2024-04-05 23:37:35 +02:00
be2f3cb755 chore: add nightly warning 2024-04-05 13:04:53 +02:00
f4de1326a5 change(project): use https for git resolution 2024-04-05 12:39:39 +02:00
5cabeeb109 fix(ci): scan host key in clippy flow 2024-04-05 12:37:12 +02:00
bb2184fa29 chore(ci): use public binary cache 2024-04-05 12:14:22 +02:00
aed495ae54 feat: implement input filters (#7)
Reviewed-on: #7
2024-04-03 19:44:02 +00:00
b0746c538f fix(rumble): don't perma-enable :) 2024-04-03 19:31:36 +02:00
bf73aa6f23 chore: amend readme 2024-04-03 18:57:32 +02:00
2f49357029 chore: refactor according to clippy & clean up config (#6)
Reviewed-on: #6
2024-04-03 16:53:52 +00:00
ac1d6e08a2 chore(config): streamline flash interactions 2024-04-03 17:21:10 +02:00
8073328405 chore(project): clean up unused imports 2024-04-03 17:17:21 +02:00
d0960f2c2d chore: clean up rumble logic 2024-04-03 16:16:55 +02:00
b62f8f2d5c change(project): don't build with DEFMT_LOG in production 2024-04-03 14:33:47 +02:00
5e102fd14f change(config): improve how config is loaded from flash 2024-04-03 14:33:23 +02:00
ef02ca6950 chore: clean up rumble & misc debug stuff 2024-04-03 13:52:19 +02:00
d6bb5d5266 fix(flash): access after a delay
apparently accessing the flash immediately after boot poses some issues
2024-04-03 01:46:14 +02:00
ba50594425 chore: amend readme 2024-04-02 22:18:09 +02:00
60f8459835 feat(hardware): implement rumble (untested) 2024-04-02 22:17:50 +02:00
1b4fbddd78 feat(config): implement rest of config / calibration options 2024-04-02 22:05:57 +02:00
7ef15c0e7b change(input): always yield at least once per stick update 2024-04-02 19:19:17 +02:00
755e49180c fix(calibration): correctly set intiial notch configuration 2024-04-02 19:18:45 +02:00
6c7ad81b80 chore: update readme 2024-04-02 15:11:44 +02:00
c7fd7e72c9 feat(HID): get state on-demand to improve latency 2024-04-02 10:12:23 +02:00
84d531e80a feat(calibration): implement notch adjustment 2024-04-01 23:54:08 +02:00
d5dbaaaa49 feat: implement notch-adjustment (rudimentary) 2024-04-01 23:07:06 +02:00
03d5c478ef change(config): remove notch adjustment logic (for now) 2024-04-01 23:03:08 +02:00
0090116003 chore: amend readme 2024-04-01 21:32:58 +02:00
108c9e5dce chore: clean up usb descriptor 2024-04-01 21:08:12 +02:00
35c0f755f2 feat(input): implement input consistency mode 2024-04-01 21:06:41 +02:00
1acb78ec79 change(calibrate): reduce double-press timer 2024-03-30 13:21:15 +01:00
5f2fdc60ec feat(stick): get calibration to a working state 2024-03-30 13:20:35 +01:00
39ee31eb0f change(config): increase delay between button presses 2024-03-30 08:10:12 +01:00
26d957f6f3 change(filter): add more functions to time critical section 2024-03-30 08:09:58 +01:00
55b9bc6d2c change(input): use ticker for stick thread 2024-03-30 08:09:26 +01:00
090a97b5a9 feat(calibrate): finish stick calibration logic 2024-03-29 23:42:05 +01:00
4306cce840 feat(calibration): implement calibration step 2024-03-29 21:31:55 +01:00
5eaf18993e fix(input): adapt to param change 2024-03-29 19:56:49 +01:00
2d7239c04a feat(config, stick): implement more calibration logic 2024-03-29 19:54:52 +01:00
5408d37560 chore: move calibrate to config 2024-03-29 16:07:44 +01:00
7878c283e6 change(nput): refactor loop ordering 2024-03-29 11:53:17 +01:00
b891e263aa feat(calibration): add helper functionality 2024-03-29 11:52:54 +01:00
35349dee49 shuffle some threads around, stricter timing for stick readings 2024-03-28 22:43:44 +01:00
d4c88a4a60 chore(input): use AnyPin 2024-03-28 18:12:02 +01:00
d0aeafc069 fix: disable rumble for now (or we might blow a fuse, lel) 2024-03-27 22:31:55 +01:00
1861b89505 feat: finish notch remap 2024-03-27 22:12:28 +01:00