Mixxx needs your help: Documenting controller mappings

Hello everyone!

Starting with Mixxx 2.3, we will include documentation for controller mappings shipped with Mixxx in the manual. Unfortunately, Mixxx still has a number of old controller mappings that are not properly documented. This is a problem because the mapping might not always obvious and users have to press every single button to find out what it does.

If you’re using Mixxx with a built-in controller mapping, it would be great if you could check if you are using any of the controllers in the list below and contribute some documentation in that case.

Here’s the list: https://github.com/mixxxdj/manual/issues?q=is%3Aissue+is%3Aopen+label%3Acontrollers

Thank you!


I have a Novation Twitch, and am happy writing docs, but the mapping that currently ships with Mixxx is not worth documenting. It uses Twitch Basic Mode, which offloads most of the work to the controller, but it’s effectively incompatible with Mixxx. The Twitch touchstrips are literally about two orders of magnitude too sensitive, and four of the buttons are unmappable. You have to map the Twitch in Advanced Mode (where you have complete control) to make it work properly with Mixxx.

People have written Advanced Mode mappings before, but they all seem to be abandoned or incomplete. I’m working on a new mapping now, and can program already, so have been making good progress, but I’m new to Mixxx, so I don’t want to commit to anything here and now.

As it stands (unless I overlooked something in the forums), Mixxx does not have a usable mapping for the Novation Twitch.

1 Like

Yeah, it’s always sad to see people investing time to write a mapping but then don’t finish it and get it integrated into Mixxx.

Some tips for writing your mapping:
Clone the Mixxx Git repository and use our pre-commit hooks. That will set up automate code checking and warns you if something violates or code style guidelines. That way you save a lot of work and don’t have to spend time reformatting your code when getting the mapping integrated into Mixxx.

Also, file a draft PR on GitHub early even if you’re not ready. That way you can get tips early on.

Also: github.com/mixxxdj/mixxx/wiki/Contributing%20mappings

And feel free to drop by on Zulip if you need help or have questions regarding development. We’re usually more responsive there :smiley:

1 Like

Again, @hlzhs, you’re a legend. Thank you.
See you around.

@hlzhs Should this topic be sticky?