Can Renoise Rewire Slave Send Midi To Logic Master

Can a renoise rewire slave send midi to a logic rewire master? I’m curious to know if logic can record midi from renoise via rewire. The renoise manual doesn’t mention this explicitly in the section on renoise as a rewire slave (http://tutorials.renoise.com/wiki/ReWire).

This article outlines an approach to getting midi from a rewire slave into logic using Audio Midi Setup utility in OSX.

http://compusition.com/web/articles/logic-multitrack-midi

However, routing the midi into logic is outside of rewire framework.

If you go to System Preferences → Audio & Midi Setup and go to the Midi Window, you can create a IAC Bus (Inter Application C(something)). It will function as a virtual midiport you can send notes to from Renoise, and you can go into Logic and connect your Physical Input IAC-bus to the Sequencer Input. This will enable you to record midi in Logic that is coming from Renoise itself.


You can define specific midi input devices for each instrument. renoise does however not yet make Midi channels available through ReWire, so you would need Virtual midi adapters like Midi Yoke or Copperlan to link instruments to the reWire master host.
For signalling, this doesn’t matter too much, the only hassle is you need to install and configure extra software.

On the Mac you can use the IAC driver to do what similar what Midi Yoke and Copperlan do on Windows.
Beaten by Esa…

Though recording on the slave:I don’t know if you can do that because the master controls all audio input and does not send audio out towards its slave.
ReWire architecture doesn’t support that part.

Thanks for taking the time to make the screenshot. I don’t have logic yet and was wondering if you had tried recording multiple tracks of midi from a renoise slave? Any latencies or timing issues? I want to use multiple tracks of renoise to play multiple logic plugins.

The article (http://compusition.com/web/articles/logic-multitrack-midi) uses "“Auto demix by channel if multitrack recording”. Do you think it’s possible to record more than 16 midi channels simultaneously if additional IAC ports are used or does auto demix have a limit?

Hmm. Logic only records what you send to Sequencer Input. You can route multiple midi-ports to Sequencer Input. I haven’t yet looked at the URL you linked, but will soon, since it seems interesting. Before I read it tho, a few things:
You can build a Logic Environment where multiple IAC ports are read and processed onto multiple Audio Objects (which will have various AU/Native Logic synthesizers). With this, you can use Renoise as a sequencer to control a pretty neat amount of synths inside Logic. But the notes that you send from Renoise to Logic will not be recorded, because you will actually be using the Physical Input to route (with Environment cabling), midi-notes from a specific midi-port directly to an Audio Object. This is one way of using the Environment in Logic to allow you to play multiple synthesizers in various combinations. In theory, you could track a complete song in Renoise using only midi-instruments (IAC), and then export that .mid and try and load it into logic and then move the midi regions around inside Logic to fix them onto the audio objects of your choice.

A Logic Environment Object by the name of “Multi-Channel Instrument” could receive notes from Renoise, and the various channels could be (again with the Environment), routed to various synthesizers inside Logic. This way you would only have one instrument selected in the Arrangement window, and that would talk to all the synths, and Renoise would talk to it.

I think now’s a good time for me to click on logic-multitrack-midi url and see what happens. Ok, looks real neat :)
“Auto demix by channel if multitrack recording”

I might try this, since Logic’s Environment is really powerful, and being able to use Renoise to send notes via Logic’s Environment would be quite amazing. I’ve never used auto demixing before, but it does seem to solve pretty much all the issues (and no need to use a multi-instrument, and no need to use the environment (apart from of course connecting your IAC Bus to Sequencer Input and saving it as a Logic Template song so you don’t have to always do it in the environment)

The suggestion of having 16 audio objects in Logic which are all limited to only responding to a specific midichannel, kind of specifies that you won’t be able to then push in a second set of 16 midichannels. For, you see, once you combine two IAC buses sending midinotes on channel 1-16 each to Logic’s Sequencer Input, the IACBus#1 Channel#1 and IACBus#2 Channel#1 are going to be understood as Note_Logic_Got_At_Channel1 each.

By the way… You could use this same setup to toggle multiple instruments. I.e. you could use one IAC Bus sending midichannels 1-16, and say something like this:
“Okay, I want midichannel 4 to toggle 38 different synthesizers with one note”. This would require you to create 38 new audio objects inside Logic, and map them to midichannel 4 only.
If you really want to use multiple IAC Buses to push in midinotes from >midichannels, I would propose this:
Go a bit more complex. How?

Like this: You have IAC Bus 1 Chn1 and IAC Bus 2 Chn1 sending midinotes to Logic.
One sends C-2 - C-5 notes, and the other sends C-6 - C-8 notes. I hope you can see where I’m going with this…
Since the tutorial already taught you how to split audio objects to respond to only specific midi channels, if you want to use 16 midichannels to control more of Logic, you will be using Keyranges.
Except they’re called Key Limits in Logic Pro 9 :)

If you use this, you can define that specific instruments only play when they receive notes from channel1 at a specific octave range. This would enable you to record notes into a multitude of midi-channel1 receiving midi-instruments inside Logic, and thus you could use “more than 16 channels”.

hey, thx for the rich, detailed research report along with the clever idea. i really appreciate it!

You’re welcome. Also, if you do plan on using Logic&Renoise together in a Master ReWire/Slave ReWire mode where Renoise sends midi notes to Logic, you could also set up Renoise to send audio to Logic via ReWire, here’s a tutorial I knocked up a while ago detailing how to hook up Live(Master)&Renoise(Slave) or Logic(Master)&Renoise(Slave).

Any further questions, please let me know. At one point in time I made a little IAC Bus-controlling Logic Environment where one knob would actually control which pattern is selected inside Renoise during playback. (Renoise would only have 1 pattern in the orderlist, and I’d use Logic to decide when to play pattern x or when to play pattern y - i.e. using a Logic-controllable / arrangeable button to switch which pattern Renoise is playing during the song. There were some latency-based issues with this, but it did feel quite nice overall - albeit fiddly.

This is an old thread, but is about what I want to do.

So, I set up the IAC on my mac, set up the environment in logic (as detailed above), sent the midi from the instrument in renoise who’s midi data I wanted to record and then created a new External Midi track (I had to open a new logic project to get it to show the IAC port thingy in the external midi instrument setup). I was then receiving midi from renoise (slave) in logic (master). HOWEVER, when I tried to record the midi on the track, not only did it not record the notes properly (instead, lots of notes (at full 127 velocity) were all recorded on top of each other, so, the first note started, but then stretched out for bars and bars, then the second note did the same, so, the piano roll input section I was recording on/in logic looked like half a pyramid) but also logic went mental, slowed down, I got that spinning beach ball of doom happening, the whole system froze.

Can anyone help suggest something to stop this from happening and get logic (master) to record renoise (slave) midi data properly?

Similarly, when I record midi in renoise from logic, I think it’s out of time. It never starts on zero (so far anyway), if anyone has any resolutions for this issue, that would be appreciated too.

Cheers guys.

SORT OF SOLVED Still could do with advise though.

Oddly, if I press record in logic when on another, non midi from renoise input track (like a normal instrument, or bus track, etc; anything not a midi in from renoise), then it records the midi without crashing and without creating the weird shapes. It’s still slightly out of sync though, and it’s on the wrong note transposition (but this can be quickly adjusted), but I think this (former/sync) could be due to logic doing a little count down/count-in thing before it gets to 1.1.1.1 (the starting point for a song in logic), not sure. Will test out and report back. Still, if anyone has any info about how to get it in time/in the right position/transposition, that would be appreciated.

When you try and record on the midi from renoise channel in logic, then this is what it looks like: 5097 Screen Shot 2014-06-05 at 18.21.31.png

It has weird greyed out bits to the left.

If you click on it then notes appear like so: 5098 Screen Shot 2014-06-05 at 18.22.00.png

I’ve changed logic so there’s no count-in/down before recording, but, it’s still recording midi from renoise slightly out of time (also I can’t get it to be in the right transposition position).

Tips or help of how to solve either would be appreciated. :)

Have you tried enabling Record Quantization in Logic Pro X? I think if you’re on a regular tracker spree, just trying to output notes to Logic from Renoise, Record quantization of 1/16 would suffice.
Thing is, there’s always going to be a bit of latency between Renoise ↔ IAC ↔ Logic Pro X.

All you gotta do is select no region in Logic and then enable Quantization (see image).

About the held notes Renoise->Logic – sorry to be lazy and ask: Do you send any note offs? :)/>

