diff options
author | Thomas White <taw@physics.org> | 2023-06-18 20:19:24 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2023-06-18 20:19:24 +0200 |
commit | 3aab7533ea856b454509376f1ee7141b08c2ab44 (patch) | |
tree | 0dad4a20f609dcfca194030b78a3c27e0a02c0d0 | |
parent | 2d57ab93a1550226d33619ef4ec1c3684cc2372a (diff) |
Special case for faders coming up from zeromain
-rw-r--r-- | x1k2-midi-osc.c | 8 |
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 ) { |