Remote Map: how to define a button as toggle button?
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi.
I just created my first remote map and it works. The only problem: there are buttons on my controller that I would like to work as toggle buttons: push once: on. Push again: off. At the moment they work differently: pushed: on. Released: off.
What can be controlled in the columns "scale" and "mode" within a remote map? Could that be of any help for me?
Thanks,
Markus
I just created my first remote map and it works. The only problem: there are buttons on my controller that I would like to work as toggle buttons: push once: on. Push again: off. At the moment they work differently: pushed: on. Released: off.
What can be controlled in the columns "scale" and "mode" within a remote map? Could that be of any help for me?
Thanks,
Markus
- MannequinRaces
- Posts: 1543
- Joined: 18 Jan 2015
Not sure if that would help you or not. I'm thinking what you want done needs to be accomplished with a boolean.
I think you need to change controller's button behavior, remote map have nothing to do with your problem.
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi ljekio,
that's excatly what I expected. Unfortunately I can't change the button behavior in the controller's editor (it's a cheap AKAI Midimix - but the knobs and faders do their job).
But still, could anyone explain the function of "scale" and "mode" in remote maps?
Thanks,
Markus
that's excatly what I expected. Unfortunately I can't change the button behavior in the controller's editor (it's a cheap AKAI Midimix - but the knobs and faders do their job).
But still, could anyone explain the function of "scale" and "mode" in remote maps?
Thanks,
Markus
-
- Posts: 864
- Joined: 21 Jan 2015
It should be doable in the codec file. What Midi message is your controller actually sending?
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
You can swith the message of the buttons with the editor from "note" to "cc". And you can set any button to any cc value. The problem is, it sends a constant cc value as long as it is pressed. Otherwise it sends nothing.
I dunno about transform note-like trigger message into switch mode by the luacodec, maybe guru like Koshdukai can tell more about it.
The behavior of the button can be done within the remote map if the Codec you are using will allow. I'm not an expert by any means but have done a considerable amount of mapping for the Nektar P Series lately. The behavior of a control (referred to in remote map terms called MODE) is often one of the columns defined in the "Map" statement. But the codec often defines these states. So what Codec and Remote Map is being used here?
As an example from the Nektar P Maps here are two examples set for the behavior of a button on the front panel :
Mapping the X3 Button as a Trigger Behavior (On when Pressed / Off when Released)
Map->X3->->Trig->->RETRIG->Instrument->Default
Here "Map" tells the controller you are assigning a remote item to the controller button X3. "Trig" is the Remote Item on the Device. "RETRIG" is a mode defined in the Codec that says how the control is to behave and "Default" is the page where this control map is active.
Mapping the X1 Button as a Toggle Behavior (When Pressed it stays in the state until pushed again)
Map->X1->->Run ->CTRL->->Instrument->Default
In this instance we are mapping to controller button X3. The remote item's name is "Run". It's mode is "CTRL" which is the default behavior for a button in Nektar and as such probably could be left as a white space. And lastly it is only active when the page "Default" is displayed. This is how in remote maps you can have multiple maps for a single control.
You will have to see what the Codec will allow for. On the generic "Other Controller" you may be limited by function. Seems default behavior is TRIG. IN that 5th Column (is it?) try to replace the White Space with TOGGLE or TRIG and load that map. If you get an error (X) it didn't work. But maybe it will. Worth a try.
As an example from the Nektar P Maps here are two examples set for the behavior of a button on the front panel :
Mapping the X3 Button as a Trigger Behavior (On when Pressed / Off when Released)
Map->X3->->Trig->->RETRIG->Instrument->Default
Here "Map" tells the controller you are assigning a remote item to the controller button X3. "Trig" is the Remote Item on the Device. "RETRIG" is a mode defined in the Codec that says how the control is to behave and "Default" is the page where this control map is active.
Mapping the X1 Button as a Toggle Behavior (When Pressed it stays in the state until pushed again)
Map->X1->->Run ->CTRL->->Instrument->Default
In this instance we are mapping to controller button X3. The remote item's name is "Run". It's mode is "CTRL" which is the default behavior for a button in Nektar and as such probably could be left as a white space. And lastly it is only active when the page "Default" is displayed. This is how in remote maps you can have multiple maps for a single control.
You will have to see what the Codec will allow for. On the generic "Other Controller" you may be limited by function. Seems default behavior is TRIG. IN that 5th Column (is it?) try to replace the White Space with TOGGLE or TRIG and load that map. If you get an error (X) it didn't work. But maybe it will. Worth a try.
Anyway, this device need dedicated codec, "Other Controller" cannot help for it.
You can try this option (if you ever do these things)
Create a simple MIDI codec for a button to check it work.
code to the file named MIDIMix.midicodec:
Change "nn" to the number of CC (in hexadecimal) and put it to Remote\Codecs\MIDI Codecs\ folder.
And create empty remote map named MIDIMix.remotemap
And drop it into Remote\Maps\Akai\ folder.
After it start the Reason, choose "AKAI/MIDIMix" in control surfaces section and choose correct midi-port.
In the remote override mode choose any button on any Reason's device and to bind your button.
If it will work correct you can add to this codec all other controls and write full remote map.
Good luck
You can try this option (if you ever do these things)
Create a simple MIDI codec for a button to check it work.
code to the file named MIDIMix.midicodec:
Code: Select all
Universal MIDI Codec Control Surface Definition File
File Format Version 1.0.0
Control Surface Manufacturer AKAI
Control Surface Model MIDIMix
Codec Version 1.0.0
Item Header Name Type Min Max
Item Button 1 button 0 1
Map Header Pattern Name Value1 Value2 Value3
Map b? nn Button 1 1 0 0
And create empty remote map named MIDIMix.remotemap
Code: Select all
Propellerhead Remote Mapping File
File Format Version 1.0.0
Control Surface Manufacturer AKAI
Control Surface Model MIDIMix
Map Version 1.0.0
After it start the Reason, choose "AKAI/MIDIMix" in control surfaces section and choose correct midi-port.
In the remote override mode choose any button on any Reason's device and to bind your button.
If it will work correct you can add to this codec all other controls and write full remote map.
Good luck
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi Ijekio and Lizard.
Thanks a lot to both of you!!
Lizard: I tried to replace the white Space in the 5th column (Mode) with TOGGLE or TRIG but always got an error on loading the map. With TOGGLE it said "Unknown command" and with TRIG it said "Unknown mode".
Ijeko: I managed to have both files (the codec and the remote map) working and could assign the button on my controller via remote override mode. However it's still the same problem: I have to keep the button pressed to activate the button on the reason device.
Any more ideas?
Thanks again,
Markus
Thanks a lot to both of you!!
Lizard: I tried to replace the white Space in the 5th column (Mode) with TOGGLE or TRIG but always got an error on loading the map. With TOGGLE it said "Unknown command" and with TRIG it said "Unknown mode".
Ijeko: I managed to have both files (the codec and the remote map) working and could assign the button on my controller via remote override mode. However it's still the same problem: I have to keep the button pressed to activate the button on the reason device.
Any more ideas?
Thanks again,
Markus
Dont know anything about coding things, but i can tell the Livid alias 8 controller and the peff re alias 8 allow to use toggle button, maybe you can search this way if it helps ..
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi siln,
I think it's a matter of the hardware controller. My Alesis Midi-keyboard has a number of buttons that work as toggle buttons. Since my keybpard is using one of the general "other"-profiles this can't be due to the codec or the remote map. Instead I assume that the button simply sends a continous signal when activated.
The question still is if it is possible to define a regular (non toggling) hardwarebutton as a toggling button within the codec or the remote map.
Thanks,
Markus
I think it's a matter of the hardware controller. My Alesis Midi-keyboard has a number of buttons that work as toggle buttons. Since my keybpard is using one of the general "other"-profiles this can't be due to the codec or the remote map. Instead I assume that the button simply sends a continous signal when activated.
The question still is if it is possible to define a regular (non toggling) hardwarebutton as a toggling button within the codec or the remote map.
Thanks,
Markus
-
- Posts: 864
- Joined: 21 Jan 2015
What controller are you using and what remote codec? That is important information. Most likely your button sends a CC with a value of 127 on press and on release it sends 0 like most hardware buttons do. Obviously this leads to the behaviour you describe. There are ways around this in the codec. Though of the top of my head i only know a non trivial one. But to know which codec and hardware you are using would help maybe.Schneepart wrote:Hi siln,
I think it's a matter of the hardware controller. My Alesis Midi-keyboard has a number of buttons that work as toggle buttons. Since my keybpard is using one of the general "other"-profiles this can't be due to the codec or the remote map. Instead I assume that the button simply sends a continous signal when activated.
The question still is if it is possible to define a regular (non toggling) hardwarebutton as a toggling button within the codec or the remote map.
Thanks,
Markus
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
I'm using the standard remote map for the category "<Other> MIDI Cntrol Surface". It's called "MIDI Controller.remotemap" and you can find it here (on a windows computer): C:\ProgramData\Propellerhead Software\Remote\Maps\Other
I don't know which standard codec is used for this category.
I also created my own map and codec according to the post of Iljekio (see above). You can find the remote map and the codec there. It worked an I could assign the button on my controller via remote override mode. But it didn't solve the problem (see me reply on Iljekio's post),
electrofux: you are probably right. And I'm really interested in your mentioned "ways around". Even the "non trivial one"
Thanks,
Markus
I don't know which standard codec is used for this category.
I also created my own map and codec according to the post of Iljekio (see above). You can find the remote map and the codec there. It worked an I could assign the button on my controller via remote override mode. But it didn't solve the problem (see me reply on Iljekio's post),
electrofux: you are probably right. And I'm really interested in your mentioned "ways around". Even the "non trivial one"
Thanks,
Markus
Change the mode field that says "button" to "value" and see what that does for you. The SDK documentation says the behavior of "button" defines one value on press and another on release. "Value" just assigns a min and max value. You could still keep its values at 0 and one but perhaps in this mode it will change each time you press. Worth a try.
-
- Posts: 864
- Joined: 21 Jan 2015
Schneepart wrote:I'm using the standard remote map for the category "<Other> MIDI Cntrol Surface". It's called "MIDI Controller.remotemap" and you can find it here (on a windows computer): C:\ProgramData\Propellerhead Software\Remote\Maps\Other
I don't know which standard codec is used for this category.
I also created my own map and codec according to the post of Iljekio (see above). You can find the remote map and the codec there. It worked an I could assign the button on my controller via remote override mode. But it didn't solve the problem (see me reply on Iljekio's post),
electrofux: you are probably right. And I'm really interested in your mentioned "ways around". Even the "non trivial one"
Thanks,
Markus
I was hoping you were using a different remote map with a proper lua codec. The "other" maps use "midi codecs" which is the older format. Lua codecs offer alot more possibilities. Did you mention what controller exactly you are using?
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi everybody.
Lizard: I tried what you suggested and this is the effect: when I press the button on the controller the assigned switch on the reason instrument gets activated. And it stays activated, even after releasing the button!! The only problem is: I cant deactivate it by pressing the hardware button again. It just stays activated. So there is still no toggeling.
This is a little progress but we are still not completely there.
I also tried to change the follwoing line in the codec:
Map Header Pattern Name Value1 Value2 Value3
Map b? 01 Button 1 1 0 0
Into
Map Header Pattern Name Value1 Value2 Value3
Map b? 01 Button 1 0 1 0
But without effect.
You were mentioning a documentation. Is it available on the internet?
electrofux: I'm using either the standard remote map OR the a map I did myself together with a midicodec that I also created myself according to Iljekios post (see above). Maybe I could create a Lua codec?
Thanks again.
Markus
Lizard: I tried what you suggested and this is the effect: when I press the button on the controller the assigned switch on the reason instrument gets activated. And it stays activated, even after releasing the button!! The only problem is: I cant deactivate it by pressing the hardware button again. It just stays activated. So there is still no toggeling.
This is a little progress but we are still not completely there.
I also tried to change the follwoing line in the codec:
Map Header Pattern Name Value1 Value2 Value3
Map b? 01 Button 1 1 0 0
Into
Map Header Pattern Name Value1 Value2 Value3
Map b? 01 Button 1 0 1 0
But without effect.
You were mentioning a documentation. Is it available on the internet?
electrofux: I'm using either the standard remote map OR the a map I did myself together with a midicodec that I also created myself according to Iljekios post (see above). Maybe I could create a Lua codec?
Thanks again.
Markus
@Schneepart(Markus)
Unfortunately it is not published. It comes from the Propellerheads developer site. But applying is free and fairly quick. Like I said earlier the remote Codec determines the behavior of the control and what types are available. With the general Other Midi option you are limited. However, the modes available to this codec are Button, Value, Delta, Keyboard and noinput. Possibly change to Delta? These modes are dependent on the encoder type. Delta is generally for endless rotaries where a change in one direction determines a + or - value. Maybe this will be an option for you. Beyond this I would say it isn't in the codec.
Unfortunately it is not published. It comes from the Propellerheads developer site. But applying is free and fairly quick. Like I said earlier the remote Codec determines the behavior of the control and what types are available. With the general Other Midi option you are limited. However, the modes available to this codec are Button, Value, Delta, Keyboard and noinput. Possibly change to Delta? These modes are dependent on the encoder type. Delta is generally for endless rotaries where a change in one direction determines a + or - value. Maybe this will be an option for you. Beyond this I would say it isn't in the codec.
- Schneepart
- Posts: 13
- Joined: 26 Jan 2015
Hi Lizard,
no, delta doesn't work at all.
But could you explain for me how "value" is defined in the documentation?
And what do the three coulmns Value1, Value2, and Value3 mean?
However, I also think that it is impossible to define a button as a toggle button.
Thanks,
Markus
no, delta doesn't work at all.
But could you explain for me how "value" is defined in the documentation?
And what do the three coulmns Value1, Value2, and Value3 mean?
However, I also think that it is impossible to define a button as a toggle button.
Thanks,
Markus
- dancing fool
- Posts: 131
- Joined: 11 Jul 2015
Hello,
I am thinking of buying this Akai midimix.
Just for the lot of buttons and knobs.
But realding this problem i have my doubts.
Is the problem solved ?
I want to use this controler for live sequencer controller for Thor or the new Lectric Panda PSQ1684
I am thinking of buying this Akai midimix.
Just for the lot of buttons and knobs.
But realding this problem i have my doubts.
Is the problem solved ?
I want to use this controler for live sequencer controller for Thor or the new Lectric Panda PSQ1684
-
- Posts: 864
- Joined: 21 Jan 2015
I think the easy way with the remote map is not possible. In that case the controller itself has to have the option of having the buttons send toggling values.
In the codec however it is possible but it needs the Sdk and some programming.
In the codec however it is possible but it needs the Sdk and some programming.
- dancing fool
- Posts: 131
- Joined: 11 Jul 2015
Such a shame.
I'm not a programmer.
Making remote maps alone is a big thing for me
I own a edirol pcr 300 and cakewalk pro 300.
And there i can latch or unlatch a buttom in the programmer.
I'm not a programmer.
Making remote maps alone is a big thing for me
I own a edirol pcr 300 and cakewalk pro 300.
And there i can latch or unlatch a buttom in the programmer.
-
- Information
-
Who is online
Users browsing this forum: Sogou [Spider], Trendiction [Bot] and 26 guests