New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve source character guessing for iCON controller #87
Comments
If that's of any help I had the same issue with knobs on behringer x touch compact. Sometimes they are detected as range, sometimes as button, sometimes as type 3 or type 1 as well. For instance with the following messages the knob got detected as type 1. 17: B0 3F 7F [CC63 LSB] chan 1 val 127 In fact I didnt look at it but it is an endless knob and I was turning clockwise even though it was at maximum value. Personally I think this is not the end of the world... One can just go back and check mappings. |
@DLongoni Is that endless knob configured to transmit relative messages or absolute ones? I mean, what would be the correct detection result in your case? |
The knob is configured to send CC values from 0 to 127. If turned clockwise the value is increased, unless it is already at 100%(showed by led ring around the knob itself). If the knob it's already at 100% and I turn it clockwise, value 127 is sent. The same is true for 0% and turning it counter clockwise. In that case the value is 0 of course. The correct result of the detection would be ranged element. But I'm not sure about how you could detect it... So this is the what currently happens in my case. Knob already at 100%, turn it clockwise, 127 is sent multiple times -> Type 1 detected I don't know if it's possible to do much better than what you already did, though, for detection... You may also want to leave it as it is and let the user be careful about this. |
I assume you confused the first two lines and it should be instead as below (that's how it's supposed to be if I look at the code). Now let's look at it in detail. For reference: In these comments is written what the different relative types mean. You have an endless encoder which is configured to transmit absolute values (BTW, which is a bit of a pity :)). Therefore, the desired result is to detect it as range element.
The other user's case is that multiple of the same values are transmitted in a row and it's wrongly detected as a relative type. This can be fixed in some cases:
|
So
Finally, even if it's a bit OT.. Why would you recommend relative encoders? I'm kinda happy with the absolute functioning right now, especially cause I wouldn't know how to have a visual feedback for relative ones with the led rings outside encoders. Cheers |
Thanks for your input. About 2: I guess it depends on whether one would count velocity-sensitive keys or pads (e.g. on Launchpad 2) as buttons or range elements. Both is valid and I think there's no clear favorite there. However, so far I have detected them as buttons. They can transmit everything between 0 and 127. I would in most cases recommend relative encoders because:
Feedback works no matter if you choose absolute or relative. It's always absolute. |
Oh well, touch sensitive buttons with aftertouch could pose a real problem for detection indeed... Well, I wouldn't spend too much time on this really... It really could be left to the user... Mmmm maybe I could give a try to relative settings then.. It would be quite interesting to discuss but I don't wanna spam this issue with OT. Maybe I'll post on the reaper forum after some testing. Thanks again! |
I mean normal NOTE ON/OFF messages, not aftertouch. Aftertouch should be correctly detected as range element. NOTE ON/OFF is interpreted as button right now, but that's intended. I want to pay some attention to detail here because ReaLearn is all about, well, learning :) It doesn't take much time, infact this is one of the easiest things. Everything UI related takes a lot of time. |
User reported that a fader is detected as relative encoder type 3 by ReaLearn (whereas it should be detected as "range element"). Reason is that iCON sends duplicate messages when moving the fader:
Duplicate messages look very much like relative messages and therefore ReaLearn guesses they are relative. But we could probably look a bit closer.
The text was updated successfully, but these errors were encountered: