Midi talks from Behringer X32 to DMXControl 3.2.2

  • Hi to all,

    I'm new to DMXControl 3 and never used former versions of the program. I'm new to light control any way...


    I managed to set up a theater/music show in DMXControl to drive backlights, frontlight and venue light overall with total of around 22 fixtures in a single cuelist. Not a BIG deal, but to start with this is an interesting experience, for me.

    The show does not need more than that any way. The cuelist counts now 54 cues and will be expanded to around 65-70 cues.


    My problem is that I also have to manage the sound console ... and I have only 2 hands, like all of us. 8o

    I thought to connect my Behringer X32 (which supports midi in/out, cues and scenes, almost identical to what exists in DMXControl 3) and the 'GO'-button on the console via midi to DMXControl running through the cuelist.

    I think I got it wright at the Behringer side (each cue can send a dedicated or identical midi command. But I still miss the connection cable between the mixer and my PC (ordered, not yet delivered) and at this point I cannot do any test. I the meantime I try to figger out how the setup in DMXControl 3 works, but I'm confused concerning that setup of midi at the DMXControl 3 side.

    I don't understand how the incoming midi data will be translated to a command like 'GO'. Using IA? But I see no midi-references there.


    In IA I can make it work for a keyboard, ie 'RETURN' or 'ENTER' activates the 'GO' on my cuelist and the 'BACK'-button activates the 'BACK' on the cuelist. That works fine. I also know how to activate and deactivate this behavior. Great stuff!!

    But I don't see references for midi, unfortunately. I imagine it must be possible. I'm on a dead end... :argh:

    Can somebody help me out, please? Making this to work properly would be a big thing and more relaxed working during the shows.


    Thanks for any help.

  • nutzer99

    Approved the thread.
  • Hi and welcome in our forum,


    the IA is the right place to link the midi input to the cuelist in the same way you have linked the keys of your keyboard. However, there are a few steps missing to get it working. The first thing is to configure the midi controls. For an easier description, I took my Traktor Kontrol F1 as an example device in my following screenshots. I describe the setup first without connecting the midi device to meet your current situation. First, open the "Midi Manager" (in the top menu bar, "Settings"=>"Midi Manager").



    The Midi Manager has two sections, the upper one with the midi devices, recognized by DMXControl 3 (here you can see my F1 and the Windows Synthesizer) and the lower section with the so called rule sets. We start by adding a new rule set by hitting the "Add rule set" button. A new table row appear in the lower table. This rule set describes the controls, we have on our midi controller (or at least the ones, we want to use). By double-clicking this new entry, another window opens. There we add the controls (here called rules).



    I added a button and there are now plenty of information :D In short, in the table on the left, there are the controls. We give this button a name e.g. "Input Button". On the right there are many settings, on how this button works. In detail, there are settings, which midi messages are the enable and disable messages (and some other settings). For now, we leave them as they are (they will get relevant when we connect our midi device). But for now, we close this window and have now a rule set with one rule. And now, our button pops up in the Input tree of the IA.



    Now, you can connect this input as the keyboard inputs. If you have received the midi cable, then you can link the midi input with the rule set. For this, you open the Midi Manager again, and add the ID of your input device to the "InputDeviceID" column like I did in the next screenshot with my Kontrol F1:



    After that, we have to learn the controls in our rule set. Fortunately, the rule set configurator has a learn function. So we select the according rule / control and hit the "Begin learn" button. Now we can send the according midi message from the controller for on and off and the rule is configured. This should look like my configured button:



    Now, a midi message should trigger the midi input in the IA like in my test:



    I hope, this little guide helps you to configure your midi input.


    However, at the end of this guide, I want to give some words on the midi implementation in DMXControl 3. This input type is in a kinda unfinished state. It was a plugin, which was copied in the core code of DMXControl 3. Thus, the UI of the Midi Manager does not fit well into DMXControl 3 and there are some issues (like the unreadable text, if you edit a table entry in the dark theme, etc.). Also, the backtracking (the return message to the midi controller) is kinda working, but somehow unstable and not officially supported yet. There will be a major overhaul in a future version (beyond V3.3) to fix those issues. For those fixes, we might have to break the current implementation (but we don't know this yet). So there is a possibility, that you have to reconfigure your midi input in a future version.


    JP

    im Falle eines Falles klebt Gaffa einfach alles, denn Gaffa ist dein Freund und Helfer :thumbup:

    Edited once, last by JPK ().

  • Hi JP,

    Thank you so much for this guide on midi interfacing in DMXControl3.

    I did the setup partly up to the learning part and it works fine.

    I expect the midi cable to be delivered today. I do an update here once I completed this setup and got it working or not.

    I hopefully get it working since the gigs are coming up at 11, 12 & 13 of november 2021. I only need 1 button for 'GO', eventually a second for 'BACK'.

    Thank you too for the information about the near or distance future of the midi implementation in DMXControl3. Reconfiguring mdi will not be a big problem.

    Great job you're all doing with DMXControl. I love it!

    I'l keep you informed about this setup.

  • I connected the midi device upon reception and it set itself up in Windows 10 (prodipe MIDI USB 1 IN / 1 OUT - bought at Thomann).

    After the setup finished I started DMXControl3.

    I completed the setup in DMXControl3 as you described but nothing happens in the CUELIST in DMXControl3.

    These screenshots show you the setup:


    In learn mode, I get immediately data drom X32 when I press the GO-key on the X32. I suppose the midi connection is operational at that point.

    But the cue in DMXControl3 is not making progress when pressing the GO-key on the X32.

    I must have done something wrong...

    So I deleted everything in de midi setup and the IA and started over ... the exact same result.

    Should I check the midi setup in my X32?

  • More information on this issue.

    I made some traces from the midi messages that the PC receives from the X32.

    First situation is when the midi settings for each cue change is set to 'off', this means that no additional midi message is send when changing from cue to cue.

    This shows the settings as they were for all cues on the X32, but now only for the first line since I tried other settings (see lower):

    This is how the midi monitor looks when running thru the cuelist. On each 'GO' hit on the X32, 2 line are send over midi:

    The first midi message is generated when restarting the cue list from a random point in the list to the top of the list. Remember: these messages go by pair (2 line for 1 action)

    As you can sse too. The second line of each pair contains as DATA an incremental number by 1, starting from 0. This refers to the line number in the cue list.

    The first line of a pair is a unclear to me.


    When I set on the X32 'off' to 'Control Change' (CC) in stead of 'Off'. The monitor shows this behaviour:

    An additional midi message is send, in a static format and on a the same channel.

    Is it possible to detect this?

    I tried to change the learned message in DMXControl 3, but I can't make it work at all.


    I need some assistance on this.


    I'm sure now that the midi link works OK, and I know now too what X32 is sending out. It's only a matter of configuring DMXControl 3 to intercept the midi communication.

    I'm almost there...

  • Hi,

    sorry for my late response. I'll try to get some free time this evening (german local time) in order to reproduce the problems you are facing.

    In learn mode, I get immediately data drom X32 when I press the GO-key on the X32. I suppose the midi connection is operational at that point.

    From my point of view, the connection also seams to be operational. I think, I only missed a crucial detail in my guide. But without testing, I can only guess, what it is. The only thing I see in you screenshots (without testing) is, that the checkbox "Input Used" is not checked. It is not checked in my screenshots either, but maybe this will do the difference (and is only a display issue in my screenshot).

  • OK. I already tried this, but it makes no difference. The only way I could make it work ONCE was to change the 'value' field in the rule to 1. After that, it worked just 1 time. This behavior is already described in other posts about midi issues, but I could not find any solution at this behavior.

    I send you another couple of screenshots that show the current midi settings per cue on the X32 (all identical for all cues) and the configuration of the rule in DMXControl 3. But I am not sure if what I'm doing in DMXControl 3 is correct or in line with the settings in X32. I can confirm that the 3rd midi message is in this case consistant channel 1:"B0 00 01" (see also the midi monitor).

  • Good morning!


    Did you try to send a note instead of Program Change or Control Change? The values in the MIDI configuration in DMXControl 3 seems a bit strange from my point of view. I miss for example a value like 127, when the button is pressed as you can the it in the 5th screenshot from JPK.


    Best regards, Stefan.

  • Hi Stefan,

    I see what you mean about the 127 value. But, the X32 is sending other messages over midi than JPK's Kontrol F1 (midi monitor screenshots). It makes no sense to put in values that are not send out bij the X32. That is why I send also a screenshot of the midi monitor that shows the hex-code of the midi messages. 'BO' = 176, ie. as message id., followed by '00' and '01' as data1 and data2.

    No, I did not try note. But, I did now. This generates 2 extra midi messages, one with id "90", the next with id "80" (both hex-code) and data1=00, data2=01. But it does not work either.

  • Hmm... Okay. Usually, the origin of the values should does not matter. In the past, I always brought my MIDI device to a configuration, that is easy to handle in DMXControl 3. That includes for example the point "Note" for buttons.


    While typing this message: did you change until now one time the value for the field value, which is shown in your last screenshot? Maybe this is the related value to Data 2 in DMXControl 3. What happens, when you change them to 127? The point is: DMXControl 3 rescale the incomming values from the range 0 to 127 to the range 0 to 1. So maybe DMXControl 3 works also with the current configuration but you can't see the change. The cuelist want to receive a 1, that they trigger the next cue. Otherwise you can add a Binary Switcher Node between the MIDI input and the cuelist node and set the switch threshold a bit below to 1/127 = 0,007874 - so maybe 0,005 could be a good value in the properties of the node.


    Any more ideas I don't have for the moment unfortunately, especially without any direct access to the software and the sound console.

  • There is also an issue with the learning process for rules.

    This is the same action on the X32 console seen from the midi monitor and interpreted by the learning process of rules:

    As you can see, the learning process confuses different messages for the 'Disablemessage' control type. It sees message 192 on channel 3. In reality it is channel 1. Or istcould be message 194 on channel 3 in stead of 192...

    This is very confusing and I don't understand the mechanisme of this learning process. There should be coherence between what the midi monitor shows me and what the learning process result is. But it is not. Can someone clarify how this works?

    And perhaps even more important: how DMXControl 3 intercepts and interprets midi messages?


    I also read post "EIN MIDI KEYBOARD ZUM STEUERN" of BB_BOOM about similar problems. I tried to apply the solution that worked for him, but without succes. I modified the rule variables manually like he did, but it does not work. I'm wondering if DMXControl 3 is capable of detecting midi messages that are 3rd or 4th in line in a bunch of maximum 4 messages. Each hit of the GO-button on the X32 sends 2 midi messages (off) , 3 (program change & control change) or 4 (note), depending on the settings on X32.

  • Hmm... Okay. Usually, the origin of the values should does not matter. In the past, I always brought my MIDI device to a configuration, that is easy to handle in DMXControl 3. That includes for example the point "Note" for buttons.


    While typing this message: did you change until now one time the value for the field value, which is shown in your last screenshot? Maybe this is the related value to Data 2 in DMXControl 3. What happens, when you change them to 127? The point is: DMXControl 3 rescale the incomming values from the range 0 to 127 to the range 0 to 1. So maybe DMXControl 3 works also with the current configuration but you can't see the change. The cuelist want to receive a 1, that they trigger the next cue. Otherwise you can add a Binary Switcher Node between the MIDI input and the cuelist node and set the switch threshold a bit below to 1/127 = 0,007874 - so maybe 0,005 could be a good value in the properties of the node.


    Any more ideas I don't have for the moment unfortunately, especially without any direct access to the software and the sound console.

    OK. I've been away for a recording session...

    This explanation confuses me a bit and I'm not sure to understand 100% what you try to explain. Do you want me to put 127 in stead of 1 into the value field? Or put 127 as value in the midi message?

    Well I did change the midi messages in many ways, but nothing works. I'm still missing the good understanding how DMXControl 3 interprets the midi messages and I'm still confused about the learning process and why it is mixing up multiple midi messages.

    About the Binary Switcher Node: it is already there. It was added automatically when I created the link in IA. You can see this in this screenshot: Setting the switch threshold to 0.005 does not make thing work neither.

  • OK.I re-thought the whole situation and I suddenly realized that the X32 is a pretty advanced implementation of midi, included OSC and that perhaps the settings of the midi interface needed te be reviewed.

    So, I did. I switched off every specific setting, so I was left with the setting for the correct midi interface, no more, no less. All other check boxes were off. And that made the big difference.

    I defined for every cue one same note, applied the learn process within DMXControl 3 and ... tada ... it works.

    General midi settings on X32:

    Midi settings for a cue in cuelist:

    Rule settings after learn process in DMXControl 3.2.2:


    I can go on now and build the complete cue-list for the show in DMXControl and in X32.

    During the show I only have to hit the 'GO' button on the X32 and all mutes/unmutes will be set and the lighting will change accordingly. I can then completely focus on the sound and performance of the actors and musicians.

    A big releaf ... and perhaps other people will also learn something out of this.

    Thank you for everyone that helped me out.

    For me: case closed.

  • This are great news. Nice to see, that you have found the problem and a solution for it. I tried a few things to reproduce your situation. But without success. So thank you for sharing your solution and yeah, maybe some other people can benefit from it.

  • Now I have build the entire show in DMXControl 3.2.2 in 1 cue list containing 92 cues, which works fine for the purpose.

    But I still got issues when using the 'GO' button on the X32. It works for about 93% of the hits on the 'GO' button of the X32, meaning that in 7% a hit on the 'GO' button does not trigger the GO in DMXControl3. And on every test cycle through the cue list, it is always on another cue that the problem occurs. I even had it stuck for 3 hits in a row once and then went on on the 4th hit.

    This is very tricky to use on a live show since a mis hit will cause a misalignment between audio and light.

    I can confirm that the problem is not induced on the X32 because I also tested the midi reception on the laptop with DMXControl3 and I can see every hit of the 'GO' button with consistent data via a midi monitor. Every hit on the X32 is thus translated to midi message and is well received on the laptop. It seems as if DMXControl3 misses some midi messages for some reason.

    Any idea's?


    Suggestion: is it possible to integrate a midi logger (or monitor) into DMXcontrol (on/off) in order te be able to visualise what DMXControl detects (what is happening with midi in and out)? Perhaps an added value in the next midi development?

  • Finally, I got it all working without any flaw.

    This is the setup of the control area with the X32 mixer, 2 laptops, 1 extra screen, the midi connection and the dmx controller.

    All this needs to be controled by one person (me...):

    Schematics control area.pdf


    Remarks: I had to split the DMXControl GUI from the DMXControl Kernel to have no errors any more in the workflow. I suppose that the load on the old Dell 5500 was too much at some random moments.

    With this setup I can keep an eye on the progress of DMXControl 3 although I had no problems anymore yesterday and today on deep testing.

    The second Laptop (Dell Ivan) sends the DMX commands out, records 25 multitrack from the X32 and via a second display I can also keep up with the scenario.

    I know, much to do, but I can manage this thanks to the effort I put into making the midi work and the split setup of DMXcontrol over a dedicated network connection (I had the router available anyway for remote control of the X32 in my flightcase).


    About my suggestion for a midi logger in the previous post: I think it is still valuable, but I managed to configure the 'Midiview' app in a way that it sits between the midi interface and DMXControl without disturbing anything (only for debugging reasons). I could observe that DMXControl effectively, at some random moments, misses a midi note message. I could never determine with certainty what was the cause. As I said, I think this old laptop, running on windows 10, may be having performance issues rather then DMXControl having to blame. Running everything on 1 laptop (Dell Ivan) was no option too since I need 3 screens to get visualise everything I wanted (and eventually intervene when needed).


    I hope someone finds this information usefull or not ... I think this feedback has his merits anyway.


    Thank you for all the help. I'm happy all works fine.

    Sad to say ... but the 3 gigs are suspended again for covid-19 reasons in the local community. The work is done, I'm ready now.