[MIDI conf] no more a nightmare

:control_knobs: DJ MIDI Studio v0.45.0 — A new way to manage DJ MIDI mappings
Hey everyone!

I’ve just released the first public version of DJ MIDI Studio, a desktop application designed to make DJ MIDI configuration easier to inspect, understand, edit, and route.
It currently focuses on workflows involving Serato DJ Pro, Traktor, and MIDI hardware, with support for controllers such as:
• Pioneer DDJ-XP2
• Pioneer XDJ-XZ
• DDJ-1000
• DDJ-FLX4 / FLX10
• DDJ-REV1
• Numark Mixtrack Pro FX
• Hercules DJControl Inpulse 500

What it can do
:level_slider: Explore MIDI mappings by channel, deck, or controller
:control_knobs: Visualize controller layouts with pads, knobs, faders, jog wheels, and mixer controls
:puzzle_piece: Edit and validate Serato MIDI mappings
:satellite_antenna: Monitor live MIDI messages
:repeat_button: Route MIDI between hardware, software, and virtual ports
:three_o_clock: Work with MIDI Clock, Ableton Link, Serato, and Traktor-related workflows
:musical_keyboard: Capture MIDI controls and detect double-click / shifted pad-mode commands
:books: Browse bundled controller documentation and MIDI reference material
:shield: Validate configurations before saving or exporting them
:package: Download native builds for macOS, Windows, and Linux

The goal is to provide a practical bridge between DJ software, controllers, MIDI interfaces, and external hardware — especially for complex setups involving multiple devices.

:handshake: Help shape the project
DJ MIDI Studio is built for real-world DJ setups, and I need your help to make it genuinely useful.
Every DJ setup is different, especially when combining several controllers, MIDI interfaces, DJ software, and external hardware. Your feedback can directly influence the roadmap and help prioritize the features that matter most.

You can contribute by sharing:
• Your hardware and software setup
• MIDI routing or synchronization challenges
• Controller mapping files and MIDI logs
• Feature requests and workflow ideas
• Bugs, screenshots, and reproducible test cases
• Feedback about the user interface and documentation

You don’t need to be a developer to contribute. Testing the application with your setup and explaining what works — or what does not — is already extremely valuable.
If you are interested in helping, please open a GitHub issue or reply here with details about your setup. Together, we can make DJ MIDI Studio a reliable tool for complex DJ and MIDI workflows. :musical_notes:

Download and documentation:
:backhand_index_pointing_right: GitHub: Release DJ MIDI Studio v0.45.0 · guillain/DJ-MIDI-Studio · GitHub

Please note that the macOS build is currently unsigned, so macOS may display a Gatekeeper warning. This is expected for the current release while proper Apple signing and notarization are being prepared.

If you try it, I’d love to hear about your setup, what worked, and where the workflow could be improved! :rocket:

This is pretty interesting. Keep it up!

Few suggestions from a quick test.

  1. IDEA - When setting up a new controller you can’t select multiple rows to say assign everything to the same section at once. Couldn’t find a way to upload an image in the UI.
  2. IDEA - I think allowing users to submit their manually setup controllers from the app will be big in the early stages of the app since it and contribute different device configs so new ones don’t have to do it manually and the supported device list is community fed.
  3. Only user actived devices should show up on the tabs. Right now it’s crowded with the defaults and this adds no value for someone who doesn’t own these.
  4. BUG - At the default window size on macOS a number of elements are being cut off in both dimensions

Hi @padi_04,

Thanks a lot for taking the time to test it and write this up — really appreciated. Your notes are based on a pre‑0.47 build, so a quick status on each point against the current line (0.47.7):

What’s changed since your test

  • Ableton Link follower — direct Link → 24 PPQN MIDI Clock output, packaged as a default dependency so it’s always available.
  • More controller profiles — DDJ‑1000, DDJ‑FLX4, DDJ‑FLX10, DDJ‑REV1, Numark Mixtrack Pro FX and Hercules DJControl Inpulse 500 on top of the XDJ‑XZ / DDJ‑XP2 pair.
  • UI/UX pass — app‑wide dark performance theme, denser Controller Setup panels, 3‑column MIDI output row, windows that shrink well below controller‑selector width, and MIDI Routing / Clock / Metronome config now persisted across launches.

Your specific suggestions

  • Multi‑row “assign to one section” in Controller Setup — not there yet; tracked in 15.
  • Upload a controller image in the UI — not possible today (the Controller Images tab is a static viewer); tracked in #16.
  • Submit manually‑built controllers from the app for a community‑fed device list — I really like this one, especially for the early stage. Tracked in #17 with the open questions (submission transport, moderation, licensing).
  • Only show devices the user actually owns — agreed, and it’s more crowded now with the extra profiles. Plan is a Preferences screen to enable/disable controllers, with the tabs showing only the enabled ones. Tracked in #18.
  • Elements cut off at the default window size on macOS — there’s been a lot of responsive work since your test, but I believe you it’s not fully solved. Tracked as a bug in #19 — if you can add which view it happens on, your macOS version, and a screenshot, that would help a lot.

Thanks again — keep the feedback coming.