Page 1 of 1
MIDI FILTER COMBI MODE
Posted: Mon Sep 12, 2011 4:07 pm
by apex
Ok. This should be real quick... (I looked for another thread where this topic could kinda sit comfortably, but I couldn't find anything... So I started a new thread)
QUESTION
In one of my combis I assigned control slider 5 (user slider 1) to cc#01. (equivalent to pushing the pitch bender up)... but I didn't want all the programs in the combi to respond to it, so I went into the midi filter page and went to tab MIDI4 and I removed the red dot from all the boxes in the control slider 5 section except for the programs that I wanted to respond to cc01 modulation.
Well it didn't do what I wanted... All the programs in the combi were still responding.
I knew that what I'd programmed should have worked so I begin to think about it and consider other things that would have hindered it from working.
I FOUND IT!!!! tab MIDI2 has a section named JS+Y (which is the parameter for the pitch bender being pushed up SAME AS MODULATION)...
So if I remove those red boxes from the programs that I don't want to respond to cc01 then it works PERFECTLY!!!!
now here's my question... why didn't it ALSO work with the control slider 5 parameter. Does the JS+Y override the control sliders?
I guess at the end of the day it doesn't REALLY matter... but I'm just curious as to why it didn't work when I made the changes to the control slider filter section.
Thanks. M3 is a BEAST... but can't wait till I get my hands on that KRONOS...!!!!
Posted: Mon Sep 12, 2011 4:32 pm
by dumeril7
Sounds like a bug to me. In general the MIDI filters have worked for me as described, so I suspect it has something to do with the fact that a slider was assigned to a function usually assigned to the joystick. That's a less common arrangement and I'm going to guess that that's why it didn't get discovered in testing. But it seems to me that what you were doing should have worked.
D7
Posted: Mon Sep 12, 2011 4:51 pm
by apex
dumeril7 wrote:Sounds like a bug to me. In general the MIDI filters have worked for me as described, so I suspect it has something to do with the fact that a slider was assigned to a function usually assigned to the joystick. That's a less common arrangement and I'm going to guess that that's why it didn't get discovered in testing. But it seems to me that what you were doing should have worked.
D7
I had to figure out a way to control modulation from the m3m (because I sold the keys to my m3-88 ). the kurzweil stage piano that I connected my m3m to when I take it church doesn't have a mod wheel (as we are custom to).
I had to be able to control the modulation so I just assigned it to the user slider #5. was there a better option? thanks for the reply D.
Posted: Mon Sep 12, 2011 5:51 pm
by dumeril7
apex wrote:dumeril7 wrote:Sounds like a bug to me. In general the MIDI filters have worked for me as described, so I suspect it has something to do with the fact that a slider was assigned to a function usually assigned to the joystick. That's a less common arrangement and I'm going to guess that that's why it didn't get discovered in testing. But it seems to me that what you were doing should have worked.
D7
I had to figure out a way to control modulation from the m3m (because I sold the keys to my m3-88 ). the kurzweil stage piano that I connected my m3m to when I take it church doesn't have a mod wheel (as we are custom to).
I had to be able to control the modulation so I just assigned it to the user slider #5. was there a better option? thanks for the reply D.
Sorry I misunderstood your original post. I thought you were controlling pitch bend via the slider. (Pitch bend has its own dedicated MIDI message and its usually controlled by a pitch wheel, or in the case of Korg, the X axis of the joystick.) I didn't understand that by "pitch bend" you meant the joystick. I guess Korg is assuming that all mod wheel messages will be controlled by JS+Y so it has to be filtered out via that controller on the Filter tab. But like I said, in my mind what you were doing should have worked.
D7
Posted: Mon Sep 12, 2011 6:34 pm
by X-Trade
Similar situation on the Triton series when you want to control the volume of two timbres with different knobs - you can't.
The MIDI filter doesn't actually filter 'Knob 4' or 'JS +Y'. It filters what they send.
Because they are both sending the same CCs, it can't tell the two apart, so messages sent by either will pass through
similarly on Triton series you set knob2 & knob3 to 'Volume' (CC7), no matter how you configure the MIDI filter, both knobs will control the volume of both timbres.
Not a bug exactly, just a technical limitation of the way it is implemented.
In your case, the MIDI filter for Slider 5 and MIDI Filter for JS+Y are both looking for CC1. Doesn't matter which controller actually sent it.
Posted: Mon Sep 12, 2011 7:44 pm
by dumeril7
X-Trade wrote:
The MIDI filter doesn't actually filter 'Knob 4' or 'JS +Y'. It filters what they send.
Because they are both sending the same CCs, it can't tell the two apart, so messages sent by either will pass through
I don't doubt you're right about the way it works, but that's exactly opposite of the behavior I would expect. If its filtering what the controllers send, then I would expect those messages to be filtered no matter what controller sent them. (I would also expect the UI to reflect the message its filtering, not the hardware controller, but that's another matter...) To me, its a bug.
D7
Posted: Mon Sep 12, 2011 8:14 pm
by X-Trade
I'm quite good with software programming and logical analysis of things...
Looking into it I'm pretty sure that's why it works the way it works. There are clues elsewhere in the architecture and behaviour too. Generally it appears that the realtime controls are just MIDI controllers and it all gets bussed to the same stream of events which the synth engine then picks out the relevant bits of info from.
It's also probably the most computationally efficient way to do it.
Even if it's not exactly 'intended behaviour', that kind of architecture is the most likely cause of the symptoms described.
If its filtering what the controllers send, then I would expect those messages to be filtered no matter what controller sent them
If you filter out CC1 by checking the checkbox for slider5, the 'JS+Y' controller is still 'open', which in this case is also CC1. So effectively you are
not filtering it out.
As said, people have been complaining about it since the Triton and probably before. Instead of fixing their architectural approach, they just added a bunch of faders with a 'mix' mode. That solves it for what most people wanted to do with it (have different knobs control different timbre volumes)
Posted: Tue Sep 13, 2011 3:14 pm
by dumeril7
My degree is in computer science and I've been working in high tech software for 22 years. I'm not so bad on the tech side myself.
But like I said, I don't doubt the behavior is as you described. I just think that the behavior is wrong. If you have a GUI and a manual that implies or explicitly states that a function will filter slider 5, then by golly it ought to filter slider 5, no matter how it accomplishes that on the back-end.
D7
Posted: Tue Sep 13, 2011 3:18 pm
by apex
dumeril7 wrote:My degree is in computer science and I've been working in high tech software for 22 years. I'm not so bad on the tech side myself.
But like I said, I don't doubt the behavior is as you described. I just think that the behavior is wrong. If you have a GUI and a manual that implies or explicitly states that a function will filter slider 5, then by golly it ought to filter slider 5, no matter how it accomplishes that on the back-end.
D7
agreed....
Posted: Tue Sep 13, 2011 3:20 pm
by dumeril7
X-Trade wrote:If you filter out CC1 by checking the checkbox for slider5, the 'JS+Y' controller is still 'open', which in this case is also CC1. So effectively you are not filtering it out.
This is what I would consider a bug or at least a defective design. The way it should work IMO is that the slider no longer sends CC1, but JS+Y still does. The GUI and manual implies that you can filter these controls independently, and expecting it to behave that way seems reasonable.
D7
Posted: Tue Sep 13, 2011 5:23 pm
by apex
yeah... i'm just glad I figured it out. these instruments are VERY deep... I wonder sometimes if there is ANYONE that knows how to use every single feature, knows what every single parameter means/does... i mean truly knowing the synth inside out.
is there anyone like that FOR ANY modern day synths....even the people from the manufacturer?
oh yeah without ever having to go to the manual.
Posted: Tue Sep 13, 2011 6:59 pm
by X-Trade
Yeah, I agree that it's not what you would expect to happen necessarily. but that doesn't mean it isn't the way it is intended either.
I just have a feeling if Korg were to 'fix' it, their action would be to change or put a note in the manual!
My guess is that all the modulation gets bussed as MIDI to the same place so the timbres themselves can't tell where a message has actually come from - there is no differentiation between external and internal controllers, or sequencer even.
If you think about it, even from the GUI - you are filtering what is being received, not being sent. Probably just a linguistic misunderstanding between us, but hopefully you see the direction I'm coming from.
Posted: Tue Sep 13, 2011 7:45 pm
by dumeril7
X-Trade wrote:
If you think about it, even from the GUI - you are filtering what is being received, not being sent.
That's actually not the case. You're filtering what is sent as well. The Parameter Guide says, "On (checked): Transmission and reception of MIDI data is enabled."
However, there is one part you are definitely right on:
I just have a feeling if Korg were to 'fix' it, their action would be to change or put a note in the manual!
You are in fact correct on that. I found in the parameter guide (pg. 159) where it says: "Also, if the same control change is assigned to two or more controllers in the MIDI Filter pages 1–4 and 2–5, checking any one of them will enable that control change." So they did document it. Its still a non-intuitive and less flexible behavior IMO, but it is in fact working as documented.
D7