Commit graph

62 commits

Author SHA1 Message Date
88b6a22182
feat(superhack): give the console time to initialize 2024-04-09 19:14:16 +02:00
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: NaxdyOrg/NaxGCC-FW#8
2024-04-08 20:53:23 +00:00
d49c72d9c0
feat(config): add ability to display current stick calibration values 2024-04-06 21:05:22 +02:00
aed495ae54
feat: implement input filters (#7)
Reviewed-on: NaxdyOrg/NaxGCC-FW#7
2024-04-03 19:44:02 +00:00
b0746c538f
fix(rumble): don't perma-enable :) 2024-04-03 19:31:36 +02:00
2f49357029
chore: refactor according to clippy & clean up config (#6)
Reviewed-on: NaxdyOrg/NaxGCC-FW#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
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
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
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
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
0f11c659c4
chore(project): implement more xy value pairs 2024-03-27 21:41:33 +01:00
eb0ba44b1c
feat(filter): implement kalman filter 2024-03-27 21:20:25 +01:00
b0e1eb6309
chore(config): separate stick configs / refactor 2024-03-27 20:36:41 +01:00
7fd36a91fd
feat(input): use loop logic closer to phob 2024-03-27 20:11:05 +01:00
3514463dbb
fix(input): don't use raw waker (embassy) 2024-03-27 20:09:14 +01:00
4077220f27
fix(stick): use correct array types & linear cal values 2024-03-27 20:08:58 +01:00
5ab51f5670
chore: refactor and finish stick cal 2024-03-27 19:34:14 +01:00
40f734f25d
feat: add ability to enter reset mode via button press + additional default values 2024-03-27 19:03:04 +01:00
f0d99a234b
feat: implement stick calibration logic 2024-03-27 18:11:23 +01:00
fe4afce386
feat(input, stick): implement controller config revisioning & norm gains 2024-03-27 14:16:42 +01:00
483a51c265
chore(main): remove test code for flash storage 2024-03-26 23:09:38 +01:00
71aab17866
finish up the stick read function (minus calibration steps) 2024-03-22 22:33:27 +01:00