• grandMA3 User Manual
    • About the manual
    • Device Overview
      • grandMA3 consoles
        • grandMA3 full-size
        • grandMA3 full-size CRV
        • grandMA3 light
        • grandMA3 light CRV
        • grandMA3 compact XT
        • grandMA3 compact
      • grandMA3 extension
      • grandMA3 replay unit
      • grandMA3 processing units
      • grandMA3 Nodes
      • grandMA3 Nodes DIN-Rail
      • grandMA3 I/O Node
      • grandMA3 I/O Node DIN-Rail
      • grandMA3 onPC command wing XT
      • grandMA3 onPC command wing
      • grandMA3 onPC fader wing
      • grandMA3 onPC rack-unit
      • Screen allocation
      • Keyboard shortcuts
      • Keys
        • . [Dot]
        • <<< [GoFastBackward] | Black
        • >>> [GoFastForward] | Flash
        • - [Minus]
        • + [Plus]
        • / [Slash] | * [Asterisk/Multiply]
        • At
        • Assign
        • Align
        • Blind
        • Clear
        • Channel
        • Copy
        • Cue
        • Down
        • Delete
        • Esc
        • Edit
        • Freeze
        • Full
        • Fixture
        • Group
        • Goto
        • Go+ [large]
        • Go- [large]
        • Go+ | Temp
        • Go- | Top
        • Help
        • Highlt [Highlight]
        • If
        • Learn | Rate1
        • List
        • MA
        • Menu
        • Move
        • Next
        • Numeric keys | arrows
        • Oops
        • On
        • Off
        • Pause [large]
        • Pause | Fix
        • Page+
        • Page-
        • Please
        • Power
        • Preset
        • Prvw [Preview]
        • Prev [Previous]
        • Select
        • SelFix [SelectFixture]
        • Sequ [Sequence]
        • Set
        • Solo
        • Stomp
        • Store
        • Thru
        • Time
        • Up
        • Update
        • U1
        • U2
        • X1 | Clone
        • X2 | Link
        • X3 | Grid
        • X4 | Layout
        • X5 | Step
        • X6 | TC
        • X7 | View
        • X8 | DMX
        • X9
        • X10
        • X11
        • X12
        • X13 | Phaser
        • X14 | Macro
        • X15 | Page
        • X16 | Exec
        • Xkeys
      • Control elements
        • Command area
        • Master area
        • Custom area
        • Dual encoders
        • Level wheel
        • Grand master
        • Executor elements
      • Connector pin assignment
    • System Overview
      • Standalone device
      • Locally networked devices
      • World server
      • Parameters
        • Calculate parameters
        • Expand the amount of parameters
    • First Steps
      • Unpack the device
      • Check scope of delivery
      • Position the device
      • Connect power
      • Connect desk light
      • Connect external screens
      • Connect USB devices
      • Connect DMX
      • Connect Audio In
      • Connect MIDI
      • Connect LTC
      • Connect Ethernet
      • Connect DC Remote In
      • Connect grandMA3 extension
      • Connect grandMA3 fader wing
      • Turn on the device the first time
    • grandMA3 onPC
      • System requirements grandMA3 onPC
      • Windows installation
      • Optimize Windows
      • macOS installation
      • Optimize macOS
      • onPC Terminal App
      • onPC settings
      • Clean start
    • Show File Handling
    • Workspace
      • User interface
        • Configuration of displays
        • Desk lock
        • User-defined area
        • Command line
        • Control bar
        • View bar
        • Tables in general
        • Trackpad window
      • Gestures
      • Command area
      • Master controls
      • Playback controls
      • Displays in grandMA3 onPC
      • Encoder bar
        • Feature group control bar
        • Encoder toolbar
      • Calculator
      • Playback bar
      • Command wing bar
      • Colors
        • System
        • Markers
        • Color theme
    • Command Syntax and Keywords
      • General syntax rules
      • All keywords
        • ; [Semicolon]
        • / [Slash]
        • . [Dot]
        • .. [DotDot]
        • = [Equal]
        • <<< [GoFastBackward]
        • >>> [GoFastForward]
        • - [Minus]
        • * [Asterisk]
        • % [Percent]
        • + [Plus]
        • Absolute
        • Acceleration
        • Action
        • ActivationGroup
        • Align
        • AlignTransition
        • Appearance
        • Assign
        • At
        • Attribute
        • Black
        • Blind
        • Block
        • BPM
        • Call
        • Camera
        • Capture
        • Certificate
        • ChangeDestination
        • Channel
        • ChannelSet
        • Chat
        • Cleanup
        • Clear
        • ClearActive
        • ClearAll
        • ClearSelection
        • Clone
        • CmdDelay
        • ColorTheme
        • Configuration
        • Console
        • Cook
        • Copy
        • Cue
        • CueAbs
        • CueDelay
        • CueFade
        • CueInDelay
        • CueInFade
        • CueOutDelay
        • CueOutFade
        • CueRel
        • CurrentUser
        • CurrentUserProfile
        • Cut
        • DataPool
        • Deceleration
        • Decimal8
        • Decimal16
        • Decimal24
        • Default
        • Delay
        • Delete
        • DelGlobalVar
        • DelUserVar
        • Dismiss
        • Display
        • DMXAddress
        • DMXReadout
        • DMXUniverse
        • Down
        • Drive
        • Echo
        • Edit
        • EditSetting
        • Eject
        • Effect
        • EndIf
        • Exchange
        • Executor
        • Export
        • Extract
        • Extension
        • Fade
        • Fader
        • FaderHighlight
        • FaderLowlight
        • FaderMaster
        • FaderRate
        • FaderSolo
        • FaderSpeed
        • FaderTemp
        • FaderTime
        • FaderX
        • FaderXA
        • FaderXB
        • FeatureGroup
        • Filter
        • Fix
        • Fixture
        • FixtureType
        • Flip
        • Flash
        • Fog
        • Font
        • Freeze
        • Full
        • Gel
        • GetGlobalVar
        • GetUserVar
        • Universal
        • Go+
        • GoStep
        • Go-
        • Goto
        • Grid
        • Group
        • HardwareKey
        • Help
        • Helplua
        • Hex8
        • Hex16
        • Hex24
        • Highlight
        • Houselights
        • Hz
        • If
        • IfActive
        • IfOutput
        • IfProg
        • Image
        • Import
        • Index
        • Insert
        • Integrate
        • Interface
        • Invert
        • Invite
        • IP
        • JoinSession
        • Key
        • Keyboard
        • KeyboardShortcuts
        • Knockin
        • Knockout
        • Label
        • Language
        • Layout
        • LearnRate
        • LearnSpeed
        • LeaveSession
        • Library
        • List
        • ListOwner
        • ListRef
        • Load
        • Loaded
        • LoadShow
        • Lock
        • Login
        • Logout
        • Lowlight
        • Lua
        • LuaFile
        • Macro
        • Master
        • MAtricks
        • Media
        • Menu
        • Mesh3DS
        • MessageCenter
        • Monitor
        • Move
        • MyRunningMacro
        • MyRunningSequence
        • NewShow
        • Next
        • Node
        • NonDim
        • Normal
        • Off
        • On
        • OnPC
        • OSC
        • Oops
        • Output
        • OutputLayer
        • Page
        • Part
        • Park
        • Paste
        • Patch
        • Pause
        • Percent
        • PercentFine
        • Phase
        • Physical
        • Plugin
        • Preset
        • PresetUpdate
        • Press
        • Preview
        • Previous
        • Programmer
        • Property
        • PU
        • Pyro
        • Rate1
        • Readout
        • Reboot
        • Recast
        • Relation
        • Relative
        • Release
        • ReloadPlugins
        • ReloadUI
        • Remote
        • RemoteHID
        • RemoteCommand
        • Remove
        • Reset
        • Restart
        • Root
        • RTChannel
        • RunningMacro
        • RunningSequence
        • SaveShow
        • ScreenConfig
        • ScreenContent
        • Scribble
        • Seconds
        • Select
        • Selection
        • SelFix
        • Sequence
        • SendOSC
        • Set
        • SetGlobalVar
        • SetUserVar
        • Shuffle
        • Shutdown
        • SnapDelay
        • SoftwareUpdate
        • SoundChannel
        • Solo
        • SpecialExecutor
        • Speed
        • Speed1
        • Stage
        • Station
        • Step
        • Stomp
        • Store
        • Temp
        • Texture
        • Thru
        • Time
        • Timecode
        • TimecodeSlot
        • Toggle
        • Top
        • Transition
        • Type
        • UIChannel
        • UiGridSelection
        • Unblock
        • Unlock
        • Unpark
        • Unpress
        • Up
        • Update
        • UpdateContent
        • User1
        • User2
        • User
        • UserProfile
        • Video
        • Version
        • View
        • ViewButton
        • Width
        • World
        • Xkeys
        • Zero
      • Extended command line syntax options
    • Windows, Views, and Menus
      • Add window
      • Rearrange
      • Store and recall views
      • Remove windows from a screen
      • Window settings
      • Menus
      • Change menu locations
      • Pool windows
        • Create pool object
        • Label pool objects
        • Move pool objects
        • Insert pool objects
        • Copy pool objects
        • Lock and unlock pool objects
        • Delete pool objects
    • Networking
      • Interfaces and IP
      • Session
        • Create a session
        • Join a session
        • Leave a session
        • Invite to a session
        • Dismiss from session
        • Create a custom key
      • Web remote
      • SFTP connection
    • DMX In and Out
      • DMX port configuration
      • Ethernet DMX
        • Art-Net menu
        • sACN menu
        • Transmit DMX using Art-Net
    • Single User and Multi User Systems
      • Create User
      • User settings
    • Patch and Fixture Setup
      • What are fixtures
      • Add fixtures to the show
      • MVR
      • Live patch
      • DMX sheet
      • DMX universes
      • Remove fixtures from the show
      • Position fixtures in the 3D space
      • Marker fixture
      • 3D window
      • Camera Pool
      • Stages
      • Classes and Layers
      • Attribute definitions
        • Activation group
        • Feature group
      • Parameter list
      • DMX curves
    • Operate Fixtures
      • What is the programmer
      • Fixture sheet
      • Encoder resolution
      • Using the color picker
      • Selection bar
      • Align
      • Selection Grid
      • Smart view
    • Scribbles
      • Create scribbles
      • Edit scribbles
      • Assign scribbles
      • Delete scribbles
    • Images
      • Screenshots
    • Appearances
      • Create appearances
      • Use appearances
      • Delete appearances
    • Groups
      • Create groups
      • Edit groups
      • Delete groups
      • Group masters
    • Presets
      • Preset pools
      • Create new presets
      • Recipe presets
      • Use preset
      • Edit or Update presets
    • Worlds and Filters
      • At filter
      • Create a world
      • Create a filter
      • Use a world or filter
      • Delete a world
      • Delete a filter
    • MAtricks and Shuffle
      • Blocks
      • Groups
      • Wings
      • Widths
      • Shuffle
    • Cues and Sequences
      • What is tracking
      • Look at cues and sequences
      • Sequence settings
      • Store cues
      • Update cues
      • Copy cues
      • Cue recipes
      • Store settings and preferences
      • Play back cues
      • Move in black
      • Cue timing
      • Renumber cues
      • Delete cues
    • Executors
      • Assign object to an executor
      • Executor configurations
      • Running playbacks
      • Special executors
    • Masters
      • Selected masters
      • Grand masters
        • Time Control
      • Speed masters
      • Playback masters
    • Phasers
      • Step bar
      • Phaser editor
      • Create sinus dimmer phaser
      • Create circle phaser
      • Create circle phaser around position
      • Create color rainbow phaser
    • Macros
      • Create macros
      • Edit macros
      • Assign macros to keys and buttons
      • Examples
    • Agenda
      • Agenda modes
      • Create an agenda entry
      • Edit an agenda entry
      • Agenda toolbar
      • Agenda edit menu
    • Timecode
      • What are timecode slots
      • Timecode settings
      • Track groups
      • Time ranges and events
      • Toggle view mode
      • Record a timecode show
      • Record an external timecode show
      • Edit a timecode show
    • Layouts
      • Create a layout
      • Edit layout
      • Layout view settings
      • Edit layout view
      • Edit layout elements
      • Layout encoder bar
    • Plugins
      • What is Lua?
      • Lua functions
        • Object-Free API
          • Cmd
          • CmdIndirect
          • CmdIndirectWait
          • CmdObj
          • Confirm
          • DataPool
          • Echo
          • ErrPrintf
          • ErrEcho
          • Export
          • GetPath
          • GetShowFileStatus
          • GetSubfixture
          • GetSubfixtureCount
          • HookObjectChange
          • HostOS
          • HostSubType
          • HostType
          • Import
          • MessageBox
          • ObjectList
          • PopupInput
          • Printf
          • ProgressBar
          • SelectedSequence
          • SelectionCount
          • SelectionFirst
          • SerialNumber
          • SelectionNext
          • TextInput
          • Timer
          • UserVariables
          • Version
        • Object API
          • Children
          • Export
          • HasActivePlayback
          • Import
          • ToAddr
    • Data Pools
    • System
      • Date and time
      • Clock
      • Desk lights
      • System information
      • System monitor
      • Info Window
    • Sound Window
    • Remote In and Out
      • DC remotes
      • MIDI remotes
      • DMX remotes
      • OSC
      • PSN
    • RDM
    • Control other MA Devices
      • grandMA3 Nodes
      • MA Network Switch
      • RemoteHID
    • Update the Software
      • Update grandMA3 consoles
      • Update grandMA3 Nodes
      • Update grandMA3 onPC windows hardware
      • Update grandMA3 viz-key
      • Network update
      • Troubleshooting
    • Fixture Types
      • Import fixture types
        • Import GDTF
      • Build fixture types
        • Insert fixture types
        • Insert DMX modes
        • Insert geometries
        • Insert models
        • Link models to geometries
        • Link DMX modes to geometries
      • Export fixture types
        • Export GDTF
    • File Management
      • Import / Export Menu
      • Folder Structure
    • Shut down the System
  • grandMA3 Quick Start Guide
  • grandMA3 Quick Manual consoles
  • grandMA3 Quick Manual processing units
  • grandMA3 Quick Manual Nodes
  • grandMA3 Quick Manual Nodes DIN-Rail
  • grandMA3 Quick Manual onPC command wing XT
  • grandMA3 Quick Manual onPC command wing
  • grandMA3 Quick Manual onPC fader wing
  • grandMA3 Quick Manual onPC rack-unit
  • grandMA3 Quick Manual viz-key
  • grandMA3 Quick Manual I/O Nodes
  • Release Notes