uhh, also one more thing… instead of enabling record in Logic… Start using “Capture Last Take” in Logic. Whenever you are playing a song in Logic, Logic is actually recording input midi. You can then press “Capture Last Take” and it will be imported from the midi note buffer. This way you don’t have to bother with the count-ins and countdowns or anything, and can just play some stuff in on-the-go, resulting in fairly fluid note inputting.

Capture Last Take is hidden from the Transport by default, so you have to ctrl-click on the Transport, select Customize Control Bar and Display, and enable “Capture Recording”. You can also enable a keyboard shortcut for it (see attached).
As to why it’s called Capture Recording in Logic Pro X and why I’m referring to it as Capture Last Take, I’m coming from Logic Audio Platinum 5.5.1 town and I think the “original” term is more sensible.

Re quantization: That works, to a degree, but, I seem to get better results from doing it after (as, I have to move it, even with quantize on input). Though, generally, to save doing it each time, yup, thanks, :) , that’ll probably help.

What do you mean by regular track spree?

Why is you asking lazy? I send whatever the pattern in renoise ‘says’. This sometimes includes note offs. Also, the majority of what I’m using this for is cut up drum loops, so, there’s delay information in renoise too.

Should I not be sending either?

Re capture last take, I had no idea about this feature. Unfortunately, I get a similar thing happening with that than I do with recording on the IAC from renoise midi track. Spinning beachball of doom (for minutes) and or logic freezing, having to force quit and restart. When I’ve tried it on the other tracks in logic (like I said I did before; any track that isn’t the IAC from renoise) then the same thing happens as if I was recording it (sort of). It freezes for a min (unlike recording normally) and then I get weird output (like recording normally). I just tried it again and got a whole load of weird output. This time I got a whole packed folder type of thing (still with notes all in the wrong place). No note off info in this try, but when I play back on the region I recorded from capture last take, it stops and I have to press play again for each beat. Weird.

Is there a simple way that you’re aware of of just copying and pasting midi data from one to the other? Similarly, is there a simple way of having it setup so data comes up on both a matching track in logic and renoise at the same time?

Also, you seem to know about midi/logic/renoise: if I’ve already got a Renoise-Midi-In from logic to renoise, using channel 1 for Renoise-Midi-In, does that mean I should use channel 2 for midi FROM renoise for the IAC? Or do they each have a different set of channels that are independent of each other?

Also, how come logic still records midi data even if I don’t have the IAC track selected? And, why is it that it records better/(at all) if I’m recording data on a non IAC (from renoise) track, than it does on the IAC track?

Also, I’m still on Logic 9, I was thinking about switching to bitwig as my main DAW, because I don’t like being tied to one OS. Though, with logic and renoise playing reasonably well, I’m liking it again (still might add either ableton or bitwig into the rewire mix for a DAW just for audio manipulation, as flex time pales in comparison to ableton or bitwig IMO). How’s Logic X in your opinion? Honestly? Haha. Is it worth the switch?

Retro, haha. That’s 1 and a half version before me. I started on 7, when you still needed a dongle.

i just meant that if you’re at LPB4 or LPB8 and non-crazy tempos, for outputting regular notes to logic from renoise, 1/16 might be ok. but if you’re going absolutely crazy with tracker note delays and crazy rhythms, then maybe some other quantization format would give you better service.

i was referring to being lazy due to not really reading the thread (your new posts) properly - i.e., you might’ve mentioned that you already try to use note offs from renoise to logic. that pyramid you are building with the notes, to me, would mean that there are hung notes there (notes without note off). my first step would be to slap in a lot of note offs after each note and see if it fixes the pyramid / held note issue. i think renoise should be able to send delay information and other information (maybe even pitch bends) via IAC midi to logic, no problem, and logic should be able to comprehend what to do with them.

yeah, capture last take is a real gem for allowing one to arrange songs on the fly with logic… can just play stuff in, take the good stuff and ditch the poor stuff. most of my stuff made in logic is enabled by capture last take - as that’s really the only way for me to guide a track somewhere.

i think the beachball of doom could be related to feedback between Renoise->IAC->Logic. Can you provide a screenshot of your IAC settings? I used to rename IAC busses like this:

1- From Renoise
2- From Logic
3- From SchismTracker
4- From Live

so I would always disable “From Renoise” in Renoise, so there’s no midi input coming back, creating feedback. Also, I would watch out that the Midi Instrument in Logic is not accidentally sending to “From Renoise” - creating a feedback loop.

Can you provide a set of screenshots of your Logic Environment, your IAC settings and your Renoise output? Just so we’re all on the same page.

what you are describing with the weird output and all, this sounds very odd – i’m trying to think how this could be replicated with my setup so that i could see what the real issue is… we’ll get to the bottom of this, i think.

If you move a midi region in Logic to 1.1.1.1 (the start of the Arranger view), you can export it as .MID ( select the region and go to file → export → export as midi (term may vary) - this should be possible to be loaded into renoise. I would love for there to be a way of copypasting midi notes to clipboard form logic to renoise, from renoise to logic - so far i am not aware of there being this kind of a method.

This other simple way so that data comes to logic and to renoise – are you referring to midi input from an external keyboard? maybe i’m slightly tired and incapable of thinking straight, but if that’s not what you’re describing, then it sounds like you’ll be risking feedback. (i mean, are you trying to make it so that you can press a pc-keyboard note and it is recorded into renoise and into logic? you’d have to have a sample or a vsti in renoise in addition to a midi output from renoise to logic. then you’d have to switch the midi output from renoise to logic off from renoise, so it doesn’t bother logic, when you’re done with the actual note recording from renoise to logic…

i never had to use Renoise-Midi-In to get Logic to talk to Renoise. thing is, if you’re having a sample in Renoise, and you want to send notes from Logic to it, you’ll have to select the IAC Bus you are sending from Logic to Renoise, and make sure Renoise never sends to that IAC bus ever. you have a fairly unlimited set of IAC Busses you can create, i would recommend keeping it simple and renaming them so that you always have a reminder telling you (in the shape of the IAC Bus name) that what you are sending from Renoise is going to “From Renoise” etc. :)
instead of thinking channels, think ports - make sure the ports do not feedback or overlap… if you want to use Logic in such a way that tracks 1-16 are toggled by midichannels 1-16 from Renoise (for which you will need a Splitter device via the Logic environment… then maybe that’s what you’re after. you can probably set up renoise to work like that, but then you’ll have to assign each instrument’s midi input channel and port and each instrument’s default track.
this could be what you’re after! :)

if renoise is sending to IAC during playback, logic will receive it. if logic has a midi instrument which is both receiving (via environment) IAC and sending to IAC, you’re in feedback-town. Did you configure your midi-tracks to receive via environment or just by arming/selecting a track in logic? if you plugged them in via environment, it’s hard-wired and you’ll have to create a Cable Switcher to stop it from happening… I keep reading what you wrote about “on the IAC track” - have you tried simply creating an ES1 track and having renoise pipe into that? the track-you-are-sending-to should not have anything to do with any IAC bus. you are, after all, (i’m guessing) sending midinotes to Logic for the purpose of toggling samples via EXs24 or your VST/AU of choice, or for running softsynths of either your VST/AU choice or your Logic choice… right?)

I found that OSX,Logic,Renoise,IAC was, when I got it to work properly, really decent and not something i would expect some other OS setup to give. Logic Pro X has some nice simplifications (arpeggiators, delay lines and transformers that used to be stuck in Environment-town are much more accessible to regular people (MidiFX is a new thing in LPx). I think if you’re happy with LP9, stick with it, as there is currently no method of upgrading to LPx for cheap. I never used flex as I felt Ableton Live did all of that nicer and better. I think LPx is quality, it’s just that Live and others have set the bar so high (or moved it to a different area in the horizontal) that Logic can’t really get where Ableton Live and Bitwig are, without changing completely. Sure, you could look into Touchtracks in LP9/LAP5.5.1/LPx but it’s just not the same as session-mode in Live…

Ok. Cheers for the detailed reply. :)

I haven’t checked yet, but, if feedback’s an issue, that could be causing it. I will look into it and get back.

What do you mean by ‘ports rather than channels’?

To clarify, so, when you open an external midi track in logic, you have the library open on the right. I have IAC Driver From Logic, From Renoise (I named them the same as you before you posted this :) ), and Renoise Midi-In (among GM device and my audio interface, etc). In each one there are 16 channels. What I want to know, is, is channel 1 in IAC from renoise, the same channel as channel 1 in IAC from logic, or renoise midi-in?

And, what’s the advantage of setting up an IAC from logic (to renoise) rather than using the standard Renoise Midi-In, that comes up? Renoise Midi-In seems to work fine.

Also, as a fellow mac user, you might be able to help with the following (or at least benefit if I find a workaround):

Ace!

If you’re sending everything to IAC Bus 1 from Renoise, which is received by Logic and by Renoise-Midi-In, surely you’ll get feedback. Just a way of isolating any possible issues that might arise – just to keep it simpler. Start thinking of channels once you have the setup working (trustworthy renoise midi send → logic receive) – before that, think of Logic as just as single-channel synthesizer that you are controlling from Renoise, instead of as a multi-instrument (16 midi-channels per IAC Bus). You can go there later…

Thing is, why would you have an external midi track, unless if you want to send midi from Logic to Renoise. you don’t need an external midi track to receive midi from Renoise to Logic.

Logic → External Instrument → Midi Out to IAC Bus “From Logic”
Renoise → Settings → Midi Input settings → Enable “From Logic”

this should allow you to get a sample in Renoise to play from midi input from Logic. And to record, if you enable recording in Renoise.

Renoise → Midi Instrument → Send to “From Renoise”
Logic → Press record (track you have chosen might have ES1 or EXS24 on it, no midi configuration required.

Channel 1 in From Renoise is not Channel 1 From Logic - these are separate IAC Busses. I would steer clear of Renoise-Midi-In just in case it is causing anything awkward. After you have proper input Renoise->Logic sequencer and Logic sequencer->Renoise pattern, then we can venture into Renoise-Midi-In-town (if there is still a need for it)

There might be no advantage, but the only reason I’m suggesting first IAC then Renoise-Midi-In is to get rid of a possible extra hurdle that might be causing issues.

Someone else will probably know much better (and they’ll rant at me about it) about whether Renoise-Midi-In should be used 100% of the time, 25% of the time or 0% of the time :)