[sdiy] MIDI velocity

Roman Sowa modular at go2.pl
Wed Apr 6 14:03:01 CEST 2016


Yes, that's for single contact keyboards, that are used by most of my 
customers. Obviously there's no need for debouncing in velocity-scanned 
keyboard.

Roman

W dniu 2016-04-06 o 13:15, Richie Burnett pisze:
> Yes, I agree, no special de-bouncing action is required if there are
> separate upper and lower contacts for each key as that builds mechanical
> hysteresis into the system.  I had assumed that Roman's specific
> reference to de-bouncing meant he was doing something extra to debounce
> keybeds that only have just a single set of contacts?
>
> -Richie,
>
> -----Original Message----- From: Steve
> Sent: Wednesday, April 06, 2016 12:04 PM
> To: synth-diy at dropmix.xs4all.nl
> Subject: Re: [sdiy] MIDI velocity
>
>
>
> I never did this, so grain of salt advised ;)
> Hrm, the fact that there are two switches with a guaranteed minimum time
> limit between them (assuming a human hits the key, not some robot ;) )
> could make this easier / no classic debunding needed.
> If all a detection of the first switch closing does is marking that key
> to up-count its time counter, and all tis release deteciton is does to
> reset / unmark time counter, nothing further needs to be done for that
> switch, let it bounce? When then the closing of the 2nd switch is
> detected, generate the MIDI event, and ignore any further changes of the
> 2nd switch until the 1st switch is also released. The guaranteed
> distance between the switches should make this not "jumpy" ? So when
> then the 1st switch starts to bounce again it measn the key has
> rtavelled so far thet 2nd switch will not bounce anymore, so it's back
> to some marking and unmarking of the "key is about to strike "stage...
>
> Steve
>
>
>
> Von: "Richie Burnett" <rburnett at richieburnett.co.uk>
> Betreff: Re: [sdiy] MIDI velocity
> Roman wrote:
>
>> ...regular scanning starts and is repeated until all keys are
> detected released and debounced.
>
> Out of interest, what rule do you use for the de-bouncing of musical
> instrument keys?
>
> For general switches in the user-interface of embedded control projects I
> have always used the rule that the switch state must have been stable for
> 10ms before updating the output state. So, whatever action the switch
> causes only takes place after the switch has been in the active state
> without bouncing for 10ms, and then the action variable only cancels when
> the switch has been in the inactive state for 10ms without bouncing. This
> works very well for de-bouncing pushbuttons and toggle switches in things
> like industrial control equipment because it inherently rejects any brief
> glitches due to EMC transients, as well as removing the effects of
> mechanical switch bounce. Nobody notices 10ms latency on the start and stop
> buttons of a CNC machine, or an oscilloscope, or whatever it is used for.
> But for musical keys, or drum pads, I am thinking that this 10ms latency on
> the closing of the switch is not acceptable. Maybe I should revise the
> algorithm to act on the first inactive-to-active transition and update the
> output state to active immediately. I would be interested to hear what rule
> you apply.
>
> -Richie,
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>
>
>
>
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>
>
>
>
>
>
>
>
> No virus found in this message.
> Checked by AVG - www.avg.com
> Version: 2016.0.7497 / Virus Database: 4545/11970 - Release Date: 04/06/16
>
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at dropmix.xs4all.nl
> http://dropmix.xs4all.nl/mailman/listinfo/synth-diy
>



More information about the Synth-diy mailing list