Select different version
 
Hint:
New help version
The help version you selected belongs to an older software version. You may want to view the latest help version.
Version 1.6

Plugins

A plugin is a piece of software that adds features to an existing program. 

The grandMA3 supports such plugins, thus allowing customization. 

For the plugins used in the grandMA3 software, the scripting language Lua is used.

Important:
The creation and use of plugins can go deeper into the system as the “normal” usage of a console. Therefore the technical support team of MA Lighting may not be able to help you in all circumstances when using complex Lua plugins and Lua plugins might have to be rewritten when migrating show files to future grandMA3 software version.

 

Add a Plugin Pool Window

  • To add a plugin pool window, follow the instructions under Add windows.

In the Add Window pop-up:

  1. Tap Pools.
  2. Tap Plugins.
    The plugin pool opens. 
Plugin pool window
  • To adjust the plugin pool window settings, follow the instructions under Window settings.
 

 Add a Plugin to the Pool

  • To add a plugin to the plugin pool, tap an empty pool object and use the swipey menu to select Edit.

The Edit Plugin window opens:

Edit Plugin window

Edit a Plugin

A Lua component is a piece of software code that can be inserted into the console, usually one file.

  • To add a new Lua component, tap Insert new ComponentLua.

The new component is added.

  • To add Lua code to the component, tap Edit.
 

