Today I am going to show you how I have managed to use capacitive touch in conjunction with the piezo transducer to enable pitch changes within a pad.
In the example I was given at QMUL for using MPR121s, a sine wave of different frequencies plays every time a different electrode is touched. However, in order to have all of the control on the Pure Data side of things, I wanted to send a raw data stream, same as I had been doing with the Raspberry Pi in the old setup.
Luckily, I found a couple of commented out lines for debugging that did exactly that and printed the data. With some help from Chris at Enzien Audio, I managed to turn this into a message that could be interpreted by Heavy audio tools and sent into my compiled pure data patch. Then in Pure Data, I would be able to receive those values and use them for anything I could think of (within the possible).
For now, all I wanted is to check this worked so I made each electrode send a different frequency to the KarplusStrong patch I was already using. This is how it looks on Pure Data:
And this is what it sounds like:
Not a bad start. The next steps are getting all four MPR121s to work simultaneously (by giving them different I2C addresses) and setting rules for multi-touch within each pad (like playing a chord when more than 2 electrodes are touched at the same time).
On another note, Bela platform gets released on Kickstarter tomorrow so make sure to check Bela.io!