Latest Entries »

DMX Sequencer Module…

Yes, it’s been a little quiet on the blog front lately, so I though I’d give you a little teaser of what’s in development…

DMX Sequencer V1.0The new DMX sequencer, which is very lovely. Can sequence up to 512 channels with 2 levels of brightness. Uses the timecode protocol for the clock signal so requires either Gener8 or the Timecode module to run, which is great because this means you’ll also be able to sync it to midi clock.

Great for working with L.E.D.


Available in the online library already : )


In the brewing is an updated version which allows for full RGB output, and a more refined UI. I will give full instructions and perhaps a video when it’s available. : )DMX Sequencer RGB

Gener8 LFO Tutorial

As promised, here’s a little tutorial on the new LFO feature in the Launchpad module😀

This Tutorial goes through some of the ways to implement LFOs into your compositions by effecting controllers and settings in the (at) Filter module.


Gener8 Upd8 0.62

Today is the day for the latest incarnation of Gener8. Exciting new features. Bugs defeated. What more can you possibly want.

LFO 2 Full


  • LFO generator integrated into the Launchpad module.
  • DMX input & output triggers from the Launchpad.
  • Novation Launchpad S Support.
  • Novation Launchpad Mini Support.
  • New media select mode behaviour in Novation Launchpad. Now changes media of ‘selected’ Clips, rather than ‘active’. Active Clips can now have their media changes quantised by using the Novation Launchpad’s media mode.



  • Korg NanoKontrol2 issue fixed – (I hope, cannot test yet – please feedback if this re-occurs. The Nano2 is not yet supported, but should not cause problems as did with version 0.60-0.61.)
  • MIDI clock now produces timecode correctly in Loop mode.
  • Zero Division Error’ in Editor module corrected. Mostly – there may be more situations which cause this.
  • Duplicating Clips problem fixed. Copy / Paste of Clips now works correctly again.
  • Loading Clips from the library issue causing scrambled Clip data fixed.
  • Probably some other fixes I forget…


Tutorials of the new features to follow…

It’s about time for a new update to Gener8!

In the following week (if all goes well), I will be publishing version 0.62.

Things to look forward to in 0.62:

  • LFO Generator within the Launchpad module. (3 LFO’s – 6 Waveform types, and an extended range to the BPM LFO)

LFO 2 Full





LFO Input


  • Send and receive DMX triggers from Clips.

DMX TriggerIN


  • Novation Launchpad 2 & Launchpad Mini support.
  • New media selection behaviour from Novation Launchpad. Alter media of non-active Clips, and quantise the media changes of active Clips!
  • More bug fixes!

I will of course be giving a more thorough explanation of these new features when the update is ready…

Mapping Festival 2014 Banner

Mapping Festival 2014


Oh yes, you lucky people! I will be appearing at the Mapping Festival in Geneva this May to host a workshop on Modul8 module creation, with the one and only Gael Lupin (writer of the Modul8 Modules Manual).

We’ll be covering practically everything there is to know about making module for Modul8 and maybe some other treats too.

So, if you’re in the area and want to brush up your skills, or even gain some new ones, come join us. Places are limited so get your name down fast!


For those of you who have never experienced this festival, it truly is something to behold – a meeting of wonderful minds and an explosion of creativity and a little craziness of course.



One of the powerful but hidden delights of Gener8 is a sequencing method which can quickly produce small Clip sequences in a live situation: Follow Actions

So, here’s a short tutorial to help you master it.

Some salient points to remember:

  • Each Clip can have its own ‘Follow Action‘.
  • A Clip’s ‘Follow Action‘ will occur a set number of beats after that Clip has been triggered.
  • There are a number of different types of ‘Follow Actions‘ which can be applied: Increment, Random, Other, etc.

Step 1 – Prepare your Clips

To do any kind of sequence of Clips, we’re going to need some Clips to sequence. So let’s get started:

  1. Spark up Modul8, make sure you have a ‘New Project’ so things don’t get confusing.
  2. Open up the Gener8 Launchpad and Editor modules (these are the core modules and you’ll need to run these together).
  3. Once the Launchpad is ready, create yourself a few Clips on the 1st layer. To do this simply click on the preview panels on the empty Clip holders. NOTE: It’ll be useful for the sake of this tutorial to create your Clips in the same clip-slots as the image below.


