Dirty fix for BUTTON_HELD events being passed to Renoise (issue caused by the above patch to MessageStream.lua ):
-- ensure that we have MIDI data before passing message
if pass_msg and msg.midi_msgs and
(msg.device.protocol == DEVICE_PROTOCOL.MIDI) and
(evt_type ~= DEVICE_EVENT.BUTTON_HELD)
then
local osc_client = self.process.browser._osc_client
for _,midi_msg in ipairs(msg.midi_msgs) do
osc_client:trigger_midi(midi_msg)
end
end
I have a feeling, that this is the wrong place for check, but it worksforme.
I’ ve read somewhere in this thread or on the tools-page that Duplex “natively” supports Maschine, but Maschine seems to be the
only Duplex-supported controller in that list where there is no stock-template in the dropdown list, that’s why I ask. Is there a specific reason for this?
hm, you are right that’s mentioned on the tools page but not actually included with Duplex.
There was a 90% finished version, but it was never completely done - let me give it an extra look and see what can be done about this.
Note that Duplex is about creating controller configurations that do exactly what you want them to do. You are “mapping” things using these configuration files. Useful info here.
Now, I have no idea what you would want or expect, but I could create something that worked in a similar way to how the MIDI template (the link you provided) has been set up?
hm, you are right that’s mentioned on the tools page but not actually included with Duplex.
There was a 90% finished version, but it was never completely done - let me give it an extra look and see what can be done about this.
Note that Duplex is about creating controller configurations that do exactly what you want them to do. You are “mapping” things using these configuration files. Useful info here.
Now, I have no idea what you would want or expect, but I could create something that worked in a similar way to how the MIDI template (the link you provided) has been set up?
Hey D’, now that would be pretty awesome. Don’t know how much work that is, I am pretty sure I can’t pull that off myself though…
Besides that I think that a maschine template would be an excellent addition to the duplex templates anyways and would help me a lot
and certainly others as well for sure. And that old template had pretty much everything I would need.
Let me know if you can come up with something without too much effort or hassle. That would be ace.
serialosc now needs to be the default protocol, as monomeserial is unsupported upstream, broken, and hasn’t supported devices made in the last several years
True, just never got the damn thing to work with XP (which I was running until half a year ago).
So the default option was that protocol - for my own convenience
But to be fair against serialosc, monomeserial is actually being translated to in realtime by Duplex - so, essentially a second-class citizen.
I was fully aware that monomeserial was being phased out, even back when I started the project.
When first using the Renoise performance interface for TouchOSC in combination with an iPad Air, I had to realise that certain mappings won’t work as expected:
The push buttons for DSP / track page navigation don’t react so that only 11 effects / 16 tracks can be controlled via TouchOSC.
The currently selected DSP effect is represented by its device name and not its display name so that it is really difficult to differentiate between devices when more than one instance of a given device is used.
The currently selected track number / track name is not displayed.
I could adjust 2. by simply replacing device.name by device.display_name in the Effects application (Effects.lua) of Duplex. For 1., I found a partial solution by editing the configuration file (TouchOSC_iPad.lua) in such a way that the TrackSelector application is used for page navigation instead of the Mixer application.
Secondly, I added
device_next = {
group_name = "DSPNext",
index = 1,
},
device_prev = {
group_name = "DSPPrev",
index = 2,
to the configuration file and changed value="/1/DSPNext %i" to value="/1/DSPPrev %i" for in the controlmap (TouchOSC_iPad.xml).
Since I’m not a programmer and I don’t want to become one for simply controlling Renoise with the help of a TouchOSC template, I’d really appreciate some help on how to implement DSP device page navigation for the Effects application and on how to display the currently selected track instead of the word “Track” in the performance interface. I think the usability of the template for users without programming experience could benefit from it.
Ive bought amazing korg taktile 25, best midi for renoise ive tried - talking about composition (you can paste chords by pads and create arp or control XY deviceby XY pad)
So when new duplex will be out i will create mapping for sure :-))
The update has broken the XY pad for TouchOSC. When changing the position of the pad, the following error message occurs:
Error Message: 'C:\Users<user>\AppData\Roaming\Renoise\V3.1.0\Scripts\Tools\com.renoise.Duplex.xrnx\main.lua' failed in one of its notifiers.
Error Message: Please contact the author (danoise) for assistance...
Error Message: .\Duplex/Message.lua:69: Not implemented
Error Message: stack traceback:
Error Message: [C]: in function 'error'
Error Message: .\Duplex/Message.lua:69: in function 'get_numeric_value'
Error Message: .\Duplex/StateController.lua:79: in function 'handle_message'
Error Message: .\Duplex/MessageStream.lua:141: in function 'input_message'
Error Message: .\Duplex/Display.lua:771: in function 'generate_message'
Error Message: .\Duplex/WidgetHooks.lua:560: in function <.\Duplex/WidgetHooks.lua:556>
I’m using V3.0.1 / V3.1.0 b5. Thanks for having a look.
The update has broken the XY pad for TouchOSC. When changing the position of the pad, the following error message occurs:
Error Message: 'C:\Users<user>\AppData\Roaming\Renoise\V3.1.0\Scripts\Tools\com.renoise.Duplex.xrnx\main.lua' failed in one of its notifiers.
Error Message: Please contact the author (danoise) for assistance...
Error Message: .\Duplex/Message.lua:69: Not implemented
Error Message: stack traceback:
Error Message: [C]: in function 'error'
Error Message: .\Duplex/Message.lua:69: in function 'get_numeric_value'
Error Message: .\Duplex/StateController.lua:79: in function 'handle_message'
Error Message: .\Duplex/MessageStream.lua:141: in function 'input_message'
Error Message: .\Duplex/Display.lua:771: in function 'generate_message'
Error Message: .\Duplex/WidgetHooks.lua:560: in function <.\Duplex/WidgetHooks.lua:556>
I’m using V3.0.1 / V3.1.0 b5. Thanks for having a look.
Cool, thanks. I will take a look at this.
Note that you can still use the previous versions (see OP) and change the manifest to to “5” for the API version. It’s primarily the Keyboard and Mlrx applications that are affected by the new API.