Conductive Labs Support Forum
Max for Live NDLR CC Control - device development - Printable Version

+- Conductive Labs Support Forum (https://conductivelabs.com/forum)
+-- Forum: The NDLR (https://conductivelabs.com/forum/forumdisplay.php?fid=1)
+--- Forum: General Support (https://conductivelabs.com/forum/forumdisplay.php?fid=2)
+--- Thread: Max for Live NDLR CC Control - device development (/showthread.php?tid=1251)

Pages: 1 2


Max for Live NDLR CC Control - device development - robrain - 12-10-2020

[ see below for released version: https://conductivelabs.com/forum/showthread.php?tid=1251&pid=3326#pid3326]

Hi there,

I've been working on a Max for Live MIDI device to view and control the CC parameters of the NDLR and it's almost ready for public consumption.I thought I'd post this to get myself over the finishing line, gauge interest and maybe get some feedback.

The device (a fancy name for an Ableton plugin, more or less) lets you see most of the parameters from Appendix A in the manual. It also lets you set most of them, using dials or drop-down menus as appropriate. It lets you map the settings to whatever physical MIDI controllers you use with Ableton, or to Macros. And finally it lets you automate most of the parameters.

Some CC#s are not responding correctly - I'm documenting the problems in the beta forum. And that leads to an important requirement - you must be using Firmware 1.1.071 for this to work fully. I haven't tested it with older firmwares, but I know it won't work properly since the CC#s have changed over time.

If this sort of thing interests you, I'd be delighted to hear what you think of the direction this is heading in. There's a lot of UI work to fettle and I also need to finish Motif-1 and clone it to Motif-2. Nothing is set in stone, except that this device will always be restricted to whatever CCs are exposed by the NDLR - I have no intention of using the Serial API to do anything fancier. Unless lockdown goes on for another year... If someone else does create such a beast and there's utility in combining, then I'm happy to share this without conditions.

As far as the UI is concerned, remember that Ableton devices all have to be this height. Width is unrestricted, but sensible limits apply (best to fit on a small laptop screen's width rather than force scrolling). Part of me thinks all the performance controls should be on the same panel, but it becomes a monster real-quick. The NDLR Panel stuff shown below will be put into a sliding panel, hidden away when not needed so that gives us a bit more space.

Here's some screengrabs of the device inside Ableton to give you a clearer picture (ha). There will be documentation and the control will be open-sourced on Github. You'll be welcome to fork it for your own purposes or offer improvements for everyone, should anyone be that interested - I'm just as happy if I'm the only user Smile.

Settings screen

Stuff I don't regard as changeable during a performance/session. Setup and leave, basically. The "NDLR Panel" section retrieves the current settings from the NDLR. This is not dynamic - if you want the current settings after changing a physical control on the NDLR itself, you'll have to click the Retrieve button. I guess I could poll the NDLR, but it seems ugly to me.

[Image: settings.png]

General

If it's not to do with Pad/Drone/Motif directly, then it goes here. Tempo can be fun - make sure you set Clock In on the NDLR to a sensible value (like "USB 1") and you'll be connected to Ableton's transport. Otherwise make sure you tell Ableton where to get its clock from carefully, or just enjoy a general lack of sync.

[Image: general.png]

Pad/Drone/Motif controls

Performance controls. The big ugly Pause/Play toggle is one of the controls that is not correctly retrieved from the NDLR currently. Send works, receive no-go.
[Image: pad.png]

[Image: drone.png]

[Image: motifs.png]

Ableton setup

Create a new MIDI track. Set MIDI From to the information you configured in the "Retrieve" section. Send MIDI to the "NDLR Cntrl" channel and any NDLR port. Monitor should be set to In.

[Image: midi.png]

Automation 

Add Automation Lanes to the MIDI track created above and use for playback. Or record knob twiddling, or whatever you normally do with Automation. You can automate yourself into a corner here especially by changing MIDI connection mid-track. Caveat noodlor as the Romans would have said.

[Image: automation.png]


RE: Max for Live NDLR CC Control - device development - muhimnest - 12-14-2020

Incredible work on this. I'm still waiting on delivery of my NDLR but this looks like something I would definitely use.

Part of my interest in the NDLR is to capture the MIDI it puts out for further tweaking. Am I correct in understanding this M4L device would allow for precise remote control of the NDLR (vs realtime, by hand)? If so, this sounds perfect for executing and recording variations on a composition.

Where and when do you hope to get the device out? Many thanks!


RE: Max for Live NDLR CC Control - device development - robrain - 12-14-2020

(12-14-2020, 05:17 AM)muhimnest Wrote: Incredible work on this. I'm still waiting on delivery of my NDLR but this looks like something I would definitely use.

Part of my interest in the NDLR is to capture the MIDI it puts out for further tweaking. Am I correct in understanding this M4L device would allow for precise remote control of the NDLR (vs realtime, by hand)? If so, this sounds perfect for executing and recording variations on a composition. 

Where and when do you hope to get the device out? Many thanks!

Hey there @muhimnest. Thanks for that. All being well I'll get something out by the end of this week (although the scheduled arrival of a Make Noise 0-Coast this afternoon might distract me Smile

Automation was the big driver for me. You can create multiple automation lanes to control many parameters "simultaneously" (its a serial link, but you know what I mean). You can play these lanes to the NDLR whilst it goes about its business. If you've got other MIDI controllers you can record motion on those controls - map them to one of the M4L device's exposed parameters. 

The NDLR doesn't send CC continuously, as you change its controls, sadly - you have to click the "Retrieve" button to get an update on the state if you use the NDLR's own knobs and buttons.

It should all be clearer once I've written a set of step-by-step instructions. But basically, yes, it'll let you play CCs to the NDLR and remote control everything that's listed in Appendix A of the manual. One notable omission from that Appendix is the Motif Offset, which is tiresome and hopefully only a temporary omission. Nothing I can do to get around that, sadly.


RE: Max for Live NDLR CC Control - device development - mkomel - 12-17-2020

this is amazing!


RE: Max for Live NDLR CC Control - device development - robrain - 12-18-2020

(12-17-2020, 06:55 PM)mkomel Wrote: this is amazing!

Much obliged! Let's see how it goes when I release it.

Talking of which, here's the Github repository where I'll be putting the device shortly. I'm building up the scaffolding of the documentation right now. Then I'll put today's version of the tool in place. It's very pre-beta and may cause crashes, cramps or premature hair loss, but it'll be out there for people to try.

Github repository:

https://github.com/ratbag98/ndlr_control

No device up there yet (last-minute packaging issue), will post here when it's ready for public consumption.


RE: Max for Live NDLR CC Control - device development - info@marcelmolenaar.com - 01-08-2021

We can I find the NDLR CC Control.amxd?
I would like to try or test it!
Look amazing  Cool


RE: Max for Live NDLR CC Control - device development - robrain - 01-08-2021

(01-08-2021, 10:18 AM)info@marcelmolenaar.com Wrote: We can I find the NDLR CC Control.amxd?
I would like to try or test it!
Look amazing  Cool

G'day Marcel (sorry if I've got your name wrong) and thanks for the feedback.

There's a bit of a delay at the moment. Just before Christmas I started getting vertigo and dizzy spells. Doc says it's labyrinthitis, I say it's making me miserable and not keen to use a computer. I've just started on some new pills and if they do the trick I'll be able to sit facing a screen for more than a few minutes and I'll get it finished. If these pills don't work then I'll push the current state to github for the community to do with as they wish whilst I sort myself out. Give me a few days. There isn't much to finish for the first release. It's mainly just bundling the thing into a single file and making sure I've not missed any dependencies or done anything stupid that will annoy test users (like marching over all their settings or something similar).


RE: Max for Live NDLR CC Control - device development - racecube - 01-09-2021

Get well soon and thx foe your work!


RE: Max for Live NDLR CC Control - device development - robrain - 01-18-2021

Here's the initial pre-alpha feature-incomplete use at your own risk don't know why I'm bothering release.

https://github.com/ratbag98/ndlr_control

Either clone the repo if you want to fork it (I won't insult your intelligence by offering instructions for that).

Or download the "NDLR CC Control.amxd" file here: https://github.com/ratbag98/ndlr_control/raw/master/NDLR%20CC%20Control.amxd

The extremely skeletal instructions are on the site's wiki: https://github.com/ratbag98/ndlr_control/wiki

Double-clicking the amxd file once you've downloaded it should get it into Ableton. Then the wiki has instructions on how to configure MIDI - this is vital.

If nothing seems to work then make sure the "NDLR Panel" has sensible values (a valid port and channel, preferably not used by anything else) and mash the Retrieve button.

Key points to remember:

1. It's one way traffic other than when you click Retrieve. Ableton will send information to the NDLR but it won't get anything back unless you hit Retrieve. So the two interfaces can easily get out of sync if you keep using the controls on the NDLR itself.

2. Some of the controls don't work. See the thread in the NDLR Beta firmware channel for the whys and wherefores. I hope that a future firmware release will correct some of the CC inconsistencies.

3. Some of the controls can't work: the NDLR doesn't send CCs for things like the part activation buttons. So they appear empty on startup, even if on the NDLR itself they're all primed. After you've clicked Retrieve, click on the activation buttons in the Ableton interface to match the NDLR - from then on they'll be fine (see point 1 above though - if you press the physical buttons then the interfaces will drift again).

The best way to report bugs is via the Github Issues interface here: https://github.com/ratbag98/ndlr_control/issues, but I'll understand if you just want to put a comment here (I'll paste it into Issues as appropriate).

And finally... I got a Deluge last week and I seriously believe that this whole exercise wouldn't have been done if I'd had it originally! The Deluge + NDLR combo is killer and far more immediate (for me at least) than mousing around! But there will still be occasions when I want to do something more complex, and of course you can record the Ableton automation into the Deluge (I think, although I haven't tried), so it's still a useful tool that I will continue to improve.

See SynthDad's excellent tutorial for Deluge+NDLR: https://youtu.be/wvrFre6rM_k

And finally finally - still suffering with the dizziness, so apologies if I take a day or two per bug. I'm not ignoring you, honestly.


RE: Max for Live NDLR CC Control - device development - info@marcelmolenaar.com - 01-18-2021

Thanks! Really great. Thanks for the effort. I will have a look and see how it works!
Take care.

Marcel