joystick
joystick · utility · schema v1Manual XY controller emitting four bipolar CV outputs. Drag a virtual stick inside a square pad: center = (0, 0), the corners reach (±1, ±1). Outputs the raw X and Y plus their inversions (nx = −x, ny = −y) so you can drive quadrature or mirrored modulation from one hand without copying and inverting downstream. The card snaps back to center on pointer-up; at the audio layer the module is pure — whatever the position params say is what comes out (four ConstantSourceNodes).
the faceplate
0 inputs · 4 outputs · 2 params
outputs
| id | cable | what it does |
|---|---|---|
x | cv | The stick's horizontal position as bipolar CV, −1 at the left edge through 0 at center to +1 at the right edge. control voltage (CV) |
y | cv | The stick's vertical position as bipolar CV, −1 at the bottom through 0 at center to +1 at the top (the axis is flipped so dragging up reads positive). control voltage (CV) |
nx | cv | The inverted X output (−X): +1 when the stick is at the left edge, −1 at the right — the mirror image of the X output, for driving two things in opposition from one axis. control voltage (CV) |
ny | cv | The inverted Y output (−Y): +1 at the bottom, −1 at the top — the mirror image of the Y output. control voltage (CV) |
params
| id | label | range | default | curve |
|---|---|---|---|---|
pos_x | X | -1..1 | 0 | linear |
pos_y | Y | -1..1 | 0 | linear |
controls
| control | what it does |
|---|---|
| X | The stick's stored X position in the −1..+1 range, written by dragging the pad (and snapped back to 0 on release). It is the persisted value behind the X / NX outputs; it survives a patch reload. |
| Y | The stick's stored Y position in the −1..+1 range, written by dragging the pad (and snapped back to 0 on release). It is the persisted value behind the Y / NY outputs. |
source
joystick.ts on GitHub.