MIDI Target Manufacturer(s): Roland
I made a layout, double-checked all controls functionality (working with sysex single parameter changes) and they all work fine.
Then I created a button that would call a set of sound data from the target synth as one long sysex message. A streambyter input rule would then look up each value from the incoming message, re-create the according single parameter change again and send it to the layout. I double-checked each single control in the layout and they all adapt perfect to changed settings in the target device. So both the button for calling data as well as the input rule seem to work fine. I also looked into the log, which confirmed that data sent into the layout are correct.
However I have a few cases, where the sending control A has a supercontrol B, which is again supercontrolled by C (e.g. by a knob for grouping two buttons). Now when I send a single parameter change from the target device to MD for the function controlled by A, all controls in the supercontrol chain adapt properly to changes.
But if I call the settings from the target using the above mentioned button, where I get a long list of values, all the controls of that described chain of supercontrols start to get crazy, jump back and forth and thus create a couple new sysex messages, which are then sent back to the target.
This is of course not intended at all. The layout should just receive the data, adapt to them and not send any new messages back.
I add a screenshot from MIDI Monitor, which I use on my computer, where all devices are connected to. The first message is from the button in the layout calling the data set from the target. The second message is the (long) answer from the target device. All following messages are created and sent from the layout back unintentionally. The last three bytes before the F7 here are parameter number, parameter value and checksum. As you can see some parameters are sent repeatedly with different values.
Any idea what the problem could be? Normally when the layout receives data and adapts to them, nothing should be sent out in return.
I should probably add, that the amount of unintentionally sent data varies each time. Sometimes it is a lot more than shown in the screenshot. One single parameter can be changed 5 or 6 times.
Images
Bildschirmfoto 2021-11-05 um 20.04.39.png