Welcome to %s forums

BrainModular Users Forum

Login Register

Winning team Usine + NI Machine + Android/TouchOSC + Moebius Looper

How do you use usine?
Post Reply
hesspet
Member
Posts: 92
Location: Germany
Contact:

Unread post by hesspet » 01 Jan 2014, 18:51

Hello,

happy new year to all.

For the new years eve I was asked to make a small ambient "gig" during a church service in our local church. I worked hard :-) to make a very small setup.

I've a small Ni Machine Mikro and a cheap Andoid 7inch tablet and I had the idea to use only my laptop and machine and I needed a free flowing looper setup.

For looping I like to use Möbius. The internal loopers of Usine are nice, but don't fullfill my needs.

So I build a setup

* Usine:
** as VST host
** as OSC receiver / sender
** Midi to OSC translator
** Audio "Master" (Echo, Limitterer etc)
** No big touchscreen. Laptop should only be used as display for Machine & Möbius. Touching the keyboard "forbidden"
* NI Machine Mikro as VSTi
* Moebius as Vst
* Android with TouchOSC (inclusive feedback/state control of Moebius) to control the whole setup.

Sounds simple, but was a lot of small things to do.

Let's start at TouchOSC.

Due to my decsision not to use my touch screen (24inch) for the live setup, I was looking for a simple solution to control the whole setup with a small display. Some days before I bought just for fun one of those cheap Android Tablets for 79 Euro as an Arduino controller, plan changed... Wlan works perfect, so I installed TouchOSC and designed my own Moebius/Machine interface which allows me to play free without the overhead of a complex display or a massive screen in front of me. 4 Channels for the looper, buttons for making Moebius and Machine visible, controlling audio out and some things like channel selection, overdub, reseting etc. And - and this was the biggest problem: Give feedback which function is running (Leds and lighted buttons) back to TouchOSC

TouchOSC to Usine. Easy living. Made a patch with OSC Receivers and use the learn function (which is great). Wrote some patches which send MIDI to Moebius (Midi Bus) and control some of the data of the VST via DataBusses.

Took the visible state from the VST Patches and created a patch which sends the currend state back to TouchOSC. Simple. But there's one thing at Usine which is no so good. I need several OSCSenders in differnt patches. And each OSCSender has it's own configuration. During my test I must change sometimes the OSC target (Which is a IP Adress as String). So I must open all patches and change the IP Adress. Later I build a sort of a configuration patch which outputs a bus with the IP Adress to have a central point where I could change the IP Adress for all patches. But this doesn't work very well. I don't know why, but sometimes some of the OSC Senders are not updated. I did not find the rule :-)
Only a small Problem. Maybe I can build a reproducer to show the problem. It must have something to do with the update when the value is changed (String/Array) no "bang" is created, (I know, there is no bang in Usine, but Arrays and Update are a miracle for me, every time when updates are processed) :-) (This was only a minor problem, no showstopper)

After connecting tracks and patches my setup was ready to run. Works perfekt. but "Feedback to TouchOSC?"

All people who are not working with Moebius should now stop reading.... For Moebius fanboys:

Sounds simple, sending states back via OSC. But does not work, Jeff's working on it, it's not ready yet. The OSC Implementation doesn't work stable inside a VST. OK, so why not using MIDI state (for host) information? Does not work, most of the states are not reported to this Interface and I wanted a real feedback of the state. If the red pacman starts on my tablet a red light should go onm mute a blue led (for each channel)

My solution with Usine!

I created a clock patch which creates every 500ms a message. This message is send via MIDIto Moebius. Inside Moebius the controller event is bind to a Moebius script which computes the currend state of each channel and the result is send as bitmask to midi out. Not to OSC, cause it doesn't work. I said MIDI out not Usines internal MIDI! So I used a virtual Midi (Midi Joke) to route this midi message back to Usine. In a separate track a patch split the bitmask and creates the final OSC commands and send this back to TouchOSC. And .. perfect. It works.

A complete roundtrip and a perfect state distribution. Works stable over 24 hours.

It's not normal Usine usage. But this solution, shows the flexibility of Usine. Usine helps me to create a new Instrument from exisiting components. It was great to play this live session and I made a long ambient improvisation. I was asked to do this again at some more events :-) The whole setup needs minutes to be ready to run on "stage".

A small Wifi was running in my pocket :-) So I don't need any connection between the tablet and the laptop.

This is what I call a success story :-)

This setup is complex. For my own understanding I've drawn a diagram as documentation how the components work together:

Image

Wishes / Ideas for the new year :-) :-) :-) A way to remove TouchOSC and have the IB on my Android screen... (only a idea) :-) :-) :-)
+++ journeytounknownsoundscapes.blogspot.de +++
+++ DIY electronics +++ musical experiments +++ light experiments +++

La Tenaille
Member
Posts: 547
Location: Saint Etienne (France)
Contact:

Unread post by La Tenaille » 02 Jan 2014, 23:11

Thanks for sharing hesspet, nice work ! The funny thing is I'm building something similar, using Mobius as VST... and I've encountered the same troubles/difficulties. I hope Jeff will do something for Mobius feedback as he said in his "wish list", because MIDI clock doesn't work fine (I miss something like a MIDI start or continue at the beginning of the loop to have a feedback). I've also tried the Mobius script recalled x times per second but I've finally put Mobius alone on a second monitor, less stress and reliable feedback. I also need to share the pacmans with the other musicians, because we're all looping using my computer and we have to know what the others are doing (9 looping tracks, 14 audio in/out, tons of switches :rolleyes:).

I've built a kind of "step scene player" to remote all Mobius focus locks, this helps me a lot to arm the right tracks at the right moment... you're right, Usine is great to take Mobius under control :)