Step 2 – Assign Media to your Clips

You can skip this step, but the final result will obviously be more effective with media!

  1. Chuck some of your favourite media in your Media Panel. (select a few files from a Finder window and drag/drop them into the Media Panel)Follow3
  2. Activate a Gener8 Clip.Follow4
  3. Select a media for that Clip from the Media Panel.Follow5
  4. Activate the next Gener8 Clip (make sure the Clip trigger has stopped flashing – a useful tip when you are assigning a lot of media’s is to turn off the quantise to speed the process up)Follow6
  5. Select the next media for the second Clip.🙂
  6. And so on, repeat until all your Clips have media assigned to them.

Tip: You can also change the media assigned to a Clip in the Clip Inspector (top left – Trig pane). There is a value for ‘Media’ number there.

Step 3 – Create a Follow Actions

As I mentioned before, there are quite a few different types of Follow Actions, but first we will have a play with the ‘Increment’ action.

  1. Select the topmost Clip by clicking on the media preview of the Clip in the Launchpad (it doesn’t need to be active, you can do this on the sly during your performance.)  Selected Clips have an orange square around them.
  2. Okay, the Clip Inspector will now be open on the top left of the Gener8 Launchpad, and will be displaying the properties of the selected clip. Select the ‘TRIG’ pane to view the Follow Actions settings.Follow7
  3. Next, set the Follow Actions menu to ‘Increment’. You will see a further setting appear, we’ll leave this at the default setting of ‘1’ for now. Time for some explanations…Follow8

How Does a ‘Follow Action’ Work?

Okay, now we have a Follow Action in place (in the above instance it’s an ‘Increment’ action), the next time this Clip is triggered, it will send out a secondary trigger which will occur a set number of beats after the initial Clip is triggered. You have options for which Clip is triggered next, and how many beats will occur before the ‘follow trigger’ happens.

You can only:

  • Trigger Clips in the same layer.
  • Delay triggers by whole beats.

Everything else is pretty much game, but remember – changes to a Clip’s Follow Actions settings will not take effect until that Clip is re-triggered.

Step 4 – Let’s make a Follow Loop.

We have an Increment action on our 1st Clip, let’s see if we can make a simple sequence which works in a loop.

  1. Select Clip 2 and make a further ‘Increment’ action for this Clip, only this time let’s set the ‘INCR.’ value to ‘2’.Follow9
  2. Now select Clip 4 and again make another ‘Increment’ action. This time we will set our ‘INCR.’ value to ‘-3’.
  3. Re-trigger Clip 1 and sit back while you sequence plays…Follow10

So, how is this working?

Our 1st Clip has an increment value of 1, which means it will trigger the Clip ‘1’ space below it, which is ‘Clip 2’.

Clip 2 has an increment value of ‘2’, so it will trigger the Clip ‘2’ spaces below it: ‘Clip 4’.

Clip 4 has an increment value of ‘-3’, so it will trigger the Clip 3 spaces above it: ‘Clip 1’.

Clip 1 has an increment value of ‘1’, so…. are you getting the idea?

Positive incremental value trigger Clips below the current Clip. Negative incremental values trigger Clips above the current Clip. Zero values simply re-trigger the same Clip.

Play around with the settings.

The most enjoyable way to learn something is through play, so have a go at changing the values until you’re happy with how they behave.

  • Change the ‘beats’ value to adjust the timing of the Follow Action.
  • Change the style of Action to get familiar with the different results.
  • Make sure you make some other pages to see how far this can go.

What are all these settings?

Okay, explanation time again. Here’s a little run through all the options.

  • Increment – Triggers to a specific Clip by using a numeric value (positive = move down, negative = move up, zero = re-trigger).
  • Random (All) – Triggers any Clip on the layer, on any page.
  • Random (Page) – Triggers any Clip on the same page.
  • Other (All) – Triggers any Clip on any page except itself.
  • Other (Page) – Triggers any Clip on the same page except itself.