The Text input window opens:

Lua Text input window
  • Add text or paste the Lua code into the Text input window.
  • To save the Lua plugin, tap Save.

 

  • To add a Scribble, tap Scribble, and select the desired scribble from the drop-down list.

 
  • To add an Appearance, tap Appearance, and select the desired appearance from the drop-down list.

 

This file is saved in the show file, unless you export it.

  • To enable or disable Installed, tap Installed to toggle between Yes and No.
    If Installed is set to Yes, the Lua components will be updated from the file archive they were imported from.
    To update any changes in these Lua components, the command ReloadPlugins must be executed.
  • In Stream describes if the Lua code will be saved in the show file and be streamed in the session or not.
    In Stream depends on the setting in Installed and cannot be modified by the user.
    In Stream Yes means that the Lua code is saved in the show file and streamed in the session but stays as saved in the show file.
    In Stream No means that the Lua code is locally saved on the hard drive. The content of this Lua code can be updated by the command ReloadPlugins.
  • To adjust the user rights, tap User Rights , and select the desired user right needed to execute the plugin from the drop-down list.

 

  • To close the Edit Plugin window, tap .

 Run a Plugin

  • To run a Lua plugin, tap the desired Plugin object.
 

Import a Plugin

  • To import a plugin, first create the plugin with your editor.

 

Example Plugin

XML file my_plugin.xml:

<?xml version="1.0" encoding="UTF-8"?>

<GMA3><Plugin Path="/my_plugin" Name="My Plugin"><ComponentLua Name="my_plugin" Installed="Yes" FileName="my_plugin.lua"/></Plugin></GMA3>

 

Lua file my_plugin.lua:

local function main()
    Printf("Hello, MA user!")
end

return main

 

  • Save the Lua file and the XML file in the folder C:\ProgramData\MALightingTechnology\gma3_library\datapools\plugins.
  • Tap Import.

The Import selection menu opens:

  • Select the plugin you want to import and tap Import.

The plugin is imported.




Sub topics

Select different version