Commit Graph

22 Commits

Author SHA1 Message Date
Frederik Walk
381d91e7bc Use DMA for reading external ADC
The external ADC will constantly convert, reading will give
the maximum value since the last read. This should avoid
missing any peaks.

The internal ADC will now only do one conversion upon read,
consider it abandoned for now.
2024-11-13 21:12:26 +01:00
Frederik Walk
5aceccc855 Rework Menu
- Live preview of all settings
- Settings will be applied with 'Select/Apply' or reset with 'Back'
- DS4 player color can be en-/disabled
2024-11-07 16:15:55 +01:00
Frederik Walk
55c9966b88 Refactor USB drivers 2024-11-07 16:15:55 +01:00
Frederik Walk
2bcbf1e458 Add XInput Analog mode
This mode will map the readouts of the drum to the left (for player 1)
or right (for player 2) analogstick axis.
2024-10-12 18:38:42 +02:00
Frederik Walk
bf94a1effb Calculate Roll Counte on core0 2023-12-03 17:18:01 +01:00
Frederik Walk
70846721cb Support DS4 Plater Color on LED 2023-12-03 16:30:36 +01:00
Frederik Walk
092eeb4f07 Simplify false hit detection
For now, only allow one input at a time
2023-12-03 16:07:58 +01:00
Frederik Walk
e8c3e5d697 Make debounce delay configurable via on-screen menu 2023-11-25 17:24:22 +01:00
Frederik Walk
96c34813dc Add support for external ADC 2023-08-09 22:31:21 +02:00
Frederik Walk
b278f76ba0 Add on-screen configuration for thresholds 2023-07-16 23:34:47 +02:00
Frederik Walk
01536cc45d Scale thresholds for hard hits
To avoid false inputs on neighboring pads for very hard hits,
thresholds can now be scaled dynamically according to the highest
input.

This is controlled by the trigger_threshold_scale_level, ranging
from 0 for no scaling to 255 for max scaling. Mind that the scaling
is non-linear and changes in the higher end of the value range have
a much larger impact.
2023-07-16 18:13:50 +02:00
Frederik Walk
71b17d4daa Add basic roll counters 2023-07-16 16:48:08 +02:00
Frederik Walk
65d0a7a551 Draw basic menu on screen 2023-07-09 18:19:41 +02:00
Frederik Walk
7a6bb4e182 Add menu backend 2023-07-06 20:55:26 +02:00
Frederik Walk
0f1fd87a07 Add persistent settings store
In preparation for on-screen menu.
2023-07-06 19:37:57 +02:00
Frederik Walk
e86d869c46 Remove hardest hit detection again 2023-07-02 23:50:33 +02:00
Frederik Walk
390d44777b Add ssd1306 display driver 2023-05-22 00:08:23 +02:00
Frederik Walk
9becbf9e6a Move controller input to second core 2023-05-21 22:02:24 +02:00
Frederik Walk
68457c60fe Add support for additional controller buttons 2023-05-20 20:17:26 +02:00
Frederik Walk
528172c2ca Rework Drum to use ADC inputs 2023-05-13 15:27:43 +02:00
Frederik Walk
cf799f5253 Add status led to show current input state 2023-04-22 17:16:33 +02:00
Frederik Walk
3d7a970dcc Add drum pad input handling 2023-04-10 13:04:38 +02:00