The recent release of Gener8 0.6 promised extensive support for Novation Launchpad midi controllers, however it transpires that it is currently limited to the original version of the Novation Launchpad, i.e. not the newer, shinier ‘S’ or ‘Mini’ models.

On the drawing board is a functioning version of Gener8 for the ‘S’ & ‘Mini’ models, but I am still in the middle of tidying up a few bugs before this becomes a public beta. Of course, not having either of those models to hand makes this process a little awkward, but we push on nevertheless…

So, if you just can’t wait for me to find some free time to finish this up, then do contact me and I’ll pass you on a copy of the pre-release ; )

So, here at last is some simple instructions for how to get around Gener8 on a Novation Launchpad.

KEY for notationPad numbers reference

(top left = pad-1) > (top right = pad-8)

(bottom left = pad-57) > (bottom right = pad-64)


LP shown here in Trigger Mode before I put in the Record Arming (pad-48) & Mode Select button (pad-8).

  • Works in ‘User 2’ mode.
  • View A or B Groups (</>round buttons)
  • Scroll pages (up/down round buttons)
  • Works in three ‘modes’. Trigger/Select/Media (pad-8 to select mode)
    • Trigger Clips (Trigger mode – YELLOW)
    • Select or create clips & layers (Select mode – RED)
    • Select media from the Media Set. (Media mode – GREEN)
      • Row trigger buttons to change media pages. Access ’SP’ media  by toggling bottom row trigger.
  • Tap BPM (pad-64)
  • Start/Stop Clock. Orange = Running (pad-56)
  • Arm Timeline recording. Red = Armed (pad-48)
If pads become unresponsive, or you need to refresh – press ‘User 2’ button.

: D

New Gener8 Upd8 – 0.61

Some bug fixes sorted. Mostly on the envelope section.

▪ Error on single press of scroll bar in Editor module fixed.
▪ Fixed keyword ranges in envelope for new keywords.
▪ Layer position keywords now display minus values correctly in the envelope window. (Range can be defined by in the preferences by setting up screen size.)

To get this update simply open Gener8 and make sure you have an internet connection available.
If you haven’t got a copy of Gener8 yet and would like to try it, register here and I will send you the link.

Okay everyone, I’ve spent enough time on this now and it’s reached that lovely point of readiness. 0.6 is finally here!


Tons of updates and improvements. More bug fixes than I can remember.

It’s been nearly a year since the last release (where did all that time go?), and many of those hours have gone into refining almost every function of this module suite.


  • Recordable and editable Timeline for clip changes.
  • Full native Novation Launchpad support.
  • Native Korg Nano control support.
  • Syphon input support.
  • Support for new Modul8 2.7 keywords.
  • Enhanced Scrub bar for stutter free scratching.
  • Clip transition auto-fade feature. (Available in the Editor preferences)
  • Improved BPM Tap functionality.
  • Option to disable Auto-Loop function during Logical Render. (Available in the Editor preferences)
  • Deselect envelope points by clicking off the selection in the Editor timeline.
  • Edit the keyword of envelopes by text input (useful for envelopes that are difficult to pick in the main Modul8 UI)

Timeline Module:

  • Record your Gener8 Launchpad performances.
  • Dedicated module to view and edit your recording.
  • Select recorded clip events, drag to adjust timing, or delete them.
  • Adjust loop range from the timeline.
  • Zoom in for fine editing of your performances
  • Beat snapping. When dragging clip events they will stick to the nearest beat for easy editing.
  • Quantise function to tidy up your performance.
  • Beat/seconds counter display.

Novation Launchpad Support:

  • Create, Select or Trigger clips in Gener8 from the Novation Launchpad
  • Novation Launchpad displays all active clips automatically – no MIDI mapping required.
  • Select or create layers
  • Scroll pages
  • Tap BPM
  • Start/Stop Clock
  • Arm Timeline recording
  • Dedicated page for selecting media.
  • Works alongside Ableton Live (User 2 Mode)

