Duplex: Matrix: Only use Trigger instead of Matrix - How to?

Hi,

I’m just trying to modify a duplex midi mapping.

I want to:

use the Application “Matrix” but replace the matrix buttons with trigger buttons. So, I can use the matrix to trigger/schedule patterns in my song. The original function of the matrix (mute/unmute single slots) is not needed. Instead of using the native midi map function I want to use duplex for LED support.

My setup:

  • Midi-controller: APC40

  • OS: Linux

I tried:

replace the following code in the midi-device-configuration file (“Slot” are the matrix buttons, “Trigger” are the trigger buttons)

applications = {
    Matrix = {
      mappings = {
        matrix = {
          group_name = "Slot",
        },
        triggers = {
          group_name = "Trigger",
        },

with

applications = {
    Matrix = {
      mappings = {
        triggers = {
          group_name = "Slot",
          orientation = ORIENTATION.HORIZONTAL,
        },

Result:

only the first 5 buttons (horizontal line) of my matrix (5 rows, 8 columns) are assigned. But I would like to have the whole matrix to work. It seems that the number of trigger buttons depends on the matrix dimension.

Tried solution:

I tried to modify the file “matrix.lua” and set the height variable to a constant value of 40 (5x8):

self._height = 40

Now, all buttons are flashing up in the right way, but only the first row of buttons is responsive.

Is there a way to get all buttons responsive?

Now, all buttons are flashing up in the right way, but only the first row of buttons is responsive.

Ugh, disappointing. Creatively hacking the control-map to create a “40-button tall” controller like that should have worked.

I’ll take a quick look. Check back tomorrow?

Yea, of course, no hurry!

Alright, just found an easy workaround:

In the controlmap file (in my case “APC40.xml”) simply set the number of columns from 8 to 40. This destroys the arrangement of the displayed buttons, but now all buttons of the 5x8 matrix work (also true for other functions e.g. using the matrix as “Navigator”).

It seems that the “greedy” button assignment somehow depends on the xml file.

In the controlmap file (in my case “APC40.xml”) simply set the number of columns from 8 to 40

Ah, if I’d read you post more closely I would have picked this up, sorry!

But yeah, this is what I call control-map hacking since the visual appearanceon-screen is no longer reflecting the actual controller.

Still, it would be nice/better to do this without having to modify the control map files - so I don’t consider this “fixed” just yet :slight_smile: