Sequencomat V2:

8track 16step midi sequencer in Max5 for the Jazzmutant Lemur by www.music-interface.com



content:

Overview
Demo videos

Overlay-concept
Save and Load
Settings-Container

Maxpatch
DAW-preferences
OSC-connection

Changelog
FAQ



Overview


SequencomatV2 is a Midi-sequencer for the Jazzmutant Lemu
r (Touchscreen Controller).
The tempo is synched to your DAW
(e.g.Ableton, Logic, Cubase) by rewire.

It contains 8 tracks with independent

note, tempo, direction, step range, start point, midichannel, volume and notelength..
That gives you a great variability in constructing your patterns. 
All could be saved to 16 presets, to jump between very smooth and directly.
It includes more than 500 interactive graphical elements (!) and 12 pop-up containers with different layers.... (see pictures below).
The note triggering is done in Max5 (cycling74) and it works with the free Max runtime (so you don´t need to buy Max!)
Futhermore it is not bounded to Ableton (or especially Max4live), you can also use it with
any other rewire host 

Get this sequencer (Max5patch and Lemurtemplate) for 39,- Euro.

You can use paypal, I send the patch in return or contact me: chefkoch@tonvibration.de


Mainscreen
Picture1: Mainscreen of the SequencomatV2 Lemur-template

(1)   Clock control of your rewire host. Showing songposition and tempo with a BPMslider, stop, play
(2)   Overlay-choice on the Maingrid: Notes - Grid/direction - Steprange - Startpoint - no overlay
(3)   Trackcontrol: Volume - Notelength - Random (on stepposition)
(4)   Trackmute (Maingrid and Trackvalue of muted tracks get darker for visual feedback)
(5)   Maingrid with paintable switches in horizontal direction.
       Activated steps are blue, nonactivated red, while running the actual step turns orange by Multicolor
(6a) Trackvalue: Multislider and Monitor with Midivalue
(6b) Range: controlling the minimum and the maximum output of the trackvalue
(7)   StepLED: Indicating the steprange (nonchosen steps get black) and the active step (highlighted)
(8)   TrackLED: blinking whenever the tracks sends a note
(9)   Settingscontainer will pop up (with choice what to save or load) and a clearbutton
(10)
Stepmute (Maingrid of muted steps get darker for visual feedback)
(11) 16 Patterns to save and load, used slots are highlighted
       (for reset the 
highlighting press 0 and 15 simultanously in load mode)
(12) Patternmode: switch between saving / loading / off (press again)


Demo videos:

A very instructional video showing the main functions of V2.0 and giving some examples how to work with...
Short video about beat constructing.....
Video showing melody construction with additional Synth 1 control surface.....
Trying to explain the new functions in V2.3 (Midichannel and Humanize)
Jamming around with V2.3 and the 4 balls-module (see JM user area)

Talking about my meeting with Robert Henke

Show OSC-connection.



Overlay-concept


The 6 different Overlays on the Maingrid are done half transparent. That way you still see the pattern while changing the tempo
or notes or whatever..., and you can change the Maingrid with the overlay on.
If you don´t like that transparency, or want bigger switches, you can change that apperance on your Lemur....

The Matrix-Overlay and the Trackcontrol on the right side (Volume-Length-Random) are independent,
but demonstrated together in the images below.

Notes-layer Notes-Overlay

Set Note (left side) and Octave (right side) for each track.
The chosen notes here (pink) are typical for Ableton-Impulse triggering.
Activate the Transpose-slider individually for each track (yellow switches, here 5on/3off)
Transpose all activated tracks with the blue slider.

only V2.0-2.1: Set Midichannel to send the notes to (brown radioswitch on the bottom, here channel 4)


Trackcontrol (on the right side) showing Volume (green horizontal multsliders) for each track. At the bottom is a range to fade in the minimum and maximum of all the values.
grid
Grid- and Direction- Overlay

Set the grid (green switches) for each track. It says how many steps are done each bar: 2 - 3 - 4 - 6 - 8 - 12 - 16 - 24 - 32
Containing triplet grids enable very interesting rhythmic variations...
Set playback direction (foreward / backward) for each track with the red switches.
With the switches on the bottom you can jump all tracks to a certain value at once.


Trackcontrol showing Notelength (blue horizontal multsliders) in milliseconds for each track.
step
Steprange-Overlay

Set the Start- and Endpoint for each track resulting in different Tracklengths (up to 16steps). Layering tracks with different Tracklength will cause very complex, ever changing polyrhythmic patterns. (The position is calculated from the songstart, so a change in Tracklength will cause a little jump. But this is the only way to keep you on 0 when jumping back to 16 steps.)


Trackcontrol showing Random (purple horizontal multsliders).
Random alternates the stepposition of your indicated steps. You have to activate random by the switches on the right, the sliders control the propability of a random-variation and will light up if activated. Furthermore a little "Random" is displayed on the Tracks grid (always on top). For changing the amount of steps, you have to deactivate random mode.
start
Startpoint-Overlay

Skip the startpoint of each track.  In contrast to the steprange this doesn´t change the number of steps but gives a delay on the track. The size of the startpoint-steps is coupled to the grid on each track.

Trackcontrol showing volume again (green horizontal multsliders).

(The Trackcontrol (right side) is independent from the Overlay (middle and left), I just showed both variations togehter in one picture.....)
Midichannelcontainer
Midichannel-Overlay (since V2.2)

You can choose a midichannel for each track. This enables you to address different instruments within one pattern. You can also jump the midichannel while playing and all Midichannels are saved within the presets.

With the bottom line you can change all.
humanize
Humanize-Overlay (since V2.3)

The humanize function sends a (random) delay on the track triggering. This can be done to get a more human feeling of slight inaccuracy.
You can set 2 parameters of a random walk:
-right range-point: set maximum of random delay
-left range-point: set maximum of  changing between 2 steps

(since V2.5 you have 3 different kinds of humanize to control with these range-objects...see Maxpatch)


You can set the maximum meaning of all ranges on the Maxpatch. I would suggest a small value like 50msec, but you can set it to whatever....

With the bottom line you can change all.
Rollpad - unsynced
Rollpad-Overlay (since V2.5) - unsynced

This XY pad gives you the possibility to do rolls, whenever you touch it, a ball appears. It triggers a sound corresponding to what note you have chosen on the Note-Overlay and the blue switchs on the left side (here: sound of track1).
You control the speed of the triggering on the horizontall axis and the velocity on the vertical axis. There is a range for the velocity output (green) and for the speed of the triggering (blue, directly under the XYpad)
Also you can control the Length of the notes that are triggered with the purple slider at the bottom.
Furthermore there is a Midicontrolchange-message routet to the vertical axis.
This function can be turned on/off by the red button on the bottom, the range is controlled by the red range. If the pad is not touched the value falls back to the minimum of the range. Choose the Midichannel and Controllernumber with the dropdown menu at the top (sending on Lemurmiditarget 0).
Rollpad - synchronised
Rollpad-Overlay (since V2.5) - synchronised

The triggering on the rollpad can also be syncronised to your DAW if you press the "Sync" button. In that case a horizontal grid appears and the timing of the triggering is synced like on the grid overlay. That means you can exact 16th fills, while still having control over velocity and/or CC on the vertical axis.

The grid can also be turned on in unsynced mode via the little button and you can choose the number of grids there. If you jump to "sync" it is automatically turned on and the grid is set to 9.

If you don´t like triplet grids, just set the grid to 5.


Save and Load

Save and Load can be done in 16 patterns. (for choosing different sections see "settings containter").



Just touch a pattern-slot in save-mode (red) to save or in load-mode (green) to load.
Already saved slots are highlighted. To reset the highlighting press 0 and 15 parallel in load-mode.

The save- or load container pops up on top of the "setall"-sections on the overlays (this is a matter of space).
To hide the save/load Containers press the button again.




Saving is done on the Lemur and is not permanent (because it is based on variables),
but there is a simple way how you can save your patterns on the Lemur or even in a library:
The best is, if you just leave the syncro button in the Jazzeditor on while jamming.
Because now every change in the surface
and variables is reflected. That means if you save the project (or module!)
your patterns will be saved too and you can make clones of Sequencomat with other names containing
your patterns.

If the syncro switch wasn´t on, you can turn it on later.
But in this case you have to jump through the patterns one by one and save them
again
(they are already save on the Lemur, but for transferring syncro must be opened in the moment of save.....)


 
Settings-Container



At the bottom of the template is also a settings container that pops up as long as you press the button on the left side (now light blue).
It is layered alway on the top (above setall-controllers and save/load).
Here the clear-button is nested to set all values to default for creating new patterns.*

Furthermore you find 13 switches reflecting different sections of the Sequencer.
As long as these switches are on (yellow - by default) Load-Save-Clear is done to that section.
If turn them off individually (dark gray) Load-Save
-Clear is not done to the corresponding section.

Why is that usefull?

Maybe you want to switch between different patterns that all got a range for the volume saved, but you want to fade in the volume
while switching the patterns. Then simply turn the small switch below volume off - now the volume range is no more changing while
switching and you can do your manual fade. Or you want to use the notes of one pattern with the step (....) of another pattern:
Just load your note-pattern, turn off "note" in settings, and load the new pattern.... well, it is an extra function which would be not
regulary in use but can be very usefull.

*(You can change the default"clear"values on the Lemur at the script located inside the clear button)



The Max-patch

The triggering of notes is done by a Max5patch. Max/MSP is a software for creating media applications by cycling74.
The Maxpatch get the information from the Lemur-template via OSC (*) and send it to whatever Midiport you choose on your system.
Beneath controlling virtual synths in your DAW you can also route it to any hardwaresynth...


This sequencer works with the free Max runtime,
you can download it from the cycling74 homepage
(see Max5 runtime for Mac or PC....) 

Before opening the Maxpatch, load the Template on the Lemur and open your rewire-host


maxpatch version2.5 final
The Max5patch

Inside the Max-patch follow the gray boxes.

- enter your Lemur IP (*) and port

- choose "ad_rewire" as driver and activate the Sequencer by the switch.

- choose one of your Midiports(**) installed on your system (here on win7 PC: Loopbe Internal Midi)
PC: It could be a Midiport you already use on your Lemur-setup or a complete other Midiport to avoid conflicts with other controllers.
MAC: choose another port than the Jazzdemon (this send Lemur data-exclusively) e.g. IAC

- set a delay time for Midichannel-Change (necessary to get rid of possible Midihung while the "noteoff" is sended to the new channel)

- set maximum of delay for the humanize function

- choose one of three humanize types:

a) exact delay on a track via x[1]

b) drunk random walk where x[0] is the maximum variation between the steps and x[1] is maximum delay at all

c) a classic humanize with minimum and maximum delay

______________
(*) If you are unsure with OSC connection, see here...

(**) virtual midicabel
make sure they are activated in max ->File ->Midisetup->...



DAW-setup

Preferences in ableton live
Preferences

In your DAW (here: Ableton Live8) activate the Input"Track" on whatever Midiport you have chosen on the Maxpatch
(here: Loopbe Internal MIDI)
.

You don´t need to activate input"Remote" for that, because the sequencer only send notes, but you can also keep it open (as seen here)

You don´t need to activate any Output"Sync" for sending a clock

because this sequencer works with rewire(!)


That also means, you can not use the Midi-clock-sync-delay (shown here).
This will not work on a rewire clock, but you can use "track delay" (explained below).

The other ports (Marple in and out) are my normal lemur config. It might differ on your system but that doesn´t matter.....
_________________________________
(*)
Working with a rewire-clock is very comfortable, but it depends hardly on your DAW sending a stable clock!

Mostly this is not a problem, but please check the stability of your DAWs rewire clock with the free "Sequencomat V1" before purchasing V2. (both versions use the same clock-type).

The channel settings and REWIRE-clock

On "MIDI from" you choose that Midiport from the maxpatch (again: Loopbe Internal MIDI) also activated  in the preferences
before. ....
You can use a certain Midichannel for opening more than 1 track with different instruments.
Change the Midichannel on the Lemurtemplate.

Activate "in" on Monitor before you hear notes....


If you want to record parallel on more than 1 track you might deactivate "exclusive" for "arm"
(->preferences in your DAW)








With "Track delay" (bottom of the track) you can compensate a latency shift (if you got one).


OSC-setup

While doing a OSC-connection for the first time might be a little tricky, I give you a short photo-guide. Hope that helps :)

For defining a OSC-connection you need to know 2 IP addresses:

- your Lemur
- your computer

You can find both numbers on your Lemur:

The LemurIP (to enter in the Maxpatch) is shown on the left. Use it with static IP.

The IP address of your Computer is on the right. (see
 "Jazzeditor connected to")

Of course you can also look for it inside the network settings of your computer, but this might be easier ;)

define your OSC-target 0 on the Lemur:

...just enter your computer IP. thats it.
now one way (Lemur->Max) is done.

For the way back (Max->Lemur) you have to enter your LemurIP inside the Maxpatch.

On first load of the Maxpatch you have to enter the Lemur IP once....

Changelog

version release-date Lemur-memory changelog
2.0 12 - 19 - 2009 63%
2.1 01 - 04 - 2009 64% - split Midichannel in 2 sections (4/4) at bottom of note-overlay
- bug fix "direction reset"
2.2 01 - 09 - 2009 66% - new overlay "midichannel", now with independent midichannel on each track
2.3 01 - 10 - 2010 72% - new overlay "humanize" with randomwalk on each track
- random only variates within steprange
- new light interaction: steps outside the steprange get also dark (like muted)
- clear now works on midichannel (setall) and note (ableton impluse standard)
....you can always change the clear-settings inside the Lemur script
2.4 02 - 05 - 2010 73% - added drag- and reset-switch on steprange
- bug fix on possible midi-hung while channel jump (piped)
- bug fix: loadbang 0 on humanize
2.5 03 - 31 - 2010 79% - added a XYpad for rolls with synced and unsynced mode
- added 2 more types of humanize to choose at the maxpatch


FAQ


Why is this sequencer done in Max and not on Lemur only?

The lemur is a great tool, but it is limited. Not only in scripting possibilities, but also in a reliable timing.


I tried the free V1 and experienced timing issues, how comes?

I got reports of very good results with Logic and Cubase but unfortunately Ableton Live sometimes (!) fails in sending a stable clock,
depending on the version of Live you use, your computer setup, your soundcard-setup etc...
......a high CPU-usage may cause some clock instability!
While I had some trouble with Ableton 6 on my old laptop (where running more than 7 tracks wasn´t possible at all),
I got no more with Ableton 8.1 on new machine.....

I claim that this is a general problem with synchronized sequencers, and happens with other sequencers too (e.g. "pairofx0x"),
Of course, it doesn´t get better if you sync it normally (activate a sync out in ableton and use that as clock)....

But a sync to hardware (e.g. an old drumcomputer) might be good. Well, I have no hardware any more :( so I never tried,
but if that is an interesting point for you, drop me a line.

As said - this happens rarely - most of you will have no problems! But please check it first and report if you got any clock-trouble...



I never worked with Max until now, is it easy for me to run the patch?

Yes, totally!
You just fill in some values as you see in the description above.
Thats all. No programming skills needed ;)


Can I run it with Max4live?

No, this is a normal Maxpatch. The Lemur-community is very small and only a few people use Ableton or special Max4Live.
And as long as m4l got no free runtime, it is better to use a normal maxpatch to share with more users.

If you are a
Max4Live-user, you need the free Max-runtime (additional to your m4l).
It is no problem to run the sequencer parallel with other Max4live-patches....I do so regularly ;)


I do Maxpatches on my own, can I edit it?

Yes. Some sections are even commented....
I have to state that this is a messy patch...somehow organic grown... but edit, cut, copy, paste whatever you need for your patch.
If you come up with any kind of interesting patch
, please contact me, before you share it with others...
I state that some parts of the SequencomatV2-patch are based on LoFi´s stepsequencer tutorial on the Jazzmutant website.


Why does this sequencer have no stepvalues (like stepvelocity)?

It is part of the concept.
While having stepvalues you always need to choose a track first, before entering the values.
On this sequencer everything is done track-wise. So you choose a function and can edit this on all tracks directly.
Cutting the hierarchical level of track-choice makes the interaction between the tracks more intuitive.
Furthermore this way the range-concept is enabled. (fade in velocity or note-length on all tracks)

If you want the same note or sound (drumsounds) with different velocity you can route it to different tracks.
As long as all can be saved  within the patterns you scarify this track only in this pattern.


Why is the notelength done in milliseconds rather than in percentage of step?

Again....part of the concept.
A note got a special length, no matter if you change the the tempo!
That way (and with the range at the bottom) you can do really funky stuff....


Can I import patterns from my DigitalAudioWorkstation?

No, all patterns are build and saved on the Lemur.
You can simpley export them by recording (hey, thats what a sequencer is for!),
but there is no way to import patterns from Ableton or Logic or else.


Do I have to enter the IP-address each time I open the patch?

Yes. It is not saved.
But you get used to that number.


Do you plan further updates?

Well, the lemur capacity is pretty much reached. So I do not plan to add more popup-containers with new functions at the moment.


Why does it count so high on Lemur capacity?

This module is the most complex sequencer available on the Lemur now. It contains so many graphical elements and popup-containers.
At least all elements of the module beneath each other would fill 5 Lemurinterfaces.... also some variables are calculated on the Lemur.
So the Lemur-memory (4MB) seems to be a bottleneck for interface design if it reaches quite high complexity....



Thanks for checking my work
and if you got any further questions or want to order this sequencer just drop me a mail.

You can buy this sequencer via banktransfer or paypal (I send the Max5patch+Lemurtemplate in return)
SequencomatV2 is 39 Euro since V 2.3. 
 
Kind regards*Mat