Cadence-XY Controller is a simple XY widget that sends and receives data from Jack MIDI.
It can send data through specific channels and has a MIDI Keyboard too.
This tool can be executed as 'cadence_xycontroller'.
A screenshot follows showing the piano, running under
Another screenshot, now running under Windows 8:
The XY widget is controlled by the mouse, and it syncs its values to the X and Y knobs. Moving the knobs will change the XY cursor accordingly.
The "Smooth" checkbox will make XY cursor changes smoother (the cursor will follow the mouse with inertia), but it will not change the knobs' behaviour.
There's also a MIDI-keyboard that is usually hidden (use "Settings" menu, "Show MIDI Keyboard" to show or hide it).
You can use the mouse or keyboard to trigger notes. The keyboard uses a 'qwerty' layout.
The first thing to do after starting this tool is to make the proper JACK connections so that it outputs the data somewhere (Catia does the job nicely).
Cadence-XY Controller can both receive and send MIDI data. This data will not pass-through, which is intentional and not a design failure.
MIDI channels used can be specified in the "Settings" menu. If data is received on a channel it's not set to listen to, such data will be ignored.
MIDI data will be sent whenever the keyboard or XY cursor changes. When everything is stationary, no data is sent.
MIDI-Keyboard actions will send regular MIDI note-on/offs. XY cursor changes will send MIDI data that look like this:
Status: 0xB0 + channel - 1
Control: 0x01 (Modulation, as defined in "X Controls")
Value: X value percentage * 127 / 100
Cadence-XYController is available in the KXStudio repositories and ArchLinux AUR ('cadence-tools' package in the KXStudio repositories, 'cadence' in AUR).
ArchLinux (AUR)
Debian/Ubuntu (via KXStudio repositories)
Pre-compiled binaries are available for Linux and Windows (part of the Cadence bundle).
Linux 32bit
Linux 64bit
Windows 32bit
The latest source code is hosted on github, together with bug reports, feature requests, etc.
Source code
Bug reports / Feature requests