Touch-Keys

8 voice multitouch keyboard


The PdParty scene has two pages, called Touch and Setup, which can be accessed by the blue button in the lower right corner.

Touch is the performance page, Setup for fine-tuning the y-values when touching the screen. This might be necessary on different iPad and iPhone models.


Touch – main (performance) page


touch zone

In the white area notes and other Midi events can be generated. 

• Horizontally: Note Numbers, Pitch Bend, Modulation Wheel.

• Vertically: Note(On) Velocity, Channel Pressure, Polyphonic Aftertouch.

NoteOn events are restricted to the touch zone.


Upper grey bar

The sliders have two functions each and can be toggled by the leftmost and rightmost buttons.

• Left: Transpose (-5/+5 octaves) / Modulation.

• Right: Range (1–10 octaves) / Volume.

Modulation – area between the sliders, on touch: Control Change 1 maximum (127).


Lower grey zone

Channel: Midi Channel

SendPort: Midi Output Port 1–4, depending on the settings in PdParty

Pres: Channel Pressure (vertical)

Touch: Polyphonic Aftertouch (vertical)

Rel: 

If toggle is off, Pressure and Aftertouch have absolute values on the y-axis.

If toggle is on, Touch Down is always zero and movement is relative to the staring point.

PitchBend: horizontal sliding with a fixed range.

continue: 

If toggle is off, Touch Up (releasing the finger) snaps back PitchBend to zero, similar to a pitch bend wheel.

If toggle is on, Touch Up does not reset, instead PitchBend continues with the value on next Touch Down.

ModWheel: horizontal sliding with a fixed range.

Channel Pressure, Pitch Bend and Modulation Wheel are working with voice #1 only, voice #2–8 are ignored.


GLISS: sliding horizontally results in a chromatic glissando.

Gl-poor: glissando-notes are created only, if the y-value (Velocity) changes, too.

A perfect horizontal move would not play any notes, but it is more likely that just some notes are filtered out. In combination with Hold, this will result in random chords, for instance.

last Gl: the last NoteOff of a glissando is suspended.

Touch64: automatic Hold (CC 64), when one or more fingers are touching the screen.

   Hold turns off, if the first finger (voice #1, i.e. touch id 1) is released.

Hold: Control Change 64.


Setup – scaling y-values


PdParty automatically scales GUI objects of the Pure Data patch to fit the screen. But this is not always exact, due to the screen resolution of different devices. In consequence, also touch positions do not match exactly. X-position is not affected, because the patch uses the full with of the screen, but the hight is divided into segments.

Therefore y-positions can be fine-tuned with the sliders top, bottom and border (iPad layout only).


Touching different spots of the screen will show corresponding values in the number boxes on the left side.

• Tapping on the upper line that goes thru the label Midi 127 should result in MIDI value 127 (and in scaled-y value 0, respectively). If necessary, adjust the value with slider top until you get the correct result.

• Do the same with slider bottom to get MIDI value 0 (and scaled-y value 1) when tapping on the lower line that divides the background into grey and white.

iPad only:

• The area between Midi 127 and border is kind of a safety zone, that extends NoteOns with Velocity 127. Adjustable with slider border.

On iPhone, border is identical with top.


Save:

The values of the sliders can be stored into a text file and will be auto-loaded on next launch of the scene.

Load:

Restore the sliders to the saved values.


Touch-Keys by Josef Novotny, 2024