Duplex Beta Versions

Hey Danoise! I actually haven’t recieved it yet! I was just wondering just in case. I didn’t know if maybe it had a different OS or something then the MKii in which case it might not work.

In the mean time, I’m trying to midi map my Maschine Mikro to Renoise. I was thinking it would be a cool device as a Duplex controller. Has anybody tried yet? Do you think it would work? I’m reading through the manual and it seems like it could be a pretty difficult process. I’m willing to put the time in to get it to work. Renoise is so customizable when it comes to midi mapping already, but it would be neat to use it as a live controller in Renoise as well! There’s some things that I wish were assignable in Renoise that aren’t. For instance, I think it would be cool if you could midi control the browser. Like if I could use the wheel in Maschine to search for samples for examples. Or at least inside the spot where your samples are already loaded. Then you could browse it with the knob! I think that would be neat. Midi mapping is awesome! :D

Anyways, any help would be appreciated!!

Ha! Just saw that you can map the instrument browser! AWESOME!

Okay, where do I get this Template? I can’t find it anywhere. I tried googling it with no results. I just got this thing and automap is already really frustrating me. :P

It’s included with Duplex - point your finder/explorer/etc to the Renoise tools folder
com.renoise.Duplex.xrnx → Duplex → Controllers → Remote-SL-MKII → Presets → Remote-SL-MKII.automap

Apropos Automap - you may or may not find it’s VST plugin support interesting. But arguably quite a heavy piece of software for such a relatively simple task.
The Remote can function fine without Automap - that is, send MIDI to your host. However, you won’t be able to send MIDI to the controller without having Automap running (set the state of any given LED). And since Duplex is based around the idea of bi-directional communication, you need this thing running if you want that extra functionality…

So I tried to load the template, and unfortunately I don’t think the MK 1 can read a Mk II template. Sucks, but oh well. I’m starting to get the hang of automap and really like it in a lot of ways. In others though, it’s a huge headache. Mostly because the template editor is just a freaking mess. It’s super buggy. They really need to fix that thing.

Don’t give up just yet - the templates are just basic text files, with the MKII one looking like this:

Click to view contents <?xml version="1.0" encoding="UTF-8" ?>








































































































































































































































































If you provide yours (i.e. by saving it from the Automap editor), we could most likely adapt it by hand.

Just a quick FYI that Duplex 0.99 got released yesterday.

  
-- Changelog for Duplex 0.99.1 ------  
  
Duplex Core  
* Some classes split into separate files (MessageStream, BrowserProcess etc.)  
* Updated documentation (/Docs), now including application classes  
* Global enumerators now stored in tables instead of separate variables  
 (ORIENTATION.VERTICAL instead of ORIENTATION_VERTICAL)  
  
Core/MessageStream  
* FIXME Caching can break multiple UIComponents listening to the same signal  
  
Core/Application  
* FEATURE Specify "midi_mapping" property (string) when creating a UIComponent  
 instance (will make it highlight when Renoise MIDI mapping dialog is open)  
* FEATURE Hooks for when Renoise gain/loose focus:  
 on_window_became_active/on_window_resigned_active  
  
Core/Automation  
* FIXME make it possible to record from any track, any pattern (follow_pos)  
* FEATURE specify preferred playmode (points/linear/cubic)  
  
Core/Controlmap  
* TWEAK No more need to explicitly state "is_virtual" for parameters that only  
 exist in the virtual UI - just leave the value attribute blank  
  
Core/Browser  
* FEATURE Button to show/hide virtual control surface (access with TAB key)  
  
Core/ProcessSlicer  
* Implementation of lua coroutines (see Mlrx_track.lua for example)  
  
Applications/MidiActions  
* FIXME Problem on Windows when looking for user-specified GlobalMidiActions  
  
Applications/Mlrx  
* FEATURE Phrase recording  
  
Controllers/MPD32  
* New configuration: PerformancePads  
  
Controllers/BCD-3000  
* New controller template, no configurations yet...  
  

I got it to work! It was my fault. I didn’t realize that I had to set the automap software to “midimode.” Once I did that it worked. Automap does seem to be really buggy with Renoise though. They don’t seem to communicate well. For example, when ever I change a Duplex map then I have to refocus Automap. Kind of frustrating. Also, it doesn’t seem to intereact with plugins at ALL. It doesn’t recognize any knob changes even though I’ve opened an automap plugin. I have automap focused in the software to the plugin, it shows the paramaters on the screens, but there doesn’t seem to be any communication between Renoise and automap. I could be doing something wrong though, obviously. I might have the settings weird? I did search through the Renoise forums about automap though, and I found a lot of posts where people were saying the same thing with no solutions ever offered.

You did hit “fx” or “instr” on the controller? You need to switch to the proper mode first…