Following someone's advice on this forum I've left the good old MIDI yoke for loopMIDI : http://www.tobias-erichsen.de/software/loopmidi.html
It's modern, works fine and is easier to configure "on the fly".

About wifi, I had the best results under android creating a hotspot (not windows ad-hoc) with the windows virtual miniport.
You only have to run a .bat file with this code inside :

Code: Select all

Netsh wlan set hostednetwork mod=allow ssid=YourNetworkID key=YourPassword keyusage=persistent
netsh wlan start hostednetwork
I also struggled with IP adresses and finally built a patch to rule them all ;)

hesspet
Member
Posts: 92
Location: Germany
Contact:

Unread post by hesspet » 03 Jan 2014, 01:19

I'm not a fan of using windows/android for a hotspot. The IP Adresse handling without DHCP and DNS is anoing on stage.

I prefer a small wlan router with DHCP and reserved ip adresses. Power on router and everything works fine. I don't like the windows way of being hotspot on my music machine. So an extra router for 20 Euro gives a little bit more stability (IMHO) :cool: :lol:

....

When I receive the OSCMessage in Usine, the message is translated to a Midi Message send to Möbius (bind to a track command). At the same time I set the focus lock of Möbius using the vst param "selected track". Everytime when I press a button or move a slider on TouchOSC the focus is set direct to the requested track, Möbius shows all the time the perfect information.

My requirements are differnent to yours. I play alone and I sync only to the first track I loop I never use a clock for my music :-)

I use only one laptop and for switching the views I use an Arduino based DIY footcontroller to toggle the views (not used in the routine described above). I need only 3 views. Usine (IB), Machine VST, before start of the action to control the setup and Möbius.

I must look for "loopmidi" :-) everybody tells me about this. I use "midiyoke" since the beginning in medival times I think it was Windows98 :lol: It's like a good old friend...
+++ journeytounknownsoundscapes.blogspot.de +++
+++ DIY electronics +++ musical experiments +++ light experiments +++

Blaakk
Member
Posts: 96
Location: Tyne and Wear, UK
Contact:

Unread post by Blaakk » 03 Apr 2014, 03:49

Hi guys.

Title caught my attention! I've spent the last few days building something similar also. Nice work hesspet! Been trying to form a set up to kill many birds with one stone... and it's quite tough! I'm finding it hard designating bits of gear for specific jobs. I'm quite new to Mobius, and also slightly more complicate MIDI setups too, I suppose. On my 4th attempt now... funnily the first was the smoothest so far.

Initially..... I had a UCX running Reaper on PC. A keystation es88 thru a Juno 2.... MIDI CH1 helping out the Juno's broken keys, and another 4 channels... 3 sending to their own Maschine groups, (FM8, MASSIVE, Absynth), and another to Reaktor. Another 3 tracks set up for my vocals, my guitar (through Guitar Rig) and a 'global' FX channel.

Was also running another instance of Maschine on a MacBook, which went through a Traktor live input deck, using Traktor as the clock, sending timing through the SPDIF of a Fast-Track Ultra. The Maschine Mk2 as the controller in the case, starting off the looping with some kinda beat. All of these audio tracks were set up to go through their own Mobius channel (besides the PC's Maschine sharing a single audio output, and Traktor which I didn't quite implement.)

This wasn't too bad at all considering. All audio was running through Reaper at 96k for recording, and all VSTs were standalone running on the Rearoute driver at half that (Reaktor alone certainly wouldn't allow me such high sample rates). All MIDI was being fed through Reaper, for recording, as well as recording fed-back arp/seq type variations of some of that midi data, and recording everything above from Mobius' outputs. I also managed to set up my iPad Lemur to change tracks in both Reaper and Mobius. But I realised without a solid clock source, I was gonna lose. Everything seemed to stay in sync for the most part, but there'd be a re-syncey jitter type thing every dozen bars or so.

So I started again (this time bringing the FCB1010 into the equation). For these attempts, the Maschine controller lived with the PC, tried a few things, but results have been poor. Reaper seems only to accept an MTC timecode (although a while back, once, I somehow managed to control it with Maschine as Master). Tried using MIDI-OX MTC generator to sync. No good (although I'm sure I could tweak the settings a little more to improve things), but I have no clue how, if its possible, to trigger that MTC generator.

Basically realized I need a dedicated clock so I'm about to try running things from the MacBook (if I can get past the malfunctions, extremely displeased with Apple right now, as well as many other users).

Anyhoo.... what is this.... 'Usine Hollyhock' which attracted me here? Hehe, now is not a good time for me to be spending money, but I just feel like I have no choice.... this software appears to me to be one of a kind, with potential to be a game changer, and judging by your post hesspet it may also solve a few problems.

If you have any advice on where I can go, I'll lap it up. :)-

Now.... I shall make a purchase. Cheers!

Ps. LoopMidi is great! Type in a port name. Enter. Boom. New custom-named midi port.

seamus
Member
Posts: 484
Contact:

Unread post by seamus » 07 Jul 2014, 18:51

are you fellas running mobius jbridged to 64bit host? or are you using a 32 bit hollyhock?
I have found that jbridged mobius has a problem when you want to switch workspaces. It freezes the gui in hollyhock forcing a restart.

La Tenaille
Member
Posts: 547
Location: Saint Etienne (France)
Contact:

Unread post by La Tenaille » 07 Jul 2014, 21:50

I use HH 32bits because of Mobius :|

seamus
Member
Posts: 484
Contact:

Unread post by seamus » 07 Jul 2014, 22:46

that makes sense. It works Jbridged but you have to fully quit usine to load another workspace. So kind of a drag!

Post Reply

Who is online

Users browsing this forum: No registered users and 48 guests