Korg NanoKonrol Support:

  • Works in nanoKontrol Scene 3, leaving you plenty of space to map you own controls.
  • Toggles between A/B layers (top push button 9)
  • Adjust layer transparency/alpha values (faders 1-5)
  • Adjust layer audio volume (knobs 1-5)\
  • Select active row (knob 9)
  • Trigger clip on active row (bottom buttons 1-5)
  • Trigger entire active rows (bottom button 9)
  • Dedicated crossfader slider (fader 9)
  • Show/Hide layers (top push buttons 1-5)

If you’re on the mailing list you will receive a download link, and if you’re not join up and I’ll send you the goods.

I’ll be posting more info about this update over the next few weeks so keep your eyes peeled. So much to teach you all. I am in the process of building more tutorials and updating the manual at last too.

Hope you like it!

8 )

LAUNCHPAD-HELPClick to Enlarge

GENER8-EDITOR-HELPClick to Enlarge

System Requirements for Gener8

Gener8 is a Module for the Garagecube live video performance application MODUL8 which runs on OSX.


Gener8 is not a simple module, and requires quite a nice machine to run effectively. I have built Gener8 to be compatible with older versions of MODUL8, but it will take advantage of newer features available in the current versions.



  • 2.0 GHZ intel core duo recommended minimum*
  • 4-8 Gb RAM*
  • OSX 10.4
  • MODUL8 2.5


* These hardware requirements are subject to the media content you are performing with.

Aside from buying a newer machine there are ways to improve performance when using Gener8.
It is advisable to use more Clips and less layers, when it makes sense to your composition. Each layer adds another instance of the Gener8 Editor module (ie, with 6 layers running, there will be 6 Editor modules running), so therefore more layers will use more RAM. Because Gener8 stores all of your layer information as clips, and each layer can hold up to 800 clips (but only displaying 1 at a time of course), you will find that you no longer need to use as many layers as before. This should free up some RAM and make everything happier.
More is less, and less is more . . .
                                   . . . more or less.

One of the things I get asked fairly regularly about is how to sync Gener8 to other audio applications (Ableton, Traktor, Logic, Reason, etc.) via MIDI clock. So I thought I’d put this simple tutorial together to explain the basics.

I don’t intend to get into the nitty gritty of producing MIDI clock signals from each and every DAW out there (there’s plenty of info on the web for that, or in your favourite software’s manual, which if you haven’t already read it cover to cover I suggest you do as you’ll be surprised by some key features that are hidden away in there). And I don’t want to delve too far into getting MIDI signals into MODUL8 itself either, but I will say a little bit:

MODUL8 receives MIDI through the IAC (Inter Application Communication) Driver, so make sure you are sending your MIDI clock signals to IAC.

Also, be sure to check the IAC driver is enabled before starting up MODUL8. You can access your system MIDI settings with the ‘Audio MIDI Setup’ OSX app.

So then, we’ll begin by assuming you can get a MIDI clock signal into MODUL8. Okay then, let’s get this going…


Open up MODUL8, and get your GENER8 modules running. You’ll need a minimum of the Launchpad and Editor modules. (In this tutorial, we’ll be using the 0.53 version of GENER8)

Do not open any BPM module, and if you have one running, close it! – You won’t need it while running GENER8, and it will likely clash and may cause it to bug out. GENER8 has its own clock signal, which can also be accessed by other modules (info here for developers).


Start your MIDI clock running in your Audio app, and output it to the IAC driver.


Now is the time to check if we are receiving a MIDI clock in GENER8.

The Launchpad module has its Clock section to the top right. If all is good and well, it should be looking something like this:


You’ll notice the ‘MIDI CLOCK’ button. This toggles between external MIDI clock and GENER8’s internal Timecode.

Set the ‘MIDI CLOCK’ to the on position. Your clock section will now look like one of the following:

NoClockIn this image, the Launchpad is listening for incoming MIDI clock signals, but cannot find any, and gives the ‘PAUSED’ message. If you see this message, double check you are sending your MIDI clock correctly, and if in doubt: Restart MODUL8.

NoSyncQuantIn this image, the Launchpad has found a MIDI clock signal and tells us that its running at ‘BPM : 120.00’. If you see this, all is good. But we are still paused.

