Width and phases in recipes

  • Hi all

    So i created some global or universal multistep preset (ie dimmer effect with 2 steps : 1=open, 2=closed).

    Now, i want to use this phaser in a recipe with a group.

    But how can i tell what are my widths, according to the number of fixtures in my group ?

    Same with phases ?

    As i always need to calculate these values.

    Exemple : i have 8 fixtures in the group, so if i want chaser, fixture by fixture, i will calculate Width step 1 = 100/8=12.5 and step 2 = 100-12.5=87.5 and phases 0 thru (360 - 360/8) = 0 thru 315

    If i create this phaser from scratch in selective mode, no problem. (Except that it doesn't start at fixture 1, but randomly somewhere in the group - see my other post)

    But how can i use my universal dimmer phaser in a recipe ? Where can i tell the width and the phases ?

    If my number of fixture in my group changes, i cook but will the desk recalculate width and phases ? It seems that it doesn't, as phases and width are fixed values (0 t 315 and 12.5/87.5) and depend of my selected fixtures count.

    Thank you.

  • Technically the phase and width does not depend on the selected fixture count, but on the selection grid,

    - which to a certain extent can be affected by the matricks of the recipe

    So recipes can work for some scenarios, e.g. if you use grouping that correspond to the step-widths of your universal preset.


    Fixture 1

    Step 1 Full Width 25

    Step 2 Zero Width 75

    Step Thru Transition 0 Speed Seconds 4

    Store Preset 1."4 beat hard chase" /Universal

    Reference universal preset in recipe with xphase 0 to 270 and e.g xwidth or xgroup of 4



    Fixture 1

    Step 1 Full Width 20 

    Step 2 Zero Width 80 Transition 25

    Store Preset 1."Runway soft chase" /Universal

    Reference universal preset in recipe with phase 0 to 270

    a soft chase that completes a lap for every beat is more forgiving of phase ranges vs steps widths


    I am not saying that you can do anything you would ever want via recipes in the current version.

    - just giving some examples on how recipes can be used, to cook more successfully to varying selection counts.

  • Hi Andreas

    Tank you for your answer.

    I did what you said, but it is not giving the result i want.

    I want, whatever the selection is, a dimmer chaser, fixtures one by one. Not by range.

    I don't understand what you say : phase and width don't depend of my selection count.

    For what i'm understanding and experiencing, i always need to calculate phase and width from my selection count.

    Surely i'm not doing it the right way.

    But your exemples don't work for me, i don't have fixture one by one.

    Best regards

  • I think that this is how phasers work, they distribute the values on the selection grid.

    The positive side is that it scales very well, so if you patch some new fixtures and update the group the values are distribute equally.

    So for touring this approach is very helpfull but in your case it can be more frustrating as it involves more tweaking to get it exactly how you want.

    Maybe an idea but if we have access to the selection grid column count we could create a macro in combination with a selfix to modify the dimmer preset.

    Something like:

    Maybe Andreas has an idea of that could work?

  • I want, whatever the selection is, a dimmer chaser, fixtures one by one. Not by range.

    This is not (yet) possible with recipes and/or universal presets

    I don't understand what you say : phase and width don't depend of my selection count.

    What I tried to emphasize is that distributed values depends on your selection GRID, not selection COUNT


    Open a selection grid window and disable auto-remove-x-gaps


    Fixture 1

    Fixture 2

    Fixture 3

    At 0 Thru 100

    -> SelectionCount = 3

    -> F1 = 0%, F2 =50%, F3 = 100%


    Fixture 1

    Fixture 2

    Grid 10

    Fixture 3

    At 0 Thru 100

    -> SelectionCount = 3

    -> F1 = 0%, F2 =10%, F3 = 100%

    In both scenarios selection-count (and selection order) is the same, but the values distributed to e.g fixture 2 is different.

  • Thank you Andreas

    I uderstand about selection grid vs selection count.

    My issue is the phase calculation.

    If i set phases with encoder or phaser editor, the desk calculates (with 3 fixtures , phase 0t360 gives me 0,120, 240, that's what i expect.)

    But if i want to use matricks 0t360, it doesn't calculate (i get 0,180,360). Then fixt 1 and 3 light at the same time.

    So in a recipe i need to calculate how phases are with 3 fixtures and reset them.

    Hannie, there is no such selectiongrid variable.

  • I am experiencing the same issu, it seems that the PHASE behavior

    Is not systematic and operates as expected.

    When you set PHASE through MATRIKS and when you set PHASE through the EDITOR you get different results.

    I also have a hard time understanding how the PHASE works on the Y axis - when I set phase 0 TRU 360 I do not get step by step effect

    It is also very difficult to edit an effect when you are required to update PHASE after each change in STEP.

    Thank you,

  • This is a known limitation, and how recipes and matricks-phase currently works (v1.6).

    To get an even phase spread on different selections, you will need to either:


    Combine the matricks phase with a matching matricks grouping,

    e.g. [group=4, phase=0-270] or e.g. [width=6, phase=0-300]


    use the "0 thru 360" / "0 thru -360" buttons in the attribute calculators, the "360" button in the PhaserEditor or "At Phase Percent 0 Thru 360" / "At Phase Percent 0 Thru -360" in commandline.

    Only these interactions will (in v1.6) trigger the special internal function that automatically calculate and apply the actual phase-range needed to give an even spread, instead of applying the specified range literally (giving first and last equivalent phasevalues, 0 and 360)

  • if we have access to the selection grid column count

    to create a commandline variable (e.g. $MyGridSizeX) with the current grid size you can use this Lua snippet:

    Lua "local min, max = SelectionComponentX() ; SetVar( UserVars() , 'MyGridSizeX' , max - min + 1 )"

    to create a commandline variable (e.g. $MySelectionCount) with the current selection count you can use this Lua snippet:

    Lua "SetVar( UserVars() , 'MySelectionCount' , SelectionCount() )"

    rather than trying to use such $variables as base for further calculation via commandline (which has very limited math-functionality), I recommend to include the desired calculation in the Lua snippet, e.g.

    Lua "SetVar( UserVars() , 'Step1Width' , 100/SelectionCount() )"

    Lua "SetVar( UserVars() , 'Step2Width' , 100 - 100/SelectionCount() )"

  • It's not official, 100% complete or up to date but I had been putting examples of the lua functions at github.

    I'm super happy MA have been slowly adding documentation to the page but if the function isn't detailed on their documents page yet it might be on my wiki.

    But, I feel I need to say this one more time before someone else does, my work isn't official and might not be correct, and could change in the future. but I did the best I could with what I had. I also do this on my free time (of which I have had very little lately).

    Cue Recipes - grandMA3 User Manual - Help pages of MA Lighting International GmbH

  • I have something working, you need to SelFix the group and then run the macro.

    It will ask for the chase width, this is the amount of fixtures to be on.

    Note that SelectionCount() does not use the grid x width, so will only work well in flat linear groups.

    SetuserVar "ChaseWidth" (Chase Width?)
    Lua "SetVar( UserVars() , 'Step1Width' , 100 - (100/SelectionCount()*GetVar(UserVars(), 'ChaseWidth')) )"
    Lua "SetVar( UserVars() , 'Step2Width' , 100/SelectionCount()*GetVar(UserVars(), 'ChaseWidth') )"
    Edit Preset 23."Dimmer FX 1"
    Step 1
    Width $Step1Width
    Step 2
    Width $Step2Width
    Update /NoConfirm

    Depening on if step 1 is the on or off effect you might need to swap StepXWidth to get the desired effect.

    Edited once, last by hannie ().

  • I wrote a little Plugin, which recalculates the phase for an even phase spread. It's my first plugin - so maybe it needs some improvement / testing.

    1) Select your fixtures (it works with linear selections via the SelectionCount() Lua function - xAxis)
    2) Enter your settings like: 2 blocks, 2 wings
    3) Press ok - and the corresponding phase will be displayed

    I hope MA will come up with an integrated solution / setting, whether the phase should be exactly as you enter - or auto recalculated for an even spread.

    But while we wait - maybe its a help for someone here. :)