Midi CC to load "Select next or previous patch"?

This forum is for discussing Reason. Questions, answers, ideas, and opinions... all apply.
Post Reply
User avatar
friday
Posts: 337
Joined: 17 Jan 2015

14 Dec 2019

Have searched the forum but found nothing, maybe I'm just blind.

Is there a Midi CC Option for "Select next or previous patch"?

Thanks for your help.

User avatar
Aquila
Posts: 756
Joined: 21 Jan 2015

14 Dec 2019

With my limited of understanding of actual MIDI message, I don't think it's actually a CC command but simply a Program Change

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

14 Dec 2019

There is no Midi CC or Program Change, but you can map Buttons on your Midi controller to do so. What kind of Midi device are you using?

For global operation:
If it is one of the remote devices listed by Reason, goto the according *.remotemap file and search for "Select Next Patch for Target Device" or "Select Prev Patch for Target Device".
If its not, choose "Options - Additional Remote Override" and set up buttons of your Midi device from there.

You can do it per device too:
than you have to watch for "Select Previous Patch" or "Select Next Patch" in the *.remotemap

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

15 Dec 2019

rmtcvolte wrote:
14 Dec 2019
There is no Midi CC or Program Change, but you can map Buttons on your Midi controller to do so. What kind of Midi device are you using?

For global operation:
If it is one of the remote devices listed by Reason, goto the according *.remotemap file and search for "Select Next Patch for Target Device" or "Select Prev Patch for Target Device".
If its not, choose "Options - Additional Remote Override" and set up buttons of your Midi device from there.

You can do it per device too:
than you have to watch for "Select Previous Patch" or "Select Next Patch" in the *.remotemap
Thanks for your hints, don't quite understand them yet, but I will try to deal with the remote map files. I use the Launchpad X. Currently there is no remote map file for the device, but I tried that from "Irregular Cluster" (written for the Launchpad MK2). That doesn't seem to work properly with the X, but on some pages, you can see an approach of the desired config. Therefore, I assume that I only must re-set the order of the assignments to the pads.

On the other hands there is an nice config tool where you can configure your own custom pages for the launchpad, and there you can set buttons to send "midi cc" I was hoping that this will work to change patches, but after your answer, I have to go deeper.

And just for theme who are interested, the Launchpad X feels very well! Sexy Device. It has a great size, pressure sensitive pads, the note grid is inspiring to get new ideas for melodies and it comes in a fair price range!

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

15 Dec 2019

Take a look here for better understanding Control Remote in Reason:
viewtopic.php?f=4&t=7495913
where I've posted some links.

It is an interesting find that Launchpad X works with the MK2 Codec, obviously the two are almost the same. I would like to help and I have an idea what the problem could be.
On the MK2 the "Mixer" button is used to switch on/off "Fader Mode", if it is "on" the two arrows on the left side are used for patch changes. In your case it should be "Capture Midi" and the up/down arrows upper left hand.

But if the Midi CC/per button on the two Lounchpads are not the same, then the codec cant work like expected. If it is that easy, changing the CCs with the config tool could help.

Hope this is not confusing totaly.

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

16 Dec 2019

rmtcvolte wrote:
15 Dec 2019
..... I would like to help and I have an idea what the problem could be....
He rmtcvolte, thank you so much for your help. I don't have so much time until the Christmas holiday. But i will try to do some learning and research during the next days/weeks. Really want to use the Redrum Sequencer with the Launchpad X. When i have news or some more questions :-) i will post it here.

Thanks again.

Edit: I can not change the CC for the pads, i need to change that in the remote map file. I can build custom pages where i can configure pads to send CC but I think that is not the ones that works together with the remote maps.

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

16 Dec 2019

After a short comparison of the MK2 and X "novation programmers reference manual" i found, that most of the pads have the same CC values, only the two outer rows differ, maybe this is the problem.
novationmk2andxdifference002.png
novationmk2andxdifference002.png (311.5 KiB) Viewed 2954 times

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

16 Dec 2019

You are exactly right and that was it I'm trying to say here:
rmtcvolte wrote:
15 Dec 2019
But if the Midi CC/per button on the two Lounchpads are not the same, then the codec cant work like expected. If it is that easy, changing the CCs with the config tool could help.
If you can not change the CC's on Launchpad, it is not the *.remotemap you have to work on, it is the codec.

User avatar
mjxl
Posts: 600
Joined: 23 Nov 2018

16 Dec 2019

friday wrote:
16 Dec 2019
After a short comparison of the MK2 and X "novation programmers reference manual" i found, that most of the pads have the same CC values, only the two outer rows differ, maybe this is the problem.

