Duplex Beta Versions

Only if the device driver has one. I personally have used two launchpads when performing (one of them I borrowed, but it’s a fine setup).

I’m on linux, you’re on osx, right? That could make a difference…

Hey danoise or someone else lua master,
just curious though :huh: , is it difficult to create the vu-meter application for Duplex??
I think that it’s fun visually when I will make youtube movies, if there is a such app.

like this:

Much more than eye-candy, it’s really something I am missing from time to time, to see which track(s) are actually playing.
A VU-meter could even be squeezed into a single button, you don’t need a lot of room to make it useful.

As for the actual implementation: well, it’s not hard to make but it would be a hack:
Basically, one could create a bunch of formula-devices (one for each track) which would track the volume.
Then, creating a bunch of buttons or sliders which would display the volume would quite easy.

But as you may know, I’m opposed to the idea of adding stuff to songs - I prefer clean implementations that use API features for everything.
So, unless someone else is going to make it, I guess we just have wait for the API to support such a feature

Ah I see, I do not hurry at all. Then let’s wait the API support. :)

Duplex 0.98 b20 has arrived!

GridPie has received a massive update: edit-sync is now a complete feature and some
issues with ‘keep the beat’ has been resolved (this involves the option to select your
song’s basic rhythmic measure).

Also, minor workflow improvements make it even more usable and it comes with a
new layout for the Launchpad as well (featuring the new PatternSequence application)

Here, Grid Pie is combining 3 patterns with different lengths (4, 8 and 12 lines) into a single pattern (total of 24 lines).
The edit-synchronization feature is then making it possible to edit them in real-time - or something close to realtime.

Download link has been updated, SVN too. Read also: my post about what this means, and what features to expect

-- Changelog --   
* Edit-sync: automatic background-synchronization of pattern data  
* Edit-sync: detect changes to the pattern length (source tracks)  
* Update grid display as content is created or removed in the matrix  
* Visualize the currently selected pattern (when the controller is able to)  
* Attempt to maintain pattern matrix slot mute states at all times  
* Ability to clone the __GRID PIE__ pattern without stopping the application  
* New option: Beat-measures (related to the ‘keep the beat’ feature)  
* Fixed: removed display-glitch in the virtual UI (on startup)  
* Fixed: remove all notifiers when app is stopped  
* New application: simple sequence navigation (first/next/previous/last)  
* Fixed: focus bug when holding button  

I’ve been meaning to ask this question for a while…
-Is Duplex incompatible with rewire?

Every time I fire up Reason in rewire-mode, Duplex gives an error and stops working.

Anything I can do to work around this problem?

I’m using the latest version of Reason.

Thanks in advance.

This rewire-related bug is news to me, but it’s most likely easy to fix. Thanks for reporting.

It has acted like that since I started fooling around with Renoise/Duplex. I don’t know if it’s something with Reason 6/Record. The old Reason 4/5 might work, but seeing as I’ve owned Record/Reason for as long as I’ve owned Renoise, I’ve never tried the older versions with Renoise/Duplex.

Found it and fixed it B)

Download Browser.lua from here, and simply overwrite the existing file with the new version

Awesome! That did the trick.

Big thanks for the fast response Danoise, you truly rock!
…and sorry for not reporting this sooner. -It’s been bugging the hell out of me!

A new version of Duplex is up - get it from this location

– What’s new in Duplex 0.98b21 -----------


  • Fixed: application was updating display when stopped/paused


  • Support line_notifier when slots are aliased (also when created and/or removed)
  • Workflow: when navigating from a long pattern into a shorter one, start from the top (IOW, always restrict to the actual pattern length)
  • Fixed: update the volume-level display when base volume is changed
  • Fixed: selecting a group track could cause an error


  • Fixed: issue when loading a new song while Navigator was displaying nothing
    (playback happening in a different pattern)


  • Fixed: retain mute state when toggling a pattern off (hold x2)
  • Fixed: track navigation could show wrong track on startup
  • Turbocharged (pattern cache + aliased slots)
  • Feature/workflow: (even) closer integration into Renoise
  • detect changes to mute states in the Renoise matrix (mouse+alt-click)
  • detect when a pattern has been scheduled in Renoise
  • disable pattern loop to allow song to play, pattern-by-pattern (1)
  • Feature/workflow: ability to clone gridpie pattern while playing

(1) This, and pattern scheduling via Renoise can be considered experimental as we can’t reliably detect a scheduled pattern.

Duplex Core

  • Fixed: bug when handling MIDI ports that are added/removed while running
  • Streamlined documentation with lua-doc friendly code formatting

Hmmm, this doesn’t seem to work with an arduinome 64 (connected via serialosc). The leds properly light up according to the Duplex window, but apparently no messages from the buttons are received. Duplex configuration matches my serialosc.conf below. Any tips?

server {  
 port = 8082  
application {  
 osc_prefix = "/duplex"  
 host = ""  
 port = 8002  
device {  
 rotation = 0  

@artfwo: have you switched to serialosc in the first place?
Open the Monome.lua file, and change the following:

self.comm_protocol = self.MONOMESERIAL  


self.comm_protocol = self.SERIALOSC   


Yes, otherwise I hadn’t even the leds working in the past.

EDIT: I added a couple of print statements in Monome:send_osc_message and Monome:receive_osc_message. Sent messages get printed, but received don’t, weird.

Also, oscdump utility from liblo toolkit displays the messages on port 8002 (e.g. /duplex/grid/key iii 0 6 1), when the tool isn’t running.

With serialosc, I’ve experienced a lot of different issues. It’s complicated to set up, and error-prone. Especially on Windows, and when running software that doesn’t have compiled “externals” (such as Max MSP)
If possible, you might be better off running an old - but stable - monomeserial connection?

In any case, you can perhaps tell me a bit about your computer setup - the OS you’re running, serialosc version etc.

Well, I’m currently running everything on Ubuntu 12.04 (amd64), and the stable version of serialosc (1.0), with the above ports/prefix configuration, which works perfectly with rove and other software.

IIRC, previous versions of Duplex worked vice-versa out of the box (no led feedback, working buttons) - the issue was easily fixed by applying nightmorph’s changes from https://github.com/nightmorph/Duplex.

Hey, it looks like I somehow managed to comment out an important method - socket_message.
Try to re-enable it, by removing the “–[[” and “]]” blocks from the source code?

Yay, now it works! Thanks! ^_^

I have now released a new version containing the fix, also available on SVN.

The gratitude that goes both ways - together we figured it out !!