One more step…


A MIDI clock consists of 2 messages, the CLOCK message (which runs at 24 counts per beat), and the START/STOP message. So, although GENER8 is receiving a MIDI clock signal, it’s still waiting to be told when to Start.

Before you restart your DAW’s clock, now is a good time to check your Time Signature is correct.

The Time Signature of a piece of music is defined by the number of beats played in each bar. In most modern dance and western music this will likely be 4 beats per bar (Gener8’s default value), but if you happen to be performing to a Waltz you’ll want to adjust your ‘BAR BEATS’ value to ‘3’ (for 3/4 time).

Adjusting the Bar Beats value will also adjust your possible Quantize values too.

So, when you’re quite happy, restart the Clock in your audio app. Once this is done, GENER8’s clock should now look like this:


You may notice small fluctuations in the incoming BPM, but do not despair – GENER8 will even this out to give you a steady beat.

So, your performance should now be in perfect Sync with your audio app. Also note that any Clips using the Editors ‘Auto-Loop’ function will magically adjust to any changes made to the clock timing from your audio app. Good times. Lovely!

And while I’m at it, the ‘LINK MASTER’ option is to control Modul8’s Master Speed with the BPM. That’s this guy:-

M8 Master Speed

So then people, get creative!

Nice tutorial…

I happened across this interesting tutorial the other day, which explains (among many other things) the use of a few of my modules, so I thought I’d share it here.

There’s even some clever techniques I hadn’t thought of myself! You’ve gotta love that…

Making of the Drop Box from HaijakArt.

So here we have the new ‘(at) LFO to DMX (DMX)’ module for Modul8.

It’s basically a router for applying the Global LFO output (from my LFO Global module) to DMX channels. Much like the other LFO routers I have written for Modul8 keywords/controllers.


For those of you who don’t know the LFO module and a still using the BPM router, it has 2 Low Frequency Oscillators (one of which can feed back into the other), and 1 BPM controlled waveform. All oscillators can produce a number of different waveforms (sine / tri / ramp / cut / square / random), and output the result through the sharedDictionary to other modules such as this new ‘LFO to DMX’ one. There’s even a version of the Filter module which accepts Global LFO inputs, so you can keep your whole composition synced to the same oscillations!

Now, I’m not a big (or small) user of DMX gear, and I don’t actually have any to hand (so I’m not even sure why I spent the afternoon putting this thing together). Therefore, I haven’t actually tested it on any proper lighting rig – but that said, I’m pretty confident it’s gonna do the job, as all the maths tests out okay. Just seemed like it should exist, so I made it. It would be pretty cool to get some feedback though, so if you fancy having a play around, please do let me know how it goes!

Going back sometime last year, I had the fortune of being passed one of the new Faderfox controllers by Boris Edelstein (creator of Modul8). The controller is Boris’s own design and is being manufactured by Faderfox. For my part I was asked to come up with some modules for the device. Which I have done.



And here is a screenshot of the mod I have made.

For those of you on the ball you will know that with the release of M8 2.7 there is some simple integration of for the controller itself (including feedback for the LED’s etc).

What my module does is go much further, allowing full control of all your maps, some system set-ups for useful & complex procedures (media selection, syphon sources, colour swatches, sequencing), and allows you to easily produce an an infinite amount of patches, which can then be exported to XML.

For those of you interested you can download the manual.

The module will be available in the online modules library (through the app itself under the Modules menu).

Slicer Module….

Now, while I’ve been teasing you all with a tales of a soon coming Gener8 update, I have again become distracted… but in a good way!

For the last couple of nights I have been developing a media slicing grid which works with the Timecode shared library.

It takes the ‘BAR_BEATS’ value and slices up your media into sections for each beat. You can then adjust the play position of each slice by dragging up or down in the grid. Simple.


The above example shows an 8 beat bar. If your media fits into 8 beats (or you are using Gener8’s Autoloop set to 8 beats), then this setup would play a media seemlessly.

Underneath the grid are selection buttons for each slice. Once selected you can adjust the offset numerically.