novationmk2andxdifference002.png
You can still use 10 groups of controls in the remotemap though so this shouldn't be a problem ;)

This would give you 160 (?) controls per device.

You can swap groups with Ctrl(Cmd) + Alt + 0>9

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

17 Dec 2019

rmtcvolte wrote:
16 Dec 2019
If you can not change the CC's on Launchpad, it is not the *.remotemap you have to work on, it is the codec.
He rmtcvolte

I think I have found the Lua config that defines the buttons with the attached CC values. Will try to change that, but i have some more questions (sorry, i am completely new to that mapping thing):
  • How can I change the name of the config, to have a new device to choose in the reason config (Rename to Launchpad X)? Just a other filename of the Lua and Map File?
    The Remote Map from Irregular-Cluster has to much mappings for me, that confuses me. I just want the redrum page with the sequencer. Do someone have some tips how to find which sections are for which device?
    There is a definition for inputs and for outputs, what does the "et_new_value(value, 73, enabled)" in the output settings set?
Here the buttons to CC mappings (top / side buttons) i have found:

remote.define_items(items)
local inputs = {
{ pattern = "<100x>? 51 7F", name = "Button 01" },
{ pattern = "<100x>? 52 7F", name = "Button 02" },
.................
{ pattern = "b? 68 ?<???x>", name = "TButton 1" },
{ pattern = "b? 69 ?<???x>", name = "TButton 2" },
{ pattern = "b? 6A ?<???x>", name = "TButton 3" },
{ pattern = "b? 6B ?<???x>", name = "TButton 4" },
{ pattern = "b? 6C ?<???x>", name = "TButton 5" },
{ pattern = "b? 6D ?<???x>", name = "TButton 6" },
{ pattern = "b? 6E ?<???x>", name = "TButton 7" },
{ pattern = "b? 6F ?<???x>", name = "TButton 8" },
{ pattern = "<100x>? 59 7F", name = "SButton 1" },
{ pattern = "<100x>? 4F 7F", name = "SButton 2" },
{ pattern = "<100x>? 45 7F", name = "SButton 3" },
{ pattern = "<100x>? 3B 7F", name = "SButton 4" },
{ pattern = "<100x>? 31 7F", name = "SButton 5" },
{ pattern = "<100x>? 27 7F", name = "SButton 6" },
{ pattern = "<100x>? 1D 7F", name = "SButton 7" },
{ pattern = "<100x>? 13 7F", name = "SButton 8" },



remote.define_auto_inputs(inputs)
local outputs = {
{ name = "Button 01", pattern = "90 51 xx", x = "get_new_value(value, 01, enabled)" },
{ name = "Button 02", pattern = "90 52 xx", x = "get_new_value(value, 02, enabled)" },
.............................
{ name = "TButton 1", pattern = "B0 68 xx", x = "get_new_value(value, 65, enabled)" },
{ name = "TButton 2", pattern = "B0 69 xx", x = "get_new_value(value, 66, enabled)" },
{ name = "TButton 3", pattern = "B0 6A xx", x = "get_new_value(value, 67, enabled)" },
{ name = "TButton 4", pattern = "B0 6B xx", x = "get_new_value(value, 68, enabled)" },
{ name = "TButton 5", pattern = "B0 6C xx", x = "get_new_value(value, 69, enabled)" },
{ name = "TButton 6", pattern = "B0 6D xx", x = "get_new_value(value, 70, enabled)" },
{ name = "TButton 7", pattern = "B0 6E xx", x = "get_new_value(value, 71, enabled)" },
{ name = "TButton 8", pattern = "B0 6F xx", x = "get_new_value(value, 72, enabled)" },
{ name = "SButton 1", pattern = "90 59 xx", x = "get_new_value(value, 73, enabled)" },
{ name = "SButton 2", pattern = "90 4F xx", x = "get_new_value(value, 74, enabled)" },
{ name = "SButton 3", pattern = "90 45 xx", x = "get_new_value(value, 75, enabled)" },
{ name = "SButton 4", pattern = "90 3B xx", x = "get_new_value(value, 76, enabled)" },
{ name = "SButton 5", pattern = "90 31 xx", x = "get_new_value(value, 77, enabled)" },
{ name = "SButton 6", pattern = "90 27 xx", x = "get_new_value(value, 78, enabled)" },
{ name = "SButton 7", pattern = "90 1D xx", x = "get_new_value(value, 79, enabled)" },
{ name = "SButton 8", pattern = "90 13 xx", x = "get_new_value(value, 80, enabled)" }

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

17 Dec 2019

mjxl wrote:
16 Dec 2019
You can still use 10 groups of controls in the remotemap though so this shouldn't be a problem ;)
This would give you 160 (?) controls per device.
You can swap groups with Ctrl(Cmd) + Alt + 0>9
Hi thanks for your Feedback, but sorry i am not sure if I understand it right? You can define 10 different mappings in the codecs (like scenes) and then choose out of reason which one you want to load?

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

17 Dec 2019

Hi,
you can define so called "Groups" in case you like to have more remotable items than encoders and buttons.
Up to 10 are possible and you can choose by midi or like mjxl wrote.

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

17 Dec 2019

Next Questions :-)

input: what does the <100x>? or b? and the 7F or ?<???x> row's define?
reason remote question 1.jpg
reason remote question 1.jpg (56.89 KiB) Viewed 2894 times
output: what does the B0 ore 90 row define?
reason remote question 2.jpg
reason remote question 2.jpg (61.24 KiB) Viewed 2894 times

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

17 Dec 2019

I will try to make it as clear as possible, give me a little time to read and check that in the lua file.

But for your first question, dont change names and do not change the header (first lines in a file). If it works keep it like it is.
In the *.remotemap you find line starting with "Scope[tab]..." this stands for a device all mappings following this till next "Scope" = next device.

User avatar
mjxl
Posts: 600
Joined: 23 Nov 2018

17 Dec 2019

Judging the remotemap files, only DrRex has a Next/Previous Patch as a remotable item.

Code: Select all

Map	43		Select Previous Patch
Map	44		Select Next Patch

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

17 Dec 2019

Hope you have a good text editor like "Notepad++". Makes it much easyer to search and find something in larger files. To find the scope for redrum, search for "Redrum" simple as that. And you can generate a text file within Reason with all infos about a device in it: Select the device (e.g. Redrum) goto File -> Export Device Remote Info...

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

17 Dec 2019

For the input/output in lua: you found it by yourself, the "TButton 1-8" differs from the Mk2. I would give it a try and change what you pointed to in red (CC), e.g. "b? 68 ?<???x>" to "b? 5B ?<???x>" and so on. Do the same with the output, change the CC's and test it.

The "get_new_value(value, 65, enabled)" statement is a definition used by the codec to have a value to send out. But all that is way to much to explain.

The rest you ask for is pure Midi: <100x>? is part of keyboard (note), b? is controll change (? = variable, all midi channels), e0 would be pitchband, but this will go to far away.
At the end you can step back, delete the files and load it new from the download, if something is not like expected.

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

18 Dec 2019

rmtcvolte wrote:
17 Dec 2019
Hope you have a good text editor like "Notepad++". Makes it much easyer to search and find something in larger files. To find the scope for redrum, search for "Redrum" simple as that. And you can generate a text file within Reason with all infos about a device in it: Select the device (e.g. Redrum) goto File -> Export Device Remote Info...
Bonjour rmtcvolt, at my daily work I am beginning to learn ansible so why not also learn to understand the reason remote map a little further :-) I use the ms visual code editor, that one has replaced the notepad ++ on my computer ;-)

