Jump to content

Keyboard matrix circuit

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Johnrpenner (talk | contribs) at 22:23, 1 September 2012 (a better summary, which includes a description of second set of switches used to determine velocity). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Most electronic keyboards used in synthesizers, electronic organs, and digital pianos use a keyboard matrix circuit in which eight rows and eight columns of wires cross. In this way, 16 wires can provide (8x8) 64 crossings — sufficient for a full five octaves of range (61 notes). By scanning these 64 crossings, a keyboard controller can determine which key was pressed[1].

The problem with this system, is that it provides only a crude binary on/off signal for each key. Better electronic keyboards employ two sets of switches for each key that are slightly offset. By determining the timing between the activation of the first and second switches, the velocity of a key press can be determined — greatly improving the performance dynamic of a keyboard.

Description

Without a matrix circuit, a 61-key keyboard would have to have 62 wires connected to the integrated circuit of the keyboard, which would be an awkward and thick bundle of wiring. With the matrix circuit, the entire 61-key keyboard can send signals to the integrated circuit with 16 wires -- they can be drawn schematically as a "key matrix" of 8 column wires and 8 row wires, with a mechanical switch at every intersection. The electronic or digital keyboard controller scans all of the columns, to determine if a key has been pressed. If a key in the column has been pressed, then the controller scan the rows, to determine which row has been activated. In a manner analogous to the children's board game "Battleship!", the keyboard controller determines which key has been pressed, and then plays that key's note. This entire process takes place so quickly that the performer is not aware of the delay.[2]

The inside of a Yamaha SY77 synthesizer shows the various internal components. The switches for each key are connected to the microprocessor chip using a matrix circuit. Even though the SY77 has 61 keys, only a small ribbon cable of wiring comes from the keyboard.

The matrix circuit approach used in musical keyboards is also used in other types of non-musical keyboards, such as in the keypads for calculators and the "QWERTY" alphabetic and numeric keyboards used to enter information into computers.[3] The same matrix circuit approach is also used in many pinball machines.[4]

Matrix circuits for instruments that are intended to be used in a monophonic fashion (playing only one note at a time) such as a bass pedal keyboard are simpler than matrix circuits for instruments that will be used to play polyphonically (multiple notes at once). For keyboards that will be used to play multiple-note chords or multiple-part melodies, the matrix circuit needs to have a diode soldered into the circuit for each key. The diode acts like a one-way valve in a water plumbing system. Without the diodes, the current would flow "backwards" up the matrix when several keys were pressed at once, which would trigger unwanted notes ("phantom keys") or mask intended notes ("phantom key blocking").[2] The diodes must be fitted at the switch (in series), not at the microprocessor end of the wires. [5]

Monophonic instruments and most low-cost computer keyboards reduce costs by leaving out most or all of those diodes. To avoid "phantom keys", the keyboard controller in modern low-cost computer keyboards will ignore further key presses once two keys (other than modifier keys) have been pressed down, which is known as jamming.

References

  1. ^ Dave Dribin: "Keyboard Matrix Help", (June 24, 2000)
  2. ^ a b Dave Dribin. "Keyboard Matrix Help". 2000.
  3. ^ Jeff Tyson and Tracy V. Wilson. "How Computer Keyboards Work"
  4. ^ "Understanding the Switch Matrix"
  5. ^ Jim Cairns. "Keyboard Encoders" http://www.jimspage.co.nz/encoders.htm

See also