There are also some extra functions like ‘reverse’ and ‘random’ for you to fiddle with.

This example shows a 16 beat bar after the ‘random’ effect has been applied.

IMPORTANT: To use this module, you will need to have a Timecode running, either from the Gener8 Launchpad or the stand alone Timecode module.

So go on, download it and get creative!

You can download this version from the Modul8 online library (accessed via the Modules menu in Modul8). There will be a Gener8 clip change sensitive version coming with Gener8 0.6.

Just uploaded a module for simply designing custom colour palettes into the Garagecube online library.

Set 3 colours (either numerically or with the spectrum input) for background, midtone, and foreground, and a palette will be calculated.



Palette module


You can then pick a colour from the palette

to affect the Additive or Modulate colour.


Palettes will be saved into our project file.








Open up the Online Library under the Modules menu in M8 and search in the user section to download.

Suggestions and comments welcome.

Aside from other distractions, over the last few months I’ve been building the next version of Gener8. Here are the plans for the next release:

Some of these features are planned, others are already working! Most of these will be implemented for version 0.6.

Novation Launchpad support.
Launch clips directly from a Novation Launchpad! The layout of the Novation Launchpad was such a good match for Gener8’s Launchpad module that I simply had to try this – and it works really well.
View a bank of clips, one page at a time. Trigger them individually or by row with the Launchpad’s scene buttons. I’ve implemented some transport controls, tap time etc. too. This layout works in the Launchpads ‘User 2’ mode, allowing you to switch between Ableton Live control, and Gener8 simply.

Faderfox Micromodul8 support.
The new dedicated MIDI controller for Modul8 by Faderfox will also be getting the Gener8 treatment. While the Faderfox is mostly suited to manipulating controllers for each layer, I will be integrating support for clip triggering.

• Syphon Input support for clips. Each Launchpad clip can be set to a specific syphon source, so you’ll be able to trigger your syphon input sources in time. (Modul8 version 2.7 required – currently still in beta)

OSC input and output for clip triggering, with simple mapping.

Gener8 layouts for TouchOSC.

DMX output triggers from clips.

MIDI, OSC & DMX envelopes on the clip editor. Give your clips extra oompf by linking complex data output to external devices.

Network Timecode – Link Gener8 systems without MIDI across networks for multi-screen projections.

Global timeline – Record clip changes onto an editable timeline. Edit your performances with post processing functions like ‘quantize’, which tighten your recordings by snapping them to the closest beats.

Yes, a true timeline module at last…
There has been many posts written about building a timeline module for Modul8, and now I have a working implementation at last. This is the first concept so it’ll be interesting to see what everyone makes of it.

This module is a layer contextual module, which means that it will only show the data relevant to the focused layer. I’ve done this to keep the footprint down. The actual recording and playback is all handled by the Launchpad module. This timeline module simply allows for visualisation and editing.

I have actually been planning this timeline phase of Gener8 from nearly the beginning, and I’ve had a working sketch of this module for over a year. A timeline for live performance software is almost unnecessary, but from the standpoint of the Gener8 modules, it seemed like a logical progression. No doubt its form will develop in time too.

I’ve also been doing some serious bug fixing, rebuilding the core to improve clip transitions, and performance improvements too.

Release Date?

If all goes to plan I should have something ready for everyone to play with some time in April. No promises though.

Any comments or suggestions are most welcome!

No Launchpad in the Online Library?

Hi Folks, I’ve been a bit quiet of late, and lagging behind on the updates. Don’t worry, I’m still on the case, but other projects have sidelined me a little.

A fair few people have been finding the Gener8 Editor module available for download in the online library. Just to clarify, it was not I that uploaded this.

We took it down, and it has re-appeared. What to do?

I have restricted access to a closed group to keep everyone informed, assist with bugs, and get your useful feedback. This has pushed the development in directions I could not have foreseen, so a big thank you to all!

The version in the online library is old now, and comes without the rest of the module family. And of course, it does not function without the Launchpad.

If you’re interested in using Gener8, please join the mailing list, and I’ll send you the download link.


%d bloggers like this: