summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-06-18 20:19:24 +0200
committerThomas White <taw@physics.org>2023-06-18 20:19:24 +0200
commit3aab7533ea856b454509376f1ee7141b08c2ab44 (patch)
tree0dad4a20f609dcfca194030b78a3c27e0a02c0d0
parent2d57ab93a1550226d33619ef4ec1c3684cc2372a (diff)
Special case for faders coming up from zeromain
-rw-r--r--x1k2-midi-osc.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/x1k2-midi-osc.c b/x1k2-midi-osc.c
index 535654b..e82185a 100644
--- a/x1k2-midi-osc.c
+++ b/x1k2-midi-osc.c
@@ -181,9 +181,11 @@ static void faderpot_cc(struct faderpot *fad, int val, lo_address osc_send_addr)
{
if ( !fad->congruent ) {
int inr = in_range(fad->pickup_value, fad->physical_value, val);
- if ( fad->physical_value_known && inr ) {
- fad->congruent = 1;
- }
+ if ( fad->physical_value_known && inr ) fad->congruent = 1;
+
+ /* Special case for fader coming from zero, where we didn't
+ * know its previous position. */
+ if ( (fad->pickup_value == 0) && (val <= 2) ) fad->congruent = 1;
}
if ( fad->enabled ) {