[sdiy] MIDI velocity

Ullrich Peter Peter.Ullrich at kapsch.net
Tue Apr 5 15:39:34 CEST 2016


Hi Richie!

>1. Is it reasonable to expect that I could use a low-end micro (e.g. PIC) to scan a 61-key Fatar velocity sensitive keyboard with sufficient velocity resolution to work well?  Or does >it need dedicated hardware to measure the time between top and bottom switch closures for every key in parallel with sufficient resolution.  For instance the old E510 is >quoted as having 128us resolution, and it sounds challenging to write a program to poll all
>61 keys nearly 8000 times a second?  Obviously I can use a free-running timer, and subtract time stamps obtained from the top and bottom switch closures for each key, but it >still sounds tight.  I couldn't find any online examples of PIC based DIY velocity sensitive keyboards, and most commercial keyboards seem to have an ASIC taking care of timing >the switch closures and reporting results to a general purpose micro to form the MIDI packets.

If a simple midi channel 0 only design is enough then you could use the keyboard chip from the Crumar bit one. It is a simple 8751 chip that outputs midi data and it is velocity sensitive. But you can only use it if it's a DIY project - so no commercial project... I have the binary on one of my PCs - so if you can program these chips this could be a solution for you.
The keyboard schematics can be found on page 3 of this service manual:
http://manuals.fdiskc.com/tree/Crumar/Crumar%20Bit%20One%20Service%20Manual.pdf

>3. How should a receiving synth set it's voice's volume depending on the velocity byte received?  I tried to think through the physics of someone hitting a piano key with a >specific velocity, what the energy is from
>0.5mv^2 etc, and how that should influence the amplitude of the resulting sound wave.  It seems that most synths either have a linear response or an
>x^2
>response curve to velocity, but many offer a selection of different responses.

As all instruments have their own interpretion some master keyboards have different velocity curves they send out.
I designed a velocity converter that in principles has some tables with different curves in it to convert from one velocity "feeling" to another.

Ciao
Peter

http://www.ullrich.at.tt        (My homepage)
http://synpro.heimat.eu/datadial.htm    (Synth addon)
http://rc100-usb.at.tt/     (Roland sampler tool)






The information contained in this e-mail message is privileged and confidential and is for the exclusive use of the addressee. The person who receives this message and who is not the addressee, one of his employees or an agent entitled to hand it over to the addressee, is informed that he may not use, disclose or reproduce the contents thereof, and is kindly asked to notify the sender and delete the e-mail immediately.




More information about the Synth-diy mailing list