I'm building an electric xylophone, or at least trying to, which is velocity sensitive. I approach this by using piezo-sensors. The sampling of the notes will be done on a raspberry pi. So far, I have connected an 8-channel ADC (MCP3008) to the raspberry pi and connected multiplexers (4051) to the ADC. This would allow for up to 64 analog inputs. However, with some experimentation I found that reading all 64 inputs sequentially would take about 8ms on the raspberry pi in python.
Velocity sensitive in this context means that if I hit the bar (piece of wood with piezo underneath) harder, the sound will be louder. The midi protocol calls this velocity and determines it by a value between 0 and 127, so that is also the precision I need from the analog input (7 bits).
The goals is to have a 4 1/3 octave instrument (52 keys), read the piezo-data, find the peak when hitting the piezo and extract midi-signals from that. Some extra inputs would be used for volume control and things like that. With some research and extensive personal experience I found that an audible delay would start at around 10ms. Since there will be some delay between the sampler and my ear (due to DC) I estimate the delay for the piezo-to-midi should be around 5ms total.
I figured that using two MCP3008's would cut the time by half if I use one thread per ADC. I'm afraid that 4ms is still too much to find the peak though. The solution I'm looking for doesn't necessarily have to be extremely cheap and doesn't necessarily have to run on a raspberry pi (sending the signals from an arduino over usb to the pi for example is fine too).
Some personal background to show experience and skill I can apply to the project: Bachelors degree in computer science, working on a masters, so programming in whatever language should not be a problem. Superficial and mostly self-taught skills in electronics, but of course willing to learn. Over 10 years of musical experience with drums and a variety of other instruments.
What are my options to build this setup with the different cost options? If any more information is wanted I will gladly provide it.
Edit: added information about sought-after delay, meaning of velocity sensitivity in this context and contextual personal background.