One of the toughest challenges with making DIY music keyboards involves obtaining clean and consistent key press detection signals. To solve this, I have come up with a key sensing design that uses Silicon Labs CPT007B programmable touch sensor chip.
Engineered solutionThe build design for this project involves using 3D-printed keyboard sections with the sensor PCB mounted above its key posts. Sensor PCB has 2 x 7 channel capacitive touch sensor chips in which 12 channels are used. A total of 5 octave sections are connected to chromatic tone generator which responds to output signals from keyboard sensor PCBs to produce 61 notes. (Last octave has extra note enabled for high C.)
Keyboard sections and the general layout were designed using Logic Blox synth builder. 3D parts and how they interact with the synths audio engine were prototyped in the virtual environment and then transformed into real devices.
Logic Blox synth is a Unity based 3D world editor. Synthesizer builder components can be found here https://assetstore.unity.com/packages/slug/141800
Sensor board is based on keyboard section size which in reality can be any shape. In this design spring posts on each key press will trigger capacitive touch pads located over each key. Spring posts do not need to make electrical contact with touch pad and will trigger signal through various materials such as mylar, glass and in this case the solder mask.
The CPC700B has 7 capacitive sensor inputs with 7 corresponding open collector outputs. Synth designs that use individual control lines for each key can use this type of signaling. Synth designs that work by sending key presses directly to a MC can use the SPI or I2C output version of this chip.
In this configuration corresponding output signals go from high to low when keys are pressed. All outputs are conditioned for clean bounceless signals which are detected by a tone generator board in order to play corresponding musical notes.
Chip parameters can be modified using the programmer GUI in order to alter and save parameters back to chip. Video shows this process.
PCB designAs with all capacitive touch PCBs, careful attention must be payed to preventing transient voltages near touch sensor pads. Entire circuit should be surrounded by ground plane with pad side free of protrusions (hole though solder pins, components etc).
This board was made using PCB123 from SunStone circuits in which several prototypes were developed.
The PCB is a fairly simple design in which touchpads are connected to chip inputs. Outputs are connected to 16 pin header for signals to synthesizers tone generator board.
LinkedIn Article, Synthesis of Sound - https://www.linkedin.com/pulse/synthesis-sound-michael-hogan/
Comments