Possible to activate button lights in MIDI controller via MIDI mapping?

I’m experimenting with using an Ableton controller with a large grid of buttons and knobs for controlling djay.

In addition to mapping Looper banks, is there a way to also turn on and off the button lights on the controller via djay’s MIDI mapping?

I want to control loops with physical buttons but it’s pointless if I can’t activate the buttons’ lights for feedback of which loop is currently playing.

Otherwise, I have to remember which button is associated with the currently playing loop to turn it off again. That ain’t gonna happen during live performance!

I found these leads, though they’re far from comprehensive instructions that leave a lot of fundamentals for a newbie to figure out:

So far this is what I have been able to achieve with MIDI editing in djay:

All I can get it to do is start up the MIDIPLUS SuperPAD unlit, activate a chosen color when I toggle a loop on, and that’s it. When I toggle the loop off again, the LED can only turn to white (or no color change) and then won’t change at all on subsequent button presses regardless.

This is accomplished with the MIDI Out selected and the following parameters set:

  • MIDI Out: checked

  • Message: Channel 1 / Note on/off (this has to be Channel 1 or no lighting happens at all on Channels 2-16, while Control Change (CC) doesn’t seem to allow any LED access)

  • Control: 0 (00h) (this activates the LED of the top leftmost number 1 position pad)

  • Value: min 1 (this one causes no change when set to 0 and allocates different colors in blocks of numbers (like 33-48 is cyan) and changes color when I push the pad the second time while staying that color on subsequent pad triggering, see max below for first push color)
    Value: max 33 (this changes the color of the LED lit when pushed once, in this case cyan (apparently, numbers 33-48 all will make a cyan color appear on the buttons LED while other number sets within the range 0-32 and 49-127 allow the 6 other LED colors available in this MIDIPLUS SuperPAD device)

Not having this enhanced feedback makes the SmartPad pretty useless with djay unfortunately. I can’t have buttons that stay one color regardless because then I have to remember what loops are playing and on which buttons (and there are up to 40 loops available at a time!).

djayMIDIMapping File is Left to Explore

I know about the djayMIDIMapping file that djay produces when you start editing a map, but I don’t know how to find out what I can add to this file for more advanced instructions. There’s probably some way to get more mapping instructions available to this device, but I don’t have a lead on what those are. Maybe the company can help, but I seriously doubt this Chinese company is going to have special instructions for how I can integrate djay better.

Hi @CliffyPop,

The “min” and “max” values you can set in the advanced control options are the MIDI values that are sent to the MIDI controller when the selected action turns “off” or “on” respectively. For example, if you map a button on your MIDI controller to the Deck → Play/Pause action, the “max” value will be sent when the deck starts playing, and the “min” value will be sent when it gets stopped.

For the looper actions, the “max” value is sent every time the sample starts playing, and the “min” value is sent every time playback stops. Setting values for min and max that correspond to different colors should allow you to have the sample’s playback state be reflected on the pad.

If that’s not the case for you, maybe you could send a quick video showing the behavior you are seeing?

@Anders, thanks so much for taking time with me on this!

Here’s a video showing djay MIDI mapping settings, the SmartPAD controller lighting up correctly, and the issue where all pads change color on the first press but then remain the same color regardless of subsequent presses and loops playing or not:

To be clear: I want the pads to load in the colored columns as shown, turn white to indicate a loop is playing, then return to original colors when loops are not playing. This way I have constant feedback on which loops in the columns are activated or not at all times.

I’d second this question. More midi development, including modifiers/shift buttons are needed. @CliffyPop have you been able to figure out how to make the shift button/modifier work?

Yes, @adrenal, I can create shift commands. Way it works with my setup is I hit a button and set it to General > Controller Shift Key (see row 1, Note B8 in attached screenshot).

Next, I created the button to apply a shift onto (row 2, Note F8). This could already exist if you had some key previously specified.

Finally, when I pressed both simultaneously, djay generated the 3rd option with “SHIFT” specified (row 3, note F8 (SHIFT)) which I could then apply any djay action to.

Screen Shot 2021-09-17 at 12.43.22 PM

Epic, thank you for the info! Have you found a command to “open/expand” file folders in the playlist folders? I can’t locate anything that works. Desperately need that

Thanks for the video, very interesting. That’s not how it should be behaving.

Can you try one thing for me: after you play and stop a sample, and the button is still white, can you press the „Test“ button in the advanced MIDI settings in djay? This will send a sequence of max, min, and then the current value (i.e. min if the sample is stopped). Does that do anything with the button LEDs?

Btw. you can see what MIDI values djay sends the controller using this MIDI Monitor app, maybe that’s helpful:
https://www.snoize.com/midimonitor/

Not sure if it gets you what you need and you prolly already found the one Music Library section.

Looks like you can toggle open the library in a few different configurations and focus on playlists and tracks. Then you could assign arrow buttons to navigating up and down with Select Next/Previous Track commands.

Screen Shot 2021-09-17 at 2.00.55 PM

Tried everything I could. I can get it to focus on playlists and folders, so on the left, or tracks, on the right. Can’t get any selection to open or expand playlists though. Do you understand what I mean there? If not, Let me try to get a screenshot.

Where the arrow points is what I need a midi controller to “click” to expand and open.

I see. I don’t think there’s a way to target a specific folder. You can open the library as an overview and then navigate to folders and tracks in it (but not target specific folders). At least I can’t find a way to do it.

I can actually move to the folders and scroll through them, but there is no click that opens the folder that I can find (meaning the little “symbol”. In Traktor, I can click on that with a button on the controller and that will open that folder so I can then scroll through the playlists contained.

If you need help i can show you the control I use to change the focus between the playlists and the “tracks”.

Thanks, I just realized that switching between capability was built into the default map with my DJ controller using a button/knob control with shift/button hit to go back. I’ll be using that a lot from now on!

You mean swithcing between the folders/playlists or tracks?

I’d say both (at least on iOS, haven’t tried on MacOS). My deck has a typical knob / button combo dedicated to library nav.

For example, when viewing playlists, turning the knob scrolls through the lists available. Pushing it then goes into the selected list where turning scrolls through tracks. Shift-knob press returns up a level to the playlists again.

Shift-knob turning jumps between playlists, artists, albums, and genres.

Thanks again for looking into this, Anders.

When I start a loop then stop it with the button staying white, test doesn’t change the color. The button stays white.

I believe the test button is sending something but it’s not clear how or when the SmartPAD is accepting them. It seems like the SmartPAD accepts these MIDI out signals from djay at first but then maybe ignores them afterward. Not sure.

  • Test 1: All LEDs are on and hitting pads to start/stop loops (which causes pads to turn white). Nothing happens when hitting Test repeatedly on any white buttons. Hitting Test on any pads not triggered (those in the colors loaded with) turns them white and no change on repeated Test attempts.

  • Test 2: All LEDs are on and no pads triggered nor samples played. Test causes button to turn white. Nothing more happens when trying Test again. Hitting Test on any pads not triggered turns them white and no change on repeated Test attempts.

  • Test 3: All LEDs are off and no pads triggered nor samples played. Test causes any button to turn white. Nothing more when trying Test again.

NOTE: All pads unlit can be achieved by switching modes on the SmartPAD (it has 4 total) and then switching back to the original mode (which is attached to MIDI notes aligned with the djay MIDI map I’ve made). Afterward, all pads work and trigger loops and the white LEDs result even though all other LEDs are off. Switching MIDI maps in djay’s MIDI configuration window when SmartPAD is in correct mode will cause LEDs to illuminate like a refresh.

I can also make LEDs light up using Test in other colors by changing the Value min/max numbers, but, like above tests, once the color has been triggered, colors won’t change on subsequent Test MIDI out signals even if I change the values to other colors. I have to reset the SmartPAD by changing to a different mode then back again to be able to send Test events to change pad colors again.

So test in all situations Test seems to only work once and then SmartPAD ignores anymore.

MIDI MONITOR RESULTS

SmartPAD seems to be sending signals normally. When I press a pad, I get immediate on/off notes as expected. The following attachment shows triggering the first pad (and the first Kick loop in djay) and then hitting the pad again to stop the loop. 4 events are recorded:
Screen Shot 2021-09-21 at 10.45.48 AM

Unfortunately, I can’t find a way to see MIDI events coming from djay despite selecting “Act as a destination for other programs” checkbox. So I have no idea what MIDI events djay is producing.

You should have an option “Spy on output to destinations” in MIDI monitor, which allows you to see what djay sends to the controller.

To me it sounds like the controller might have specific behavior in its firmware that disregards subsequent MIDI messages. Maybe you could check its documentation, or if spying with the MIDI monitor doesn’t work try to use a different app to send MIDI messages to the controller? If you don’t have one, MidiKeys is a simple way to send MIDI messages for testing.

Ok, I finally got MIDI Monitor to spy on djay. Thanks for your patience here, @Anders.

Below is a screenshot that clearly shows djay is sending the correct MIDI notes at what appears to be the right times, yet SmartPAD is ignoring the messages to return pads to initial LED color.

Seems like there’s an issue with SmartPAD because it looks like djay is behaving properly. Only thing that comes to mind is that maybe the time is a factor and the note on for an LED color change is fast enough that the SmartPAD can’t parse it in time or something. I don’t know enough about MIDI to know what the common problems are.

Any ideas are welcome.

To better show what’s happening to the SmartPAD developers, I made a new video that shows the SmartPAD LEDs, plus djay’s MIDI Mapping window, plus MIDI Monitor logging MIDI messages in real time: