Duplex: Apc40/20 Layout Suggestion

Yeah, thanks. I’m glad too. :D

Yeah, basically this is the problem - there is only one “actual” XYPad in Renoise, but this setup is trying to control it using two different approaches.
And because each one uses a different value-range, the error arises …

I guess you did read the instruction, it’s mentioned that you need choose a specific input method…buttons, slider, etc.

However, I would like to make this solution more flexible, but I would need to change some stuff pretty deep inside the Duplex framework.
This wouldn’t be a problem if it wasn’t because I currently have no access to a device running TouchOSC, a pretty important controller not to break.

So, for now you simply have to stick with a single method for controlling those XYpads - either the grid, or sliders/knobs :slight_smile:

EDIT: I just released a version including your BPM control modifications B)

Ah, ok I see.

But I want to leave the config file in this thread, since actually the config works fine as it is. To be lit or not is not a big problem. If a APC user read here and see the image above, he can understand it easily, I think.
(though I’ll remake it if I think of a layout better than it. ;) )

Btw, please include the new Mackie Control config (with panning knob support) too in the next update. It’s more commonly used config than APC.

oh man, i’m having some issues getting my apc20 working properly using duplex. all my tabs just play notes, as if the device is in “note mode”. in fact, note mode is highlighted when it first turns on. i’m not able to turn it off though.

any help would be greatly appreciated.

here is my output from terminal. it looks like there’s a bunch of stuff being sent to the device on initialization. then, the bottom “receives” are the top 4 pads on my apc20.

MidiDevice: Akai APC20 send MIDI 80 34 0
MidiDevice: Akai APC20 send MIDI 81 34 0
MidiDevice: Akai APC20 send MIDI 82 34 0
MidiDevice: Akai APC20 send MIDI 83 34 0
MidiDevice: Akai APC20 send MIDI 84 34 0
MidiDevice: Akai APC20 send MIDI 85 34 0
MidiDevice: Akai APC20 send MIDI 86 34 0
MidiDevice: Akai APC20 send MIDI 87 34 0
MidiDevice: Akai APC20 send MIDI 80 34 0
MidiDevice: Akai APC20 send MIDI B0 2F 6C
MidiDevice: Akai APC20 send MIDI 97 32 7F
MidiDevice: Akai APC20 send MIDI 86 32 0
MidiDevice: Akai APC20 send MIDI B0 7 59
MidiDevice: Akai APC20 send MIDI B1 7 59
MidiDevice: Akai APC20 send MIDI B2 7 59
MidiDevice: Akai APC20 send MIDI B3 7 59
MidiDevice: Akai APC20 send MIDI B4 7 59
MidiDevice: Akai APC20 send MIDI B5 7 59
MidiDevice: Akai APC20 send MIDI B6 7 59
MidiDevice: Akai APC20 send MIDI B7 7 59
MidiDevice: Akai APC20 send MIDI 80 30 0
MidiDevice: Akai APC20 send MIDI 81 30 0
MidiDevice: Akai APC20 send MIDI 82 30 0
MidiDevice: Akai APC20 send MIDI 83 30 0
MidiDevice: Akai APC20 send MIDI 84 30 0
MidiDevice: Akai APC20 send MIDI 85 30 0
MidiDevice: Akai APC20 send MIDI 86 30 0
MidiDevice: Akai APC20 send MIDI 87 30 0
MidiDevice: Akai APC20 send MIDI 80 31 0
MidiDevice: Akai APC20 send MIDI 81 31 0
MidiDevice: Akai APC20 send MIDI 82 31 0
MidiDevice: Akai APC20 send MIDI 83 31 0
MidiDevice: Akai APC20 send MIDI 84 31 0
MidiDevice: Akai APC20 send MIDI 85 31 0
MidiDevice: Akai APC20 send MIDI 86 31 0
MidiDevice: Akai APC20 send MIDI 87 31 0
MidiDevice: Akai APC20 send MIDI B0 E 59
MidiDevice: Akai APC20 send MIDI 90 50 7F
MidiDevice: Akai APC20 send MIDI 86 33 0
MidiDevice: Akai APC20 send MIDI 87 33 0
MidiDevice: Akai APC20 send MIDI 84 33 0
MidiDevice: Akai APC20 send MIDI 85 33 0
MidiDevice: Akai APC20 send MIDI 80 35 0
MidiDevice: Akai APC20 send MIDI 80 36 0
MidiDevice: Akai APC20 send MIDI 80 37 0
MidiDevice: Akai APC20 send MIDI 80 38 0
MidiDevice: Akai APC20 send MIDI 80 39 0
MidiDevice: Akai APC20 send MIDI 81 35 0
MidiDevice: Akai APC20 send MIDI 81 36 0
MidiDevice: Akai APC20 send MIDI 81 37 0
MidiDevice: Akai APC20 send MIDI 81 38 0
MidiDevice: Akai APC20 send MIDI 81 39 0
MidiDevice: Akai APC20 send MIDI 82 35 0
MidiDevice: Akai APC20 send MIDI 82 36 0
MidiDevice: Akai APC20 send MIDI 82 37 0
MidiDevice: Akai APC20 send MIDI 82 38 0
MidiDevice: Akai APC20 send MIDI 82 39 0
MidiDevice: Akai APC20 send MIDI 83 35 0
MidiDevice: Akai APC20 send MIDI 83 36 0
MidiDevice: Akai APC20 send MIDI 83 37 0
MidiDevice: Akai APC20 send MIDI 83 38 0
MidiDevice: Akai APC20 send MIDI 83 39 0
MidiDevice: Akai APC20 send MIDI 84 35 0
MidiDevice: Akai APC20 send MIDI 84 36 0
MidiDevice: Akai APC20 send MIDI 84 37 0
MidiDevice: Akai APC20 send MIDI 84 38 0
MidiDevice: Akai APC20 send MIDI 82 39 0
MidiDevice: Akai APC20 send MIDI 83 35 0
MidiDevice: Akai APC20 send MIDI 83 36 0
MidiDevice: Akai APC20 send MIDI 83 37 0
MidiDevice: Akai APC20 send MIDI 83 38 0
MidiDevice: Akai APC20 send MIDI 83 39 0
MidiDevice: Akai APC20 send MIDI 84 35 0
MidiDevice: Akai APC20 send MIDI 84 36 0
MidiDevice: Akai APC20 send MIDI 84 37 0
MidiDevice: Akai APC20 send MIDI 84 38 0
MidiDevice: Akai APC20 send MIDI 84 39 0
MidiDevice: Akai APC20 send MIDI 85 35 0
MidiDevice: Akai APC20 send MIDI 85 36 0
MidiDevice: Akai APC20 send MIDI 85 37 0
MidiDevice: Akai APC20 send MIDI 85 38 0
MidiDevice: Akai APC20 send MIDI 85 39 0
MidiDevice: Akai APC20 send MIDI 86 35 0
MidiDevice: Akai APC20 send MIDI 86 36 0
MidiDevice: Akai APC20 send MIDI 86 37 0
MidiDevice: Akai APC20 send MIDI 86 38 0
MidiDevice: Akai APC20 send MIDI 86 39 0
MidiDevice: Akai APC20 send MIDI 87 35 0
MidiDevice: Akai APC20 send MIDI 87 36 0
MidiDevice: Akai APC20 send MIDI 87 37 0
MidiDevice: Akai APC20 send MIDI 87 38 0
MidiDevice: Akai APC20 send MIDI 87 39 0
MidiDevice: Akai APC20 send MIDI 81 33 0
MidiDevice: Akai APC20 send MIDI 80 33 0
MidiDevice: Akai APC20 send MIDI 80 32 0
MidiDevice: Akai APC20 send MIDI 82 33 0
MidiDevice: Akai APC20 send MIDI 81 32 0
MidiDevice: Akai APC20 send MIDI 83 33 0
MidiDevice: Akai APC20 send MIDI 82 32 0
MidiDevice: Akai APC20 send MIDI 90 34 7F
MidiDevice: Akai APC20 received MIDI 90 35 7F
MidiDevice: Akai APC20 received MIDI 80 35 7F
MidiDevice: Akai APC20 received MIDI 91 35 7F
MidiDevice: Akai APC20 received MIDI 81 35 7F
MidiDevice: Akai APC20 received MIDI 92 35 7F
MidiDevice: Akai APC20 received MIDI 82 35 7F
MidiDevice: Akai APC20 received MIDI 93 35 7F
MidiDevice: Akai APC20 received MIDI 83 35 7F

Ahh, no no. I think your output data is normal, it’s not in “note mode” (As far as you use Duplex, APC20 never will be the “note mode”, I think).

If you hear notes when you hit every CLIP LAUNCH buttons, probably you have set APC20 on the Renoise’s Preferences panel as a midi device. Please don’t set APC20 as a Renoise’s native midi device. It’s enough if you set midi i/o port in Duplex only.

I set my Renoise Preference midi device to none, have it set in Duplex alone. I’m seeing data in the console. But nothing is happening at all. None of the faders move the faders in the Duplex browser, navigation doesn’t work, nothing.

ug sorry… i didn’t click run… shameful

You mean this or is it sarcastic?

No sarcastic at all. Maybe Rolling Eyes emoticon might give you misunderstanding though, I simply was impressed to see their movie on that day.
Well, I’m not going to buy it though (it’s expensive for me and I don’t need Live ;)/> ).

Hey guys I’ve been able to get my apc20 working well in GripPie mode, but in Matrix mode the page left and page right buttons aren’t working. Is this a known issue?

Ohhh thanks. Indeed, I have been overlooking it. :(
It seems that the “page” mapping of the Mixer app was changed a bit.

Please change like this;

Duplex/Controllers/APC20/Configurations/MatrixNavigatorTransportMixer.lua

line:112

Wrong

  
 page = {  
 group_name = "Transport",  
 index = 5,  
 },  
 },  
  

Correct

  
 prev_page = {  
 group_name = "Transport",  
 index = 5,  
 },  
 next_page = {  
 group_name = "Transport",  
 index = 6,  
 },  
 },  
  

Hi!
Is there any ability to implement note mode for APC20 and other SHIFT+button features and pass them directly to Renoise for custom mapping and/or live beating?

Hmm, if you asked me, I have to say I cannot do it since I don’t have deep lua programming skill.
Probably more hacking and programming skill are needed.

At least, I know that we can change APC’s mode by sysex signal.
If you interested in it, see page 6 in this pdf : APC20 Note-mode is “0x43”.
http://www.akaipro.com/extras/product/apc40/APC40_Communications_Protocol_rev_1.pdf

But I cannot do such lua programming at all… :rolleyes:/>/>
Also, even if someone can do, it will be quite limited feature since it can be used only on APC20.

Rather than it, it may be good if there is a Duplex application such as simple Note-triggering app.
Though I don’t know whether it can be realized or not, since I’ve heard that lua is not enough to use such Real-time performance.

Anyway, probably, both will not be so easy. :unsure:/>/>

The Keyboard application for Duplex will work just fine, without having to mess with code.
I’ll create a couple of configuration today for the APC’s, based on existing one for the Launchpad :slight_smile:

As for latency, it’s pretty efficient. You have to distinguish between user-generated and programmatic (machine-generated) events.
The keyboard relies purely on user-generated events, for which there a small - but hardly noticable - delay and the resulting precision is fine.

My concerns about real-time performance are about scripts which would trigger rhythmic notes on it’s own, that could become wonky in the bad sense of the word.
If you ever wanted that sort of precision, you’d have to write a script which would inject the notes/fx directly into the pattern first.

I was trying note mode with APC20 in Renoise. Response was far better than in Ableton)) I can’t notice any delay at all.

But we have to reply with sysex msg to APC20 when note mode button is pressed to turn the Note Mode first.
And lit the None Mode pad with some color.
And return to User Mode when pad is pressed second time.
I can try to do it (Have some C lang skills) but tell me, plz, where to look first)

Here’s the updated APC controller files for Duplex, now including the Keyboard application.

Just unzip, and overwrite the existing files within the Duplex/Controllers folder and then (re)start Renoise.

Thanks! It works fine. Initially I was thinking of quick toggle into note mode inside matrix configuration.
As it is done in Ableton. But it is the same as change whole config with next button.

I’ve noticed that when there are drumkit slices only one pad is lit RED which corresponds to base note of whole sample.

Ah, I’ve overlooked the keyboard app. Thanks for making the config, danoise. B)/>/>/>
Btw, now I find some tiny issues on the APC config.

  1. “Rec button” and “Play-follow mode button” aren’t lit on the hardware side, though they are lit on the Duplex Browser. Actually they works, just aren’t lit.

  2. Left/Right buttons are disappeared still on your new config. (see the post #30 above ;)/>/> )

  3. When I switch the config to GridPie, the “Run” button is turnd off. I know why it is so somehow, but it breaks the relationship between switching configs. Isn’t there a good solution avoiding this??

  4. About relative knob (for BPM); it’s a bit difficult to explain though…
    It works almost. However, it does not move when I want to do very delicate (very slow) operation.
    For example, when I want to set BPM 100, I can move the value to “97” or else easily, but then I cannot adjust it to “100” (i.e. fine-tuning).

  1. When any navigator key(Group #3) is pressed lua script error occurs.

Well, that’s just plain weird. Is communication broken in both directions? E.g., if you toggle edit-mode or playback-follow in Renoise, will the hardware update it’s display? If you press the hardware, will Renoise update (but the hardware not)?

Ah, I though those were updated. Will of course fix that.

Yes, there’s a good reason - starting Grid Pie will transform the whole song (set mute state for matrix slots). You don’t want to “accidentally” do this, if you are just pressing random buttons on a controller and learning things. But you can control the Grid Pie startup process in the Duplex settings dialog and make it auto-start.

When dealing with large BPM ranges some values aren’t accessible - this is simply a limitation of how I’ve made the MidiActions application. If you think that this is really annoying, try to set the range to something like 50-177 BPM (linear scaling).

Sorry, I can’t reproduce that error. Would you mind giving it another try, and then post the error message here?