If not, it sounds Automap, not Renoise related though…Maybe you will have better luck searching Novation/Focusrite, or asking on their forums.

Developers - your opinion is wanted:

Good ideas?

Is it possible to run multipe instances of duplex (eg one launchpad on GridPie and another on XY Pad/repeater)?

Yes, you just need to change the “display_name” in the configuration file. This will make it appear as a separate device in the device browser. Quoting from the manual:

Hi there, just a quick question - can one change the way instruments are layed out in Duplex/Step Sequencer application ?(preferably, different instrument per row as in Cie tool). Thanks in advance for reply!

edit. Sorry, I didnt wrote for which controller - Launchpad.

Absolutely, just name the track after whatever instrument you want to control :slight_smile:

Ah, this is great, thank you !

Step sequencer is working great, but I am having some problems with grid pie in duplex. Specifically, I am getting Renoise crash when I try to perform direct copying or un-aliasing of patterns and also when I am trying to record in session mode. Is there a way I can send a dump/log, so You can see what is going on?

Thanks!

A Renoise crash - that’s not good. If you can reproduce it, it might be worth to copy and paste the last few lines of the log file
(Help menu > Show the log file) and then posting it as a bug report

Of course, I want to fix this in grid pie too, but crash bugs have first priority

Ok, I just posted a bug report here:
http://forum.renoise.com/index.php?/topic/42361-duplex-grid-pie-launchpad-renoise-crash/

Let me know if You need more details, thanks!

Another update of Duplex has arrived. Get it here

This time around, there is finally support for 14-bit MIDI pitch bend.
For anyone with access to such a controller (and there aren’t that many around), it would be great if you could drop me a PM so we could get proper device support.

Also, MMC support is now built in. This means that you can send MMC sysex commands to Duplex without running any applications, and still control the song transport.

And if you have been looking for a good iPad keyboard, Duplex now has a configuration for discoDSP’s “KeyPad”. You can head over to their website to download the template: http://www.discodsp.com/keypad/

Last, but not least, Duplex now has something called States. They are XML based “namespaces” that you can add to a control-map, basically allowing you to show and hide certain parts of a control-map while the device is running. Very handy when you are running out of room on the controller, want to conserve space, or when the application just isn’t flexible enough to be mapped the way you want it to.
Also, states are quite a complex subject, so expect me to post a separate topic to cover this in more detail. For now, you can peruse the Duplex docs (part of the download) to learn about this new feature - in particular, you want to check out “ControlMap” and “StateController”.

-- Duplex 0.99.3 -----------  
  
Core/StateController  
* New class, StateController (toggle parts of control-map in realtime)  
* See also ControlMap.lua and MessageStream for details  
  
Core/MidiDevice  
* Support for MMC (Midi Machine Control) messages over sysex  
* Support for 14-bit MIDI pitch bend messages   
* Ability to pass unmatched (not just unhandled) messages to Renoise   
  
Core/OscDevice  
* Ability to dump OSC message to console (just like MIDI messages)  
* Feedback prevention: optionally block messages that appear to be echoed back  
  
Core/ControlMap  
* <param> (new), match a specific (CC) value   
* <param> (new), match a (CC) value-range   
* <param> (new), explicitly state the value resolution (e.g. 7 or 14 bit)  
* <param> (new), interpret parameter in the context of a specific device class  
  
Core/MessageStream  
* Ability to cache multiple matched ui-components (implemented as queue)  
* Integration with StateController  
  
Core/UIComponents (all)  
* Refactored force_refresh method into base-class  
* UIComponent:test() now include test for active state and group-name  
  
Core/WidgetHooks  
* Improved validation methods  
  
Core/Applications  
* Removed some print statements that were overlooked  
  
Core/Controllers  
* All device classes should now be using output_number/boolean/text methods  
  
Applications/PatternCursor  
* New application, take control of the pattern cursor (preview release)  
  
Controllers/Oxygen88  
* Control-map / configuration for the M-Audio Oxygen88 controller (preview)  
  
Controllers/TouchOSC  
* Control-map / configuration for on-screen keyboard  

Downloaded, tried to install, and on renoise startup i get the following error:

  
'/home/user/.renoise/V3.0.0/Scripts/Tools/com.renoise.Duplex.xrnx/' failed to load.  
  
Please remove this tool or contact the author (danoise [bjorn.nesby@googlemail.com]) for assistance...  
  
.///Duplex/Controllers/APC40/APC40.lua:36: variable 'APC20' is not declared  
stack traceback:  
 [C]: in function '_error'  
 [string "local mt = getmetatable(_G)..."]:29: in function   
 .///Duplex/Controllers/APC40/APC40.lua:36: in main chunk  
 [C]: in function 'require'  
 ./Duplex.lua:60: in main chunk  
 [C]: in function 'require'  
 main.lua:7: in main chunk