Will ask for a developer account at reason studio to get the documentation.

Thank you again for all your kind help until now! Have a great Day!!!

User avatar
friday
Posts: 337
Joined: 17 Jan 2015

19 Dec 2019

rmtcvolte wrote:
17 Dec 2019
For the input/output in lua: you found it by yourself, the "TButton 1-8" differs from the Mk2. I would give it a try and change what you pointed to in red (CC), e.g. "b? 68 ?<???x>" to "b? 5B ?<???x>" and so on. Do the same with the output, change the CC's and test it.

The "get_new_value(value, 65, enabled)" statement is a definition used by the codec to have a value to send out. But all that is way to much to explain.

The rest you ask for is pure Midi: <100x>? is part of keyboard (note), b? is controll change (? = variable, all midi channels), e0 would be pitchband, but this will go to far away.
At the end you can step back, delete the files and load it new from the download, if something is not like expected.
Hi rmtcvolte, just changing the s- / t- button CC mapping did not help, it behaved the same as before the change. I really have to go deeper :-)
Is there anyone who can share the RemoteMap Documentation or do I really have to ask for a Developer account?
Last edited by friday on 23 Dec 2019, edited 3 times in total.

rmtcvolte
Posts: 206
Joined: 15 Nov 2018

21 Dec 2019

Hi,
I'm still wondering that you can use the codec with your device. Nevertheless, have you tried to monitor your Midi Input with a tool like MidiOX? You already know how the message should look like, maybe the Lounchpad X sends something unexpected and you can find out this way what you have to fill in the input/output list.
You have to sign in as a Developer to get the SDK, but this should not be a problem at all and you'll have access to the developer forum too.

Post Reply
  • Information
  • Who is online

    Users browsing this forum: Marc Swing and 15 guests