Moderators: garth, User Customization Moderators
Sniffing your controller
First, try using the MIDI Learn functionality in the Preferences→MIDI Devices window at the bottom (in Mixxx 1.7.0 and higher.) It will help you get many of the essential functions mapped quickly without having to do any hacking.
If you don't have the MIDI spec for your controller, first check the manufacturer's web site under Support. Look for Manuals or User Guides. MIDI specs are usually given in an appendix at the back of the manual. Failing that, you can usually sniff the MIDI data the controller sends with the following procedure:
Start Mixxx (1.8.0 and later) from a command prompt using the –midiDebug option like so:
Linux:
user@machine:~$ mixxx --midiDebug
Windows: (v1.7.0 and later)
C:\Program Files\Mixxx>mixxx --midiDebug
Mac OSX:
$ open -a mixxx --args --midiDebug
Look at the output
Watch the console output or look at the Mixxx.log file which will contain all of the MIDI messages Mixxx receives. As you manipulate the controller, the MIDI commands it sends will be printed to the screen/logged to the file. Compare the status (first) byte in each line with the table above and note which button/slider/control sends what message.
For example, when you move a slider, you might see
Debug: [...]: "MIDI ch 1: opcode: B0, ctrl: 2, val: 3D"
Debug: [...]: "MIDI ch 1: opcode: B0, ctrl: 2, val: 3A"
Debug: [...]: "MIDI ch 1: opcode: B0, ctrl: 2, val: 3D"
Debug: [...]: "MIDI ch 1: opcode: B0, ctrl: 2, val: 3B"
Debug: [...]: "MIDI ch 1: opcode: B0, ctrl: 2, val: 3C"
In this instance, it's sending 0xB0 (which when we look at the table above, we see that it's a Control Change message on channel 1) We also see that the second byte, 0x02 in this case, is the control number that was moved, and the third is the value or position of that control, which you can ignore for the purposes of mapping.
Add the byte values to a <control> block in the XML file
Just plug the first two bytes into a <control> XML block for <status> and <midino> respectively. This is detailed in the next section.
mixxx --midiDebugcd "C:\Program Files\Mixxx"mixxx --midiDebugReturn to Controller presets/mappings
Users browsing this forum: No registered users and 2 guests