Piano Touch Keys II P13364 Team Members: Ed Mackowiak (CE), Whitney - - PowerPoint PPT Presentation

piano touch keys ii
SMART_READER_LITE
LIVE PREVIEW

Piano Touch Keys II P13364 Team Members: Ed Mackowiak (CE), Whitney - - PowerPoint PPT Presentation

Piano Touch Keys II P13364 Team Members: Ed Mackowiak (CE), Whitney Zack (CE), Bruce Kynoch (EE), Alex Coleman (EE) Customer/Guide: Gerald Garavuso Background / Customer Requirements Augment a keyboard to allow musical parameters (pitch,


slide-1
SLIDE 1

Piano Touch Keys II

P13364

Team Members: Ed Mackowiak (CE), Whitney Zack (CE), Bruce Kynoch (EE), Alex Coleman (EE) Customer/Guide: Gerald Garavuso

slide-2
SLIDE 2

Background / Customer Requirements

  • Augment a keyboard to allow musical

parameters (pitch, timbre, intensity) to be changed while playing with two hands.

  • Allow the musician to play in a way that isn't

possible on currently available keyboards.

  • At least two axes of control, tracking both

position and velocity.

  • Demonstrate this functionality on a single

keyboard octave.

  • Customer Needs
slide-3
SLIDE 3

Hardware / Software Design

slide-4
SLIDE 4

Capacitive Touch Prototype

  • Test board to demonstrate capacitive touch

being read by the MSP430.

  • Test Board Demo Video
slide-5
SLIDE 5
slide-6
SLIDE 6

PCB Design (Key Design)

  • Each piano key has:

○ MSP430 IC ○ 1 uF capacitor VDD to GND ○ 6-pin ZIF Connector ○ Touchpad array

  • MSP430 and cap on the underside (top

layer, red) of the board.

  • Pad array and connector on the top surface

(bottom layer, blue)

  • Limited ground-plane on the touchpad layer,

but no ungrounded islands.

slide-7
SLIDE 7

PCB Design (Black Key)

Chip side Pad side

slide-8
SLIDE 8

PCB Design (White Key)

Chip side Pad side

slide-9
SLIDE 9

PCB Design (Reflection)

  • One trace was left unrouted.
  • A smaller package size might have allowed

for more spacing between the electrode traces and the data lines.

  • "No-tent" vias should have been used to

allow for complete solder-mask coverage

  • ver the pads.
  • A debug LED on the header boards would

have been useful.

  • TEST/RST pins should have been tied to

VDD/GND.

slide-10
SLIDE 10

Touch Processor (MSP430)

  • Collects capacitance data from electrodes.
  • Using the capacitance data, a location is

determined.

  • A baseline level is regularly updated to

mitigate the effect of uneven trace length.

  • The touch processor must be ready to send

the location data over the I2C bus, which is polled at 100 Hz.

slide-11
SLIDE 11

Capacitive Technology

slide-12
SLIDE 12

Touch Controller Code (MSP430)

slide-13
SLIDE 13

MSP430 Reflections

  • Baseline calculation algorithm could be

refined.

  • Having different pinouts for every white key

design made multiple versions of the code necessary.

slide-14
SLIDE 14

I2C Communication

  • Bus protocol consisting of one master and

several slaves.

  • Supervisory processor acts as master,

polling the individual key processors for X and Y touch data.

  • Spent some time debugging the I2C

communication between the mbed and MSP430

  • Bus runs at 100kHz
slide-15
SLIDE 15

Octave Controller (mBed)

  • Communicates with the 12 MSP430s over

the I2C bus. Polls at 100 Hz.

  • X/Y data is packaged into a MIDI signal

using MIDI continuous controls, which is then sent to a PC over USB, using the HID MIDI page.

  • Debug LEDs indicate proper operation of the

mBed, and also light up if some of the keys are non-responsive.

slide-16
SLIDE 16

mBed Reflections

  • It is possible to merge the keyboard MIDI

stream with the touch sensor data the mbed level, however this would required a fair amount of extra effort and would not have provided any benefits.

○ Still would need two cables (one for keyboard power, and one for combined mbed power/data)

slide-17
SLIDE 17

Sound Generation (Plogue)

  • Takes in MIDI signals from the keyboard and

the mBed.

  • Frequency and Intensity are extracted from

the keyboard notes.

  • X and Y are extracted from the mBed MIDI

channel.

  • New Frequency = Old Frequency + K*Y
  • K is a scaling factor
  • 50 ms smoothing factor to control jitter
slide-18
SLIDE 18

Plogue Reflections

  • Pitch shifting should be relative to the initial

keypress position.

  • Lots of flexibility in sound generation options

○ MIDI soundbank ○ Custom synthesizers

  • Once design is finalized, it can be packaged

into a custom Bidule for possible distribution.

slide-19
SLIDE 19

Bill of Materials

Part(s) Cost mBed FREE ($60 production) PCB $112.55 Connectors & passive components $124.48 Total $237.03 Vendor List Digikey mBed OSH Park

Bill of Materials