Zone switching with DMX cues and PangoScript?

Discussion in 'PangoScript, Universe and Midi Templates' started by Stuka, Jul 16, 2015.

  1. Stuka

    Stuka Well-Known Member

    Trying to figure out if this is possible -

    From the Beyond timeline, I need to be able to reroute the laser output to different zones "on demand". I know this can be done with an Effect for the particular track; however, what I want to try to do is include the required PangoScript code in a series of DMX cues dropped on a separate track.

    The idea is that when a particular DMX cue is dropped on the timeline, it would perform it's intended DMX function with external equipment, AND reroute the laser output for a specific track to the zone specified by the PangoScript contained in the DMX cue. The new zone assignment would remain intact until another DMX cue with the appropriate PangoScript changes the zone routing.

    I'm far from being a Beyond guru (understatement!:p), so any help with the necessary PangoScript and Effects selection would be most appreciated!

    Thanks in advance -

  2. hitekvoop

    hitekvoop Well-Known Member

    Well, if you don't mind doing the zone re-route off a quick fx, you can do this:

    Create your DMX cue using QuickDMX and drag it to the workspace
    Create a quickFX that does the zone swap (add->zone routing->replace zone)
    right-click the DMX cue in the workspace and select cue properties->PangoScript

    In Cue start box you can enter:
    setfx(x,y) //where x is row # and Y is effect #

    If you want the effect to stop when you toggle the cue off then put script in the cue end box like:
    setfx(x,0) where x is row # containing the running zone reroute cue.

    Drop the cue on the timeline.

    You must make sure that in Settings->Configuration->Live Control that Master LC before Zone LC is selected or the zone reroute wont work.

    there may be other ways, but this seems to work.
  3. Stuka

    Stuka Well-Known Member

    I'll give your method a try -

  4. Stuka

    Stuka Well-Known Member

    Perplexed ...

    UPDATE -

    Okay, here is what I've been able to figure out so far:

    * All of the QuickFX - including those for zone rerouting - work instantly with cues played from the grid, as expected.
    * With Multi cue selected, using the "SelectFX" script in a DMX cue applies the referenced QuickFX just as if it were selected manually from the QuickFX grid.
    * Any of the QuickFX can be dropped onto the timeline (track effect), and it functions just like any effect would that was created on the timeline.

    With "MasterLC before ZoneLC" enabled:

    * None of the QuickFX selected from the grid during timeline playback effect the frames playing from the timeline.
    * Using the "SelectFX" script in a DMX cue dropped onto the timeline does not effect the frames playing from the timeline.

    With "MasterLC before ZoneLC" turned off:

    * The BUILT IN QuickFX selected from the grid during timeline playback DO effect the frames playing from the timeline.
    * Using the "SelectFX" script in a DMX cue to select BUILT-IN QuickFX applies the referenced QuickFX just as if it were selected manually from the QuickFX grid.
    * Zone rerouting QuickFX, whether selected manually from the QuickFX grid or referenced in a DMX cue dropped on the timeline, do NOT effect the frames playing from the timeline.

    VERY perplexing -
    I feel quite certain there is a way to make this work, but I must have overlooked some particular setting somewhere that would allow PangoScript embedded in a cue to effect zone routing for another track.

    Any other tips?

    Thanks -
    Last edited: Jul 25, 2015
  5. Stuka

    Stuka Well-Known Member

    * BUMP *

    Still interested in finding a solution for this one!

    Quick synopsis of what I'm trying to achieve:

    Drop a DMX cue from the grid onto the timeline.
    In addition to the DMX function performed by the cue, would like to be able to include PangoScript code in the cue that would reroute laser output from one specified laser zone to a different zone. Would like this rerouting to "latch" and remain the same until another similarly-equipped DMX cue is dropped on the timeline and changes the output zone.

    Any assistance with code and required configuration settings would be appreciated!

    (BTW - still running on Beyond build 699, if that makes a difference. Hope to change that in the near future ...)

    Last edited: Aug 16, 2015
  6. ENOT

    ENOT Software Developer Staff Member


    This is Alexey from Pangolin. So far, I do not understand why to make such construction. It should be simpler. Please answer my questions:
    1. Where to change the routing? track, some image, or what?
    2. Depending on what the routing should change? DMX IN value, DMX OUT value, or ?
    There may be variety of ways how to make it. Lets skip "how" for a while. Lets consider it as a function. The result of function - change of routing. The argument of function is ?

  7. Stuka

    Stuka Well-Known Member

    Good morning Alexey!

    My idea for this is the zone change should take place at the track level - this way, the contents of the entire track would reroute to a different zone, regardless of the zone settings that might have been assigned for a particular frame on the track.

    The DMX cues I would be using are all ""DMX output" only (the cues are already programmed and perform their DMX function as required); these cues would be dropped on the timeline as needed to perform their specific function with external DMX equipment. For my particular scenario, the track zone rerouting needs to take place at the same time these DMX cues are activated, and in some cases, the zone rerouting may need to take place several times over the course of a show module, always timed to occur at the same time as the these DMX cues.

    These DMX cues are performing a "latching" function with the external DMX equipment - they perform their required function as soon as the cue is activated, so the cue does not need to be stretched to cover a certain period on the timeline. When the DMX function needs to change, another of these cues is dropped on the timeline as needed. The zone rerouting I need to perform would mirror the timing and "latching" of these DMX cues.

    I know what I want to do can be accomplished using separate tracks for the different zones, or using effects dropped on the timeline and stretched to fit as needed. However, I figured since the zone change is always tied to a specific series of DMX cues, it would be helpful to just include the required code with these cues. Since I frequently work with Beyond from a laptop, this would help get rid of some of the clutter on the screen that would come from using the additional tracks or effects line needed to accomplish the rerouting (and easier for my aging eyes to keep up with!!)

    This would also require me to dig deeper into using PangoScript - which is something I definitely want to do, but is obviously an area where I could still use some help!! :p

    I hope my explanation helps -
    Thank-you for the help Alexey!!

    Last edited: Aug 17, 2015
  8. ENOT

    ENOT Software Developer Staff Member

    Hi Randy,

    There are two types of final state machines. The first one oriented on state, the second - on action. The script is action, the timeline is state. Using two models at once cause a complication. That is why I am sort of hesitant to use script on the timeline. it is possible, but you need to understand the background.

    OK, if I understand well, the fact of presence of Event on some track should allow influence effects. Please confirm.

    Right now I am thinking about the Channels. The Zone Chase effect is able to work depending on Input. If to have a Chase and activate the step depending on Channel (that also can be DMX IN, MIDI, etc). then it might help.
    The second thing is Effect Item properties, it allow to enable/disable effects depending on Events - I talk about PulseEvent command, not about the timeline. So, if the timeline event start script will trigger "Event" then you have a way to control effects at any place of BEYOND. Sorry if it sounds confusing. You may read about Events in documentation about "Realtime Audio"

    I recommend do not mix together Event and Cue. There may be 10s of Events that use the same Cue. Anyway, thanks for great question, very interesting, I never considered timeline Event itself. Interesting.

    Best Regards,