Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
The developers and authors of this manual are volunteers. A very special thanks goes out to our families for supporting us in this hobby. Without your support we could not do this. A very special thanks goes out to Matt Brown and Sean Meighan, the original authors of xLights and Nutcracker.
This section describes the steps required to install and use xLights for the first time to create a sequence. The details of each step are covered in the respective sections covering that functionality. The examples use a Windows operating system but the process would be similar for Macintosh OS X, though the installation will be different.
xLights was created by Matt Brown in early 2010 and was released to the public on September 13th of that year. Matt wanted a program that would reliably play his LOR show after experiencing lagging. His original xLights application consisted of a testing and scheduling module only. The program could control a variety of lighting networks including LOR, D-Light, DMX and Renard. And it also ran under Windows, Mac OS X and Linux. xLights did not have its own sequencer at the time, but could run a mixture of LOR S2 and Vixen sequences.
Nutcracker, originally called rgbsb, was written by Sean Meighan in February 2012. Sean, who was new to animated Christmas lights, wanted an easier way of creating effects on smart RGB devices. He came up with the unique concept at the time of defining a model (megatree, matrix, arches, etc.) and then dropping effects (butterfly, spirals, text, .etc.) onto the model. Sean gave a presentation on the newly renamed Nutcracker software at the Texas Academy in the Summer of 2012. People were excited. Nutcracker could produce either lms or Vixen 2 files. Nutcracker 1 and 2 were developed as a web based php application. To create effects users would log into the web applicaton, define models and apply effects.
The Nutcracker name came about because Sean had built two 9' tall nutcrackers for his show and it was suggested he rename his rgbsb application to Nutcracker.
During the Fall of 2012 Matt had contacted Sean and asked if he could port the Nutcracker code into the xLights show player. By January 2013, Matt had taken the web based code that Sean wrote, re-wrote that code into C++ and made Nutcracker a part of xLights. January 2013 xLights v3 was released. Now Nutcracker could be natively ran on Windows, Macintosh or Linux systems. This capability came from Matt's design of his player code. This produced a real time Nutcracker product. For example the Snowflake effect took 5 minutes to generate effects using Nutcracker 2, in Nutcracker 3 (the xLights port), that same effect now took less than 5 seconds. Amazing work by Matt!
2013 found both Matt and Sean developing xLights/Nutcracker into a show player and sequencer.
Early into 2014, Matt was hired by Light-O-Rama to develope their software and left the xLights team at that time.
In 2014 Sean had discussions with Dave Pitts about making xLights resemble a video editor with a horizontal timeline, sound file waveform, drag & drop effects and multiple layers. Dave coded up the first Alpha xLights 4.0 in November 2014. In January 2015, Gil Jones and Dan Kulp came on to the team and took over the development from Dave. xLights 4.0 Beta was released on March 20th, 2015. Keith Westley joined the development team in late Summer/early Fall of that year.
With the release of version 4.3 on December 17th, 2015, Sean changed the name and dropped the reference to Nutcracker and was simply called xLights. Starting in 2016, xLights dropped the version 4.x numbering scheme and switched to a year/version scheme (i.e 2019.17).
On February 18th, 2017, the sequence player/scheduler was removed making xLights a light sequencer only application. This capability was replaced with a standalone application called xScheduler created by Keith Westley.
The Summer of 2018 saw the release of the 3D layout and rendering capabilities thanks to Gil Jones.
Both Matt and Sean have always believed their software should be made available free to the lighting community. As such you can download the source code from: https://github.com/smeighan/xLights.
Welcome to the xLights User Manual. We hope that you will find the information that you need to make your Halloween and Christmas shows shine!
You can skip this section if you have not have hardware yet, and do not plan to output data to your lights.
The controllers section defines how the channels are mapped to physical hardware and controllers. It is only used when outputting data to the controllers and can easily be changed at any time.
You do not have to define any controllers when you start , but you will need it defined before you can test any effects on physical lights from within xLights.
If you do want to define the controllers details at this stage, select the Controllers tab and add a controllers. The actual controllers settings does not have to be correct as you can change the details later.
To define a E131/DDP/Artnet type controller, Click on the Add Ethernet button:
Set the Name of the Controller, this can be any value, but make it something specific that is easy to remember for later use.
Set the Controller Vendor, Model, and Variant. Not all controllers have a variant type, this will be blank for some controllers.
After setting the Controller Type, Enable the Auto Layout Model option.
Set the controller "IP address", If unknown just use a generic value like "192.168.1.50". Set the "Start Universe" to 1, "Universe Count" to 20, "Channel per Universe" to 510, and press Enter.
This will create a basic controller with 20 universes. Each universe will have 510 channels. The start and end channel are automatically calculated and displayed in the mapping column.
Click on Save Button to save the controller setting that were added.
When the installation has completed, depending on your option selected, xLights will automatically launch or you can double click on the xLights icon/program to start it.
If this is the first time that you have installed xLights on the computer, then you need to set the show directory. The show directory is the location where all your xLights files are stored and where your sequences will be created.
The Show Folder should be in you personal documents folder i.e "My Documents" or "Documents".
You should be presented with the following screen:
This screen will allow you to navigate to "Documents" and create the show folder.
Right Click in the "Documents" folder and select New->Folder
Rename the folder to a unique name.
In the following example I created a show folder is called "xLights"
Highlight the "xLights" folder and click "Select Folder".
After setting up your show folder the main xLights window should appear.
"C:\Users\<username>\Documents\xLights"
The next step is to add a Background Image for your House Preview Layout.
Click on the Layout tab. You will be presented with the list of Model definitions on the left (currently empty) and the House preview (shows up as black as no picture has been loaded).
You can proceed without a picture of your house/yard and add this in later.
Or you can select an image from any location. Click on the Background Image prompt and browse to and select your image.
Note that the image background, size and appearance does not drive any xLights functionality, but is more for the user to have a visual representation of where his or her models are and what they look like on the canvas.
Click on Save to set the image details.
In this section, we will define a Model, a Model Group, and add the model to the Model Group. Model and Model Group definitions are persistent, are to be defined once and can then be used in all your sequences.
As an example, I am creating an Arch model and will call it ‘Arch 1’. The arch is about 2.5 metres long and as such is made up of 25 RGB pixels.
Click on the Layout tab, then click on the Arches icon. The selected icon will have a blue square around it.
Then click anywhere on the Canvas and drag slightly. An image of an arch will be displayed and an Arch model called ‘Arches’ (the default name that is assigned to the model may be slightly different) will be created with a default set of model settings.
Change the Model name to ‘Arch-1’. Click the Tab or Enter Key to set the new name.
Change the Nodes Per Arch value to 25.
Set the controller to "Main Controller" or whatever name you set in the controller tab.
Set the Controller Connection Port to 1. This is the port of the controller the model will be physically connected too.
The Start and End channel will be automatically calculated by xLights based on the model settings and the controller settings selected.
If you are adding a second model to the same controller port, set the model chain order to determine the model order on the controller output.
You can change the model name or any settings by typing over/editing the settings field. For some settings, click in the settings field, to the right of the setting name.
After changing an settings, use the Tab or Enter key to confirm the change.
Use the blue dots around the model to resize and rotate it if required. To move the model click and drag it to the desired location. The green dot should at the left side of the screen. When it is aligned horizontally, a red line is displayed between the green and blue dots.
The starting location of the model can be changed to the 'Blue' or 'Green' square.
Click on the Save button (just below the Models button) to save the work that you have done so far. This includes the Model definition and its position on the Layout.
The 'Save' button will appear red when unsaved changes are present.
You can then drop and effect against either the Model Group or the Model. Model groups are identified by a small group icon after the name.
If you double Click on the Model Group name, it will expand and show you the models that have been defined as part of the Model group - in this case the ‘Arch 1’ model. Double Click again to collapse the Model Group.
First Select a Timing marks you like to use. To do this, select the circle next to timing track. In the example below, The ‘Beats’ timing marks are selected.
Select an effect (in this case the Bars effect) and drag it onto the grid in line with the ‘Arch 1’ model.
This is effectively placing the effect on the model.
You could also place it against the Model Group - (one line higher), in which case it applies to all models under the Group.
You can grab the edge (in purple) and drag it to the right to stretch. Note that the effect shows in the Model window and in the House Preview window.
You can change effect settings via the Effects Window. For example, change the Bars 'Palette Rep' setting from 1 to 2 by dragging the slider bar. This window can be dragged out to an another location and expanded. The windows will resize.
You can change the color of the effect, by selecting a different set of colors from the Color window.
Use the highlighted keys to start, stop pause, rewind and play again. As the sequence plays, you can see the effects on the House Preview screen.
Select the Bars effect and drop it on the sequencer grid onto the ‘Arches’ Model Group. Play the sequence and observe the effect in the Model Preview window and House Preview windows.
Click on the New Sequence icon
and from the following screen, select Musical Sequence.
Select the media file for the audio.
Select the frames per second (FPS) - 50ms is the most commonly used one.
On the next screen, you can click on Quick Start and create timing marks later or you can create timing marks now by clicking on the Timings tabs.
If you forget to do it at this stage and move on to the next screen, you can always create timing marks later by accessing the Timing menu via the Settings menu.
Click on New to create a new Timing Marks Grid.
If the QM Vamp plugins have not been installed, then you will be presented with the following options only. In which case select 50 ms and continue. You can add new or additional Timing Mark intervals at any time later.
If the QM Vamp plugins have been (correctly) installed, then you will be presented with a number of different options.
You can also add new or additional Timing Mark grids at any time later.
Select the Beats Timing Interval.
(You can select any one - but this is one of the common timing marks used). Then Click Ok.
Leave the default values on this screen and click Ok.
You can click on ‘New’ again to add an additional timing mark if you wish or click on Done to move on to the next step.
(This example clicks on Done).
All Model are added to the Master View by default, when creating a New Sequence, this section can be skipped unless you are adding new models to an existing sequence.
Models added to the layout after a sequence was created must be added to a View so that the models are then available to place effects against. Each sequence has a ‘Master View’ that is automatically created. The Master View defines a list of models that are specific to that sequence only. For this example, we will use the Master View.
It is worthwhile creating another View that contains all your models (or a common set of models) which can then be used in all your sequences so that they do not have to be added each time.
Right click on the Timing grid names (in the area highlighted on the screen).
Select the Edit Display Elements option from the pop up window.
Select the Master View from the top window.
From the Left window select the items you would like to add and Click the Right Arrow Button. If you select the Double Right Arrow all the items (All Models, Arch1, and Arches Group) will be added.
Click on Close when done.
The next step is to define a Model Group. You can work without using model groups. You can also do this at any time later, but it is good practice and most useful later to have each model part of a group.
Right Click in the Models Group panel. An ‘Add Group’ button will be displayed.
Click on the Add Group button. Enter a Model Group Name when prompted. I have called it ‘All Models Group‘. Every time I add a model, I will add it to this Model Group. A model can be part of more than one model group.
Next add the models that are part of the Model Group to the group. From the list of models, select the model and click on the right arrow to add to the model group window. Double clicking the model name will also add it to the group.
The model ‘Arch1’ is now part of the ‘All Models Group’ group. Click on Save when complete.
Repeat the above steps and add a second Model Group ‘Arches Group’. Click on OK and then click on Save.
Select the Model group ‘Arches Group’ and adding the model ‘Arch1’ to that group too.
Click on Save to save the Model group updates (and all changes to the layout, models or model groups since the last time this save button was clicked on).
Click on Save to save the Model group updates (and all changes to the layout, models or model groups since the last time this save button was clicked on).
This completes a definition of a single model ‘Arch1’ that is an ‘Arches’ type of model, is part of a Model Groups ‘All Models’ and ‘Arches Group’, that is to be displayed on the Layout display. The model image has been resized and placed against the fence in the layout.
Should you wish to Rename a Model group or delete it, highlight the Model group Name and right click. Use the resulting window to rename, delete, or clone the group.
You can also add additional groups. The next step is to create a new sequence.
The latest AppImage release of xLights for Linux can be found at the following link: https://github.com/smeighan/xLights/releases
You can also download the source from https://github.com/smeighan/xLights and compile as per the included README.linux file.
Download the latest "xLights-xxxx.xx.glibc2.17-x86_64.AppImage" file from: https://github.com/smeighan/xLights/releases
Set the AppImage file as an executable (for example ‘chmod +x ./xLights-xxxx.xx.glibc2.17-x86_64.AppImage’) and then run the file directly.
Click on the File Menu.
The drop down list has options to backup files, close the sequence and Quit xLights.
Click on the Backup option (or press F10). The backup process will copy all xml files (including key xLights setup and the model definition from your show directory only.
You can also click on Alternate Backup or press F11 to backup to a different location.
This will not back up any images, pictures or media files.
A message is displayed indicating the name and location of the backup files.
Select Yes to accept. Then, from the file menu again, click on Close Sequence.
Then click on Quit.
If the following message is displayed, xLights has detected that there has been a change to the Model or View definitions that has yet to be saved.
Click on ‘Save Changes’ to save.
The latest release of xLights for Windows can be found at the following link: https://xlights.org/releases/. This page has a link to the 64 bit main xLights installer. There is also a link to the Queen Mary Vamp Plugins and the Microsoft Visual C++ 2015 Redistributable which is required by the QM Vamp Plugins.
Download the required released executable file and save to any location on your Windows PC.
Double click on the downloaded executable.
The xLights setup window will be displayed.
Click on Next.
Select the destination location. Leave as is to upgrade to a new release. Follow the prompts and click on install when ready.
Click on Finish to complete the installation
The xLights software will be installed in the destination location. In addition to the software required to run the application, the installer also installs a few useful utilities, dictionaries and a songs subdirectory. The xLights application software is installed by default in the xLights directory within your Windows Program Files directory ( C:\Program Files\xLights\).
The location can be modified during the software install process by the user.
When xlights is installed, some browsers/virus scanners may flag the file and either prevent download or require you to provide extra assurances that you really want to download the file.
If you do not have Audacity installed on your computer, then you should at least install the Queen Mary Vamp plugins for Audacity.
For the QM vamp plugin packages that can be installed without Audacity installed you will need to download two installers, the first is the Microsoft Visual C++ 2015 Redistributable(vc_redist.x64.exe) and the second is the QM Vamp Plugins(Vamp_Plugin64.exe). Both installer can be found at: https://xlights.org/releases/. Run the "vc_redist.x64.exe" installer first and then the "Vamp_Plugin64.exe" installer.
If this is an upgrade to an existing xLights setup, make sure that you backup your existing files before installing a new version. The install process does not delete any of the files required for your sequences or setup, as these files are kept in the show and media directories. To backup your existing files, follow the procedure described on the Menus Page or just press F10.
Before you install any new release of the software, it is very good practice to backup your key xLights files . This can be set to automatically by enabling the ‘Backup on Launch’ option via the Preferences Dialog.
Alternatively you can manually do so via the F10 or F11 functions.
If you have any sequence currently open, then changes to the effects, views, models etc may not have been saved until you exit xLights.
Please also refer to the Backup section in this document which describes how xLights handles current unsaved work.
The monumental task of keeping a user manual up to date...
In Greek mythology Sisyphus or Sisyphos (/ˈsɪsɪfəs/; Ancient Greek: Σίσυφος Sísuphos) was the king of Ephyra (now known as Corinth). He was punished for his self-aggrandizing craftiness and deceitfulness by being forced to roll an immense boulder up a hill only for it to roll down when it nears the top, repeating this action for eternity. Through the classical influence on modern culture, tasks that are both laborious and futile are therefore described as Sisyphean (/ˌsɪsɪˈfiːən/).
Download the xLights and QM Vamp Plugins installer from https://xlights.org/releases/
First, install the Queen Mary VAMP plugins which are used used by xLights.
Second, install the xLights, keep the default settings.
Installation options are further described in Chapter Three: Installation.
As described under Quick Start Guide, you can start with a default set of configuration values and then come back to change or update the details before testing your lights physical output. Or you can chose to not define any network information at the beginning until you wish to test from within xLights.
The Controller Panel is divided into two parts. The list on left displays all the controllers defined by the user. The right grid displays the setting for the currently highlighted controller.
Each controller should be defined as single line in controller list. These controllers are then used to determine the start channels for the models in the layout tab. The start channels can be automatically set by xLights or manually setup by the user.
Type
Description
USB
DMX, Pixelnet, LOR dongle, LOR optimized, D-Light, Renard, or OpenDMX Controllers
Ethernet
Artnet, E1.31, DDP, or ZCPP Controllers
Null
"Empty" Controllers
Clicking on Save will save the current configuration to the "xlights_networks.xml" file in the current show directory. After any changes are made to the Controller tab the Save button will turn red to identify there are unsaved changes.
To add a controller, click the add button for the desired controller type.
This will automatically find ZCPP and DDP controllers already attached to the local network.
The controller setting grid displays the settings for the currently selected controller. If no controller is selected , the settings grid will display global settings that affect all the controllers. The controllers settings vary based on the controller type and the settings selection.
The controller name needs to be unique for each controller. This name is used by xLights to map the models to the controllers.
The description field can be added by the user to add more details about the controller.
For Artnet and E1.31 controllers, The ID field is used for the Universe ID's for the controller to receive data on. For other controller types the ID Filed can be see to an unique ID for use with start channel addressing.
The "Active" drop-down determines if a controller is used when "Output to lights" is turned on. When "Active" xLights will output channel data to the controller. If "xLights Only" is selected, data will only be sent from xLights. If using xSchedule or when Uploading to FPP this controller will be set inactive. This is intended for FPP type controllers being used in Master/Slave mode. If set to "Inactive", no data output occurs. For example, if you have a controller not plugged in (testing a different controller) disabling that controller would not attempt to send anything to that specific controller. Trying to send data to a controller that is not connected and in some cases cause delays and lags on the output. When an controller is deactivated the row will be "grayed out" to show that it is not enabled.
The Vendor, Controller, and Variant fields are used to setup which hardware controller will be used. xLights will use this information to determine what protocols are supported and the max number of universe and/or channels allowed. Not all controller types require the variant field to be populated. If the controller being used is not listed, leave the fields blank.
When "Auto Size" is enabled, xLights will automatically adjust the controllers channel size based on the controller connections. This option only works when "Auto Layout Models" is enabled. It will not work with absolute or universe addressing.
When "Auto Layout Models" is enabled, xLights will automatically change the models start channels based on the controller connections.
When enabled, xLights will automatically upload the controller configuration when output to lights is turned on. This only works with FPP based controllers.
When "Full xLights Control" is enabled, xLights will erase all the current controller settings when preforming the upload process.
By default, data will be sent every output frame, If this option is enabled, xLights will only output data if the data is different from the previous frame. This is useful for slow controllers to prevent lag. Most E1.31 and DDP controllers should not enable this option.
This is needed when a FPP device is being used as proxy or bridge between your home network and show network, where the controller are attached. This is typically the WIFI IP of a FPP instance that bridges the wifi and Ethernet networks. The FPP Proxy IP/Host option is used in conjunction with FPP 2.8+ Controller Proxy.
USB Controller type is used to define a DMX, Pixelnet-Open, LOR dongle, LOR optimized, D-Light, Renard, or OpenDMX controller. The USB type can be used to for physical serial ports on the PC or "virtual" serial ports using a USB FTDI adapter.
Ethernet Controller type is used to define a E1.31, Artnet, DDP or ZCPP controller. The controller will be attached to the PC thought the ethernet or Wifi interface.
NULL controller type is used to generate channel blocks with no physical hardware or controller. This type of controller is used in setups, where the sequence output will not be used by xLights as a show player, but output data to be used for playback on a standalone controller.
The Visualise buttons allows the user to visually arrange which models are connected to each controller.
Upload Input will copy all the E1.31 universe inputs defined to the selected controller. This requires a valid IP address, and that multicast is not being used. The E1.31 Input Definition's will only be preformed for the controller selected.
Input Upload is only required for E1.31 or ArtNET controllers. i.e FPP, Falcon, and SanDevices. Output Upload is required for all supported controllers types.
Upload Output uses the parameters from models controller connections in the Layout tab/Visualise and uploads these settings to the controller. This feature is available for the following boards : Falcon, Pixlite/Pixcon, SanDevices, J1SYS, AlphaPix, HinksPix, Espixelstick, and most FPP caps and capes. This feature is compatible with both universe/channel addressing and absolute addressing.
The Visualise, Upload Inputs/Output functions will not work if the controller is displaying unmanaged mode. Unmanaged mode is set automatically by xLights when two controller outputs have the same IP address. While valid, this is highly not recommended and will disable these xLights functionality.
Open the currently selected controller in the default web browser.
This will delete the selected controller.
The green indicator identifies if the controller is connected and responding to ping requests. For serial ports this will indicate if the Com port can be opened. If red the controller is not responding.
USB Controller type is used to define a DMX, Pixelnet-Open, LOR dongle, LOR optimized, D-Light, Renard, or OpenDMX setup. The USB type can be used to for physical serial ports on the PC or "virtual" serial ports using a USB FTDI adapter.
Click the Add USB button to add a new USB controller. Select a row to highlight the controller and change the settings.
Sets the serial port used for the the serial device. The dropdown will populate with all the connected devices. Select "Not Connected" if the device is not currently attached.
Sets the speed of the serial device, normally listed as baud-rate or bit-rate.
Number of channels of the serial device. For most DMX devices this needs to be 512.
Protocol
Description
DMX
Compatible with Entec Pro, Lynx DMX, DIYC RPM, DMXking.com, and DIYblinky.com dongles. Universes are exactly 512 bytes, except for DIYblinky, where they can be up to 3036 bytes.
LOR
LOR controllers attached to any LOR dongle. Max of 8 channels at 9600 baud. Max of 48 channels at 57600 baud. Max of 96 channels at 115200 baud.
LOR Optimised
LOR controllers attached to any LOR dongle. LOR Optimised is designed to use some of the more advanced commands to reduce the amount of bytes sent out the LOR network. Setup all the controllers that are on this LOR network so that xLights will know which Unit ID's to utilize for each controller.
OpenDMX
Compatible with Entec Open DMX, LOR dongle, D-Light dongle, and any other FTDI-based USB to RS-485 converter.
Pixelnet -Open
Pixelnet controllers attached to a generic USB to RS485 dongle with FTDI chipset.
Renard
Renard controllers connected to a serial port or a USB dongle. 2 stop bits are set automatically. Max of 42 channels at 9600 baud. Max of 260 channels at 57600 baud
D-Light
D-Light controllers attached to a D-Light dongle. Max of 8 channels at 9600 baud. Max of 48 channels at 57600 baud. Max of 96 channels at 115200 baud.
Generic Serial
Generic Serial type sends raw channel data to the serial port. This is intended for Arduino type controllers. Eight data bits, no parity bit, and one stop bit (8N1) is the only support configuration.
LOR Optimized is much closer to true LOR protocol and utilizes some of the more advanced commands.
First, set an ID of the output, this is not the LOR unit ID of a controller box, it is a unique ID that xLights will use to direct the channel data to this output. The port is the COM port of the dongle in use, Baud Rate is adjustable. NOTE: Older black or white LOR dongles do not support speeds over 115200, Only the red LOR dongle will support higher speeds. Description is user defined value to identify the controller. The Devices setting sets the number of LOR Controller. Based on the Devices number, the settings grid will add setting for each LOR controller.
The settings grid will list the LOR controller. Each controller will be listed by controller type, Unit ID, Channels, and Address Mode. Note: xLights cannot set the unit ID to the controller, this must be done via the LOR software or from the DIP switches on the controller board if applicable.
Select the LOR controller type, the available choices are: AC Controller, RGB controller, CCR, CCB, and the 3 Pixie Controllers (4 ,8, 16 output boards). Then select the number of channels for this controller board. Next is the unit ID. This can be very confusing as LOR uses a hexadecimal system for numbering their UNIT ID's. Units 1 to 16 are 0x01-0x0F and units 17-32 are 0x11-0x1F. Make sure the hex number in bold matches the LOR unit ID in their software. Set the addressing mode as normal, legacy, and split. A description for each controller can be provided.
If you have a set of lights connected to your controller, you can test them directly via xLights.
To ensure that the Controller channels and outputs setting match xLight, an Upload to Controller must be preformed. To do this, switch to the controller tab highlight the controller to test.
Click the 'Upload Input' and 'Upload Output' to configure the controller. 'Upload Input' must be preformed first. Some controller types do not require the 'Upload Input' action to be preformed and this button may be grayed out. A dialog may appear asking the user to override the previous controller setting, Click 'Yes' on this dialog.
If successful, an Upload Compete message will appear in the bottom left status bar.
Then select the Test option from the Tools menu.
You will be presented with a screen that shows the controller and all the channels configured via the Controller Tab.
You can select the channels you want to test or in this case select the controller which then selects all channels.
Ensure that ‘Output to Lights’ is selected.
Select the test function (example Background Only) and use the sliders to increase the intensity.
To display Model groups or Models instead, click on Model Groups or Models across the top.
Different test functions are available for RGB, non RGB lights as well as the option to execute different test cycles. Set the Tools->Test section for more information.
The latest release of xLights for MacOS can be found Mac App Store.
https://apps.apple.com/us/app/xlights/id1137297689
The link will redirect your browser to the App Store Preview, and will automatically launch the app bringing you to the xLights download page.
xLights is compatible with the ARM based M1 hardware and the Intel based hardware
xLights will run on macOS 10.14 and above.
Search for "xlights" in the Apple App Store.
Download xLights by Clicking the "Get" button.
After Entering your Apple ID and password, Click the "Install" Button.
After installing, "xLights" will appear in the Dock
For M1 based hardware, download the 'Vamp Plugin Pack Installer' from Dan Kulps website
https://dankulp.com/xlights/archive/qm-vamp-plugins-1.8.dmg
For Intel based hardwar,e download the 'Vamp Plugin Pack Installer' from https://code.soundsoftware.ac.uk/projects/vamp-plugin-pack
Double click the downloaded .dmg file and run the installer inside the dmg file. Restart xLight and the new timing track options to appear.
NULL controller type is used to generate channel blocks with no physical hardware or controller. This type of controller is used in setups, where the sequence output will not be used by xLights as a show player, but output data to be used for playback on a standalone controller.
There could be large matrices to be implemented via P10 or P5 panels running off a BeagleBone Black controller. A null output can reserve a huge number of channels, but not actually output anything if the Output to Lights function is on. A model can still be sequenced as normal and viewed on all the windows just as any other output.
Number of channels of the null controller. It defaults to 512 channels but can be changed to a larger number.
Click on Add Null and specify the number of channels to be reserved.
A model in xLights defines the entire required characteristic about a single physical element of your display. Typically it will represent a common item such as an arch, a matrix, a straight line, flood light as well as more esoteric and custom made items such as singing trees, candy canes, a snowman etc.
It defines the type of lights(RGB, Single Channel, etc), the number of channels, and other characteristics required to render the sequence data. When a model is defined, it is retained in the xLights configuration "xlights_rgbeffects.xml" file in the show directory. It can be reused for all subsequent sequences.
A model is made up of one or more strands, and each strand is made up of one or more nodes.
At the top of the layout screen is a row of Model icons. If you hover the cursor on each icon, the model name will be displayed. The model icons represent an Arch, Candy Cane, Circle, Custom model, Icicles Matrix, Single Line, Spinner, Star, Tree, Window Frame, Wreath and Import Custom. The last icon labelled ‘Import’ Custom enables you to import and create a custom model that has been exported from another sequence.
To define a new Model, click on the Model icon that you wish to create once. The model icon will have a dark blue square around it. Then with your mouse left button click on the layout canvas , and keep your mouse button still held down. The model shape will appear on the canvas in yellow. If it does not , then left click on the canvas and drag slightly. At the same time , a model is created and displayed in the Model panel that is normally to the left of the Layout screen.
Depending on the type of model, it will either be bounded by four, three points or two points.
In this image, the Candy canes have three points. The bottom left is green and marks the beginning of the model, the bottom right is blue and marks the end of the model and the top center is blue and is used to rotate the model.
If you cannot locate your model after it has been created, click on the model name in the panel and the model image will be highlighted.
Note that the Preview window has the ‘Default’ preview displayed - indicating that the model that is being created will be assigned to and displayed on the default House Preview window.
By clicking and holding in the center of the model - you can drag the model to the required position. You can also use the three points to size the model on the layout.
When the model is aligned horizontally, a red horizontal line will be displayed.
When the model is aligned vertically, a blue vertical line will be displayed.
In this image, the Single Line model has two points. The bottom left is green and marks the beginning of the model, the bottom right is blue and marks the end of the model. The red superimposed red line indicates horizontal alignment.
If you double click on the Single Line model icon (instead of using a single click) , then you can draw a single line (say as part of the roof line), then click on the layout again and draw another segment from the end of the first segment - this will create another model and so on. Or you can use this technique to draw multiple arches at the same time. Click on the model icon again to deselect it.
Both of the above examples have alternate ways of being implemented (using the Poly Line model or using the ‘# of Arches ‘ attribute’ in the model definition of the Arch model.
On the left of the layout canvas is a window which displays the name of the model that has just been created and the settings of the model.
These are default values and you can then edit the values to suit your requirements - (change the name, start channel , number of nodes etc).
Click on the Preview attribute and change the Preview window if you so require. Set it to ’Unassigned’ if the model is not to be displayed in the House Preview window.
You can collapse or expand any of the windows of the model characteristics.
If you hover on a model name, it will display details of the setup configuration such as the names and channel assignments the model maps to on your controller setup.
If a Model group name is selected when you create a model , the model will automatically be assigned to the selected Model Group.
To delete a model, highlight the model on the Layout canvas and press the Delete key or press Ctrl X. You can hold down the cursor and drag to form a rectangle around the model and then delete.
You can also Right Click on the Model name in the Model list panel. A ‘Delete’ pop up window will be displayed. Click on it to confirm and delete the model.
You can also use the Undo function i.e Ctrl-Z to remove the model that has just been added or undo the last model movement. The Undo function can be repeated.
You can select the model image on the canvas, press Ctrl-C to copy and then Ctrl-V to paste. A new model instance will be created. You can also double-click on the Model icon that you wish to create. The model icon will have a grey/light blue square around it. Then with your mouse left button click on the layout canvas. The model shape will appear on the canvas (surrounded by five blue squares). A left click on the canvas again at the required location will create another instance of the model. And so on. To end the process, click on any of the model icons once.
A model (name) can be renamed by simply changing the Model name.
If the model is already part of a Model group, you should update the Model Group definition. If you don’t then xLights will subsequently provide an option to delete or select the new model name when the application is loaded again.
Details of a model configuration can be amended by updating the details in the relevant section of the model definition. Save the changes.
Once a model has been defined, a quick way to duplicate definitions is to select the model in the Layout window, then use a Ctrl-C to copy it and a Ctrl V to paste it. Save the changes.
If the ‘Overlap checks enabled’ attribute is selected, when you click on the model name in the list, it will turn yellow in the layout display to the right. If there is a channel overlap with any other model, then the other model will turn red.
The Right Click Menu has some entries that don't apply to individual models and they will not be covered in this section.
Resets the Current Window View to the default.
This will resize the model so the number of node in the vertical and horizontal direction are equally spaced.
The node layout window is then displayed. The s1, s2, etc. represent the string numbers, the n1,n2,n3,etc represent the node count.
Lock a model in place to prevent it from being moved. The Model handles will appear red when a model is locked.
Unlock a model so a model can be moved.
Create a Custom Model file from a built in Model Type. Use only if you wire your model in a non support format and a built in type will not work.
Displays a view of how to wire your model based on the Model properties. This can be saved or printed by right clicking on the dialog.
By default the Wiring View is set to the backside or reverse view of the model. To switch to the front side, Select "Front" from the right click menu.
Export a Model as a .xmodel file and save to the local disk.
"Swap" a new model with an existing model and kept the model name. Use this if want to change a model and keep the same name. This will prevent Model Groups and sequences from breaking.
The model settings determine the physical properties of the model or prop. These setting are critical for how xLights determines the render sequence data, start channels, and controller connections.
The name of the model. The Model name can be changed by clicking on the existing name and changing to a new value.
The # of Strings corresponds to the physical number of strings for that model and is generally 1.
Nodes per String denotes the number of nodes/pixels per string. If your model has 2 strings and 50 node per string, the total number of nodes is 100.
Lights per Node denotes the number of physical lights per node. (i.e. for pixel strips with 3 LEDs per controller chip, this would be 3).
Lights per String denotes the number of lights per string. This will be used instead of the Nodes/String and Lights/Node settings.
Location of the first pixel or first channel location. "Green Square" means the starting location is the green square on the layout and "Blue Square" means the starting location is the blue square.
xLights has two systems to define model start channel locations. If the controller dropdown is set to a controller name specified in the controller tab, the start channel will be auto generated based on the Controller Port and Model Chaining settings. This is the preferred method of configuring start channels.
If no controller names appear in the dropdown, double check the Auto Layout Model is enabled in the Controller Tab.
The Start Channel corresponds to the starting channel of the first node for the model. xLights will automatically calculate the end channel based on the model settings.
If the controller dropdown is set to "Use Start Channel", by Default, xLights will "chain" all you models together, this means the start channels will just follow the previously model.
In this example, the Start Channel has been set to start immediately after the ‘Candy Canes-2’ model.
xLights will automatically calculate the start channel and end channels, and if the ‘Candy Canes-2’ model’s channels change, then the start and end channels for this model will automatically be recalculated.
Click the ellipse button (three periods) to edit the start channel.
Model Start Channel can use Absolute, Universe, Start/End of Model or Controller based addressing.
For models with multiple strands or elements, you can specify the start channel for each strand individually if required. This is useful where the channel numbering is not contiguous.
The Preview setting controls whether the model is to appear in the House Preview screen and also which Preview layout screen. Click within the setting to open up a window which lists all the available Previews. If you have created additional Preview layouts, they will be listed in the window.
The ‘Default’ value represents the default preview window.
‘All Previews’ indicates that the Model is to be displayed in all Preview Windows.
‘Unassigned’ indicates that the model will not be displayed as it is not assigned to a Preview window
‘Unassigned’ is sometimes useful where the same physical item has been re-defined using more than one model definition for ease of programming the effects. One of them should have the Preview set to ‘Unassigned’ and the other should not.
The ‘2nd Preview’ is one that has been user created.
There are 4 rules to determine if a model shows up on a Preview.
The model is assigned to the Preview.
The model is assigned to All Previews.
The model is a member of a model group that is assigned to the Preview.
The model is a member of a model group that is assigned to All Previews.
Click the ellipse button (three periods) to edit the Strand / Node Names.
Each strand and node can have a name assigned to it. This is useful where for example you have single channel models that are grouped together (singing faces, tombstones or DMX props etc). On the sequencer, double clicking on the strand reveals the nodes with meaningful names against them.
This setting is used to specify the Faces definition for custom models that support Singing faces.
Click the ellipse button (three periods) to edit the Faces.
Functionality has been covered in the Singing Faces section.
The Dimming Curves setting can be used to change/reduce the brightness of the lights for a specific model. The intensity of the lights is accordingly changed/reduced from its default value of 100%. Use the "Brightness" slider where you can reduce (or increase, but 99% of the time, you reduce) the brightness of the model in the FSEQ. Change the gamma curve of each of the red, blue or green values.
You can select from the options to have a single gamma value or change individual gamma values. You can also select the values from a file, in which case you are prompted for the location of the file.
Color
RGB Values
Orange
R:255 G:37 B:0
Orange
R:255 G:48 B:0
Darker Orange
R:255 G:29 B:0
Hot Pink
R:255 G:0 B:93
Turquoise
R:8 G:255 B:143
Congo Blue
R:33 G:0 B:148
J. Winter Blue
R:0 G:0 B:140
Jade
R:0 G:181 B:165
JAS Green
R:86 G:222 B:0
Med Yellow
R:255 G:247 B:0
Oklahoma Yellow
R:255 G:211 B:0
Bastard Pink
R:255 G:115 B:107
Grass Green
R:0 G:109 B:44
Royal Purple
R:40 G:0 B:123
It helps when all of your LEDs have the same wavelength of colors in them. If one set has a darker red or blue you'll get different colors out of those on the same values.
This setting is used to specify the State definition for custom models. Functionality has been covered in the State Effect section.
This setting is used to specify parts of a model to be controlled as if it were its own model. This is used for example if you have a wire frame with 2 arm positions you then can sub model those and control them without the need for adding a 2nd or 3rd model.
Click the ellipse button (three periods) to edit the Sub-Models
You will find the sub-model listed as parent model name/sub model name. This can be added to groupings and added to sequencing as a stand alone model.
See the Sub-Models Section for more info.
The Controller Connection settings are used for the Upload to Controller Options in the Controller Tab. Port specify which output of the controller is being used by this model. Protocol is the pixel type or serial type. If a serial protocol is set i.e. DMX the Port setting sets which DMX Port is used on the controller. If the Protocol is set to a pixel protocol i.e. ws2811 the Port setting sets which pixel output is used on the controller board. The additional settings(Null Pixels, Brightness, Gamma, Color Order, etc) will override the setting in the controller if checked. Not all controllers support all settings and some controllers only support one setting per controller port.
Upload to Controller is covered under controller tab.
The String Type enables you to set or change the ‘RGB’ orientation of your nodes.
The first six options in the list below are used for Pixels - these can also be set in the hardware controller. Dumb pixels are set to either 3 Channel RGB or 4 channel RGB and single “A/C” or store bought fairy lights are set to single channel.
RGB Nodes
3 Color Pixel Strings. Standard WS2811 Bullet Type Pixels
3 Channels per Node(Pixel)
Node Single Color
Single Color Pixel Strings
1 Channels per Node(Pixel)
3 Channel RGB
3 Channel 'Dumb' RGB Pixel Strings or RGB Flood Lights
4 Channels per String
4 Channel RGBW/WRGB
4 Channel 'Dumb' RGB Pixel String or RGBW Flood Lights
4 Channels per String
Strobes
Single Channel Strobe Bulb, Flashes every 7th frame of sequence
1 Channels per String
Single Color
Single Color String of Lights, Ex: LED/Incandescent Strings. String will responds to that color in the Sequencer.
1 Channels per String
Single Color Intensity
Single Stand String of Lights, Ex: LED/Incandescent Strings. String will responds to ANY color in the Sequencer.
1 Channels per String
Superstring
Multiple Single Color String of Lights. Strings will responds to the colors in the Sequencer.
Number of Colors * 1 Channels per String
WRGB Nodes
RGB and White Color Pixels
4 Channels per Node(Pixel)
RGBWW Nodes
RGB, Cool White, Warm White Color Pixels
5 Channels per Node(Pixel)
The Color setting is used for Single Color/Node Single Color String types to define which color the string responds to. If set to White , then only when the White is on, on the sequence , will it light. If set to say Red , then it will light if Red is on (which is 255,0,0) or if White is on (because White sets 255,255,255 on).
If the RGB color values are all equal ( R == B == G ), the White Channel is used and the RGB are disabled.
If the RGB color channels are used and the White Channel is disabled.
If the White channel are used and the RGB color Channels is disabled.
The Hue value of the RGB color is calculated for the White Channel values RGB Channel is darkened to compensate for the white color value.
If the RGB color values are all equal ( R == B == G ), the White Channel is used and the RGB Channel also output the color data.
The Appearance setting is used to determine how a particular element is displayed when viewed in the Layout, House Preview and Model windows. By increasing the Pixel Size, the appearance of the element (a flood or any other small element) can be made to display a bigger size. The Transparency and Black Transparency values can be used to adjust how opaque or transparent the element is on the display. If the Active option is unchecked the model will not be shown in the layout screen.
Tag Color adds at color indicator before the model name in the sequence tab.
The size/location settings describes where on the Layout screen a model has been place, and its relative size to the model grid. XYZ are the center point of the model. ScaleXYZ determine the size of the model. If a model is locked it cannot be moved. Locked models will have red handles in the layout window.
These values "auto adjusts" as you move or change the size and orientation of the model image and normally does not have to be manually set or adjusted. Model can be locked and unlocked with the right click menu.
In the event that the model has ‘disappeared’ from the screen or has shrunk or is hidden behind another model, then adjusting these values to a larger value can help to locate the model after which the model image can be adjusted as usual.
xLights enables you to define models that do not fit into the concept of predesigned common shapes. For example, a snowman outline, reindeer outline, a singing face, etc. In order to define such a model: Create a new model by selecting the Create new Custom Model icon. Select an area on the Layout screen and drag the mouse across. Note that there won't be anything displayed in the box as the custom model layout has not yet been defined. A new Custom Model will be created with an initial model name of ‘Custom’ or similar. You can rename it to something more suitable. Click within the Model Data box to enter the Custom Model setup window.
A custom model grid will be displayed in which you enter numbers in the grid representing the nodes/channels in your model.
Change the width and height values to increase the size of the grid to fit the layout.
The depth is used to make a 3D custom model. Future edits to the manual will elaborate on 3D models.
The Right Click Menu Allows you to Flip, Rotate, Compress, Trim Unusued Space, and Shrink Space.
For example, to model a custom candy cane with 12 nodes, you could have a grid 4 columns wide and 10 rows high. Place the numbers 1-9 up the right hand side, 10 and 11 in the middle cells in the top row and 12 would go in column A row 2. This is shown below.
There is no undo button, If you mess up your model. Click the Cancel button and none of your changes will be saved.
Click on the Wiring View Button to open a window which will display the nodes and wires as they would be installed in the actual model, based on the layout entered in the grid. Note that the wiring view is shown from the reverse view (back side of the model) below. This is the view as if the pixels are being pushed in from the backside. Right clicking on the wiring view will provide options for changing the background color, font side, and viewing from the front or backside, as well as a few others.
The Right Click on the Custom Menu grid gives options to Flip, Rotate, Compress, Trim Unusued Space, and Shrink Space.
Click on the Horizontal Flip or Vertical Flip buttons to shift the nodes in the grid horizontally or vertically, which will also change the output of the Wiring View if selected.
The following image is an example of a Singing Face custom model on a 50 by 50 grid.
To erase a number in a cell, selected the cell and press the Delete key.
You can delete multiple cells by drawing a box around them and then pressing Delete.
You can use the ‘+’ and ‘-‘ keys to make zoom in and out, respectively.
Click OK to save the model.
From the Layout screen, click on the custom model icon and drag and draw a custom model, as described above. Click on the ... button at the far right of the Background Image Row. A window will open to prompt for the location of an image file. Browse to and select the image.
Alternatively, open the Model Data window to open the Custom Model Window and select the file using the Browse button.
Click on the Model Data attribute. This will open up a window with the image in the background which will fill the grid size. Adjust the size of the grid by increasing the width and height values. Click on the ‘+’ and ‘-’ buttons to Zoom in and out of the grid.
The Background image slider can be used to adjust the brightness of the background so that the image is just visible. This will enable you to more easily see the numbers on the image and around the outline. Slide to the left for 100% brightness and to the right for 0% brightness. The magnifying glass at the right side of the slider will toggle the image on and off.
You can then start typing the numbers in the positions that the pixels would be located. In this example, it would be around the edges of the snowman and hat.
To erase a number in a cell, selected the cell and press the Delete key.
You can delete multiple cells by drawing a box around them and then pressing Delete.
If you select the Auto Numbering setting to be active, the channel number that is shown in the Channel number box will be added at any cells selected.
If the Auto Increment setting is set to be active, then after each selection, the number is automatically incremented. This is typically the case for smart strings of pixels.
The Channel number in the Channel Number box can be adjusted at any time to control what number is used. This is useful if an cell is accidentally selected.
Click on OK to return to the layout screen at any time to view the Custom Model that has been created.
To edit the custom model, select the Model Data the same as was done with the initial setup. This can be done at any time to edit the model.
Run Check Sequence to indicate if any Custom Models have skipped node numbers.
A custom model can be exported so that it can be shared with others, used in different layout, or for adding additional copies of the model to this layout.
To export a Custom Model, select the model and right click. Select Export xLights Model.
You will be prompted to specify a location and filename. Enter the filename click on Save. Note that the xLights custom models use a ".xmodel" file extension.
The export process includes the faces and state definitions, as well as custom models, so these don’t need to be redefined when imported.
This function enables you to create a custom model from a previously exported custom model file (xmodel). This can be previously created by you or shared from another user or vendor.
Click on the ‘Create new Custom model’ icon and then click on the canvas where the new custom model is to be located. You will be prompted for the name and location of the custom model file (xmodel) to import.
Select the file name and a model will be created using information from the custom model file. The model name or other attributes can be edited as needed.
The model will be located at the point selected, and can be resized or moved using the blue connectors similar to any other model.
The Controller Visualizer allows the user to drag and drop models onto the controller ports. All model setting are update and saved in real time. If the "Auto Layout Models" option is disabled for the controller, this dialog will only allow the user view the model port connections set in the layout tab.
Hover over a model to display its current settings.
The Box Size and Font Size sliders will change the size of the drag and drop boxes and font size.
The Status Message Box will display errors that are found in the current controller configuration. If an error is displayed, xLights will not upload the controller configuration.
To add a model, Drag a model from the right model list to the desired controller port on the left.
If adding a model to a controller port and the wrong number of ports are used, adjust the model string count in the Layout Tab.
To remove a model, drag a it from the controller port list on the right to the model list on the left.
Prints the controller model layout of the Visualizer Screen.
Saves controller model layout to a CSV file for editing.
Removal all the models from all the controller ports.
Change the physical number of strings i.e controller ports a model consumes. When used, xLights will attempt to adjust the Nodes Per String and Stands per String to preserve the original total pixel count of the model. Only works with Tree/Matrix/Custom Models.
Set the Smart Receiver ID for Falcon/Kulp/FPP/HinksPix Controllers. None is used for "Dumb" or normal receivers.
Set the Type of Smart Receiver. V1 "White" Receivers are "falconv1", "Blue" or "Black" Receivers are "falconv2" or "fppv2".
When enable, this will change the string order to proceed down the daisy chained receivers on the current "chain" of remotes. This is needed for controllers that don't support 'Virtual Strings' like the HinksPix Pro.
This allow multi-string models to use multiple smart receivers daisy chained together. When Cascade Remotes is set to 4, xLights will assign strings to 4 smart receivers chained together.
Smart Receivers will display as different colors if set. Green is 'A', Purple is 'B', Orange is 'C', and Light Blue is 'D'. The colors will repeat after 'D', Green is 'E', etc.
Set the Model Brightness.
Clear the Model Brightness.
Set the Controller Port Protocol.
Removal all the models from the selected controller port.
Move all models from the currently selected port to another port.
The ‘# Arches’ value can be set to the number of arches that the model represents (normally one). Similarly you can set the nodes per arch and lights per node (normally 1). The Arc Degrees determines the portion of a circle's circumference the arches use. 180 degrees mean the arch is half the circumference of a circle and 90 would be one forth circumference of a circle. The Arch Tilt will tilt the arches "hops" left or right. This is useful for arches on a incline.
The example above will contain two arches of 25 pixels each, for a total of 50 pixels. Each pixel contains 3 LED per pixel so there are 3 lights per node.
With Layered Arch enabled, a multi layered arch will be created. The Layers attribute value describe the concentric arches in the model. This will create node count settings for each layer. The sum of the node counts must add up to the number of nodes in the model. 'Hollow %' will set the space "under" the arch.
The xLights Show Directory is where all the required xLights sequences, pictures, and user configuration files used to run the sequences are kept. When a sequence (.xsq) is saved and a binary file (.fseq) rendered, both files are created in the show directory. This is the same location where xLights configuration files can be found and the default location where the program will first prompt for, or look for files pertaining to several functions of xLights.
Specifying or changing the location of the Show directories can be done by clicking on the Change button found on the Controller tab screen.
It is useful to have separate show directories for each major event i.e. one for Halloween, one for Christmas or one for the next year. Start a new year directory by copying sequences from the Show Directory of the previous year.
Keep the folder name, containing the 'xlights_rgbeffects.xml' file the same when creating a new show folder. Create the new folders in the lower level directory and xlights will automatic adjust file paths. As an example, use "2018/Christmas" then "2019/Christmas" (the last sub folder folder is the same) instead of "Christmas/2018" and "Christmas/2019".
Images used for pictures and faces use an absolute location reference. If you are not using the suggested structure, then the location won’t be found if you change your show directory.
In some cases if you copy your show directory to another location or drive xLights may still be able to successfully locate image files despite the absolute reference (in the case where the the last sub folder of the location has the same name).
If you have a show folder c:\show and you move it to e:\xxx\yyy\show it will seamlessly work as long as all the files your sequence needs are in the show folder or one of its subdirectories. Anything located elsewhere will not be seamlessly moved but if they are still there they will be used.
This is useful if you are moving your setup to a USB drive or Dropbox. If however you move it to c:\show_old and try to set that as the show directory, then the files won't be referenced.
The "Change Permanently" button will allow the user to specify the location of the their primary show directory on disk. This show directory location will be remembered when xLights is closed and reopened.
The "Change Temporarily" button will allow the user to temporary switch show directories. The show directory path name will turn the color yellow to signify a temporary show directory is being used. When xLights is closed and reopened, this "temporary" show directory will be forgotten and xLights will resume use of the "Permanent" Show directory. The "Restore to Permanent" button will also switch back to the "Permanent" Show directory. The "temporary" show directory should be used when importing a sequence.
The Channel Block can be used to define an arbitrary amount of channels. It can be used to 'model' generic channel to be used or AC Lights, relays, smoke machines, etc.
Number(#) of Channels defines the size of the channel block. These Individual channels can then be used to control specific channels on a device or controller.
Channel Color determines what color in the sequencer will "activate" this channel block channel. If set to 'White' all three RGB channel values will be use to set the output channel value. If set to 'Red' only the Red channel values will be use to set the output channel value.
The # of Strings corresponds to the physical number of strings for that model. This should match the number of controller ports you plan to use.
The Nodes per String or Lights per String represents the physical number of light nodes, bulbs or pixels in each string. If the # of Strings is set to 2 and the Nodes per String is 100, the model will contain 200 total nodes.
The Center % is used to indicate how much area the empty area of the circle occupies. Decreasing it will drop the circles inwards and increasing it will push the circles outwards.
The Layers attribute value describe the concentric rings in the circle. This will create node count settings for each layer. The sum of the node counts must add up to the number of nodes in the model.
The default starting pixel is at the bottom of the circle, go clockwise on the outside ring and then the next inner ring wired and so on. The Starting Location can be changed to start at the top of circle, or start on the inter ring or run counterclockwise if needed.
Ethernet Controller type is used to define a E1.31, Artnet, DDP or ZCPP controller. The controller will be attached to the PC thought the ethernet or Wifi interface.
Click the Add Ethernet button to add a new Ethernet controller. Select a row to highlight the controller and change the settings.
(ArtNet/E1.31) When enabled, Multicast will send Ethernet data to all subscribed Ethernet controller on the network. IP address is not needed when enabled.
Sets the IP Address of the Ethernet controller. The host name can also be entered in this field.
(ZCPP/E1.31) Priority is supported by some controllers and is used to determine which data packet to use is multiple packets are received controlling the same channels.
(ArtNet/E1.31) This sets what is the first universe for the controller to listen for data on. Can be any value from 1 to 63999. It is recommend to not overlap universe between controllers.
(ArtNet/E1.31) The number of universe sets the number of channels allocated for the controller. This is multiplied by the universe size to get the total channels. If using Auto Size this will be grayed out and set automatically.
(ArtNet/E1.31) The number of channels in each universe will be resizes to match the number of channel in each string of a model. This will align the Model's string channels with the universes. This is needed for controllers that don't support 'virtual strings' and require data in a fixed structure. The option is only available when 'Auto Layout' is enabled. It is needed for the HinksPix Controllers.
(ArtNet/E1.31) This sets the number of channel per universe. Universe can be any size up to 512 channels. Some controllers require a size of 510 or 512. 510 is recommended.
(ArtNet/E1.31) When Enabled, this allows the user to manually set each universe size independent of each other. Not recommended.
(DDP) The number of channels sent in each packet, this should be left to the default of 1440.
(DDP) If checked absolute channel numbers will be sent, this sends the channel numbers to the controller. If unchecked the first channel sent to the DDP controller will be channel 1. Enabled is recommended.
(ZCPP/DDP) Channels is the total number of channels that the controller is using. If using Auto Size this will be grayed out and set automatically.
If Auto Layout Models is enabled in the Controller Tab, xLights will automatically calculate the Model Start and End Channels based on the controller settings.
First Set the Controller the model will be connecting to.
Then Set the Controller Port
If assigning multiple models to one controller port you must set the model chaining to determine the order of the models on the controller output.
First Change the Controller Dropdown to "Use Start Channels" in the model settings.
Click within the Start Channel cell and then click on the highlighted box to open up The Start Chanel Window.
The 'Offset From' determines how the start address is calculated. If the offset is set to "None" the start channel is then used to define the absolute channel number.
However it is possible to use other definition setups:
If you select the ‘Universe Number’ option, the start channel for the model is calculated based on the “start channel” that is offset from this ‘Universe Number’.
If you have one controller setup on your controller tab with universes 10 through 14, all with 510 channels, for the model set as Start Channel “1”, From Universe “11”, its real absolute start channel in the FSEQ would be channel 511 (first channel of the Universe 11).
The “ANY” value indicates that the Universe is not specific to an IP address and therefore xLights searches for the universe number. (This is the recomended setting to use)
You can specify a specific IP address if you wish - in the unusual event that you have the same universes on different controllers on different IP addresses.
The start channel value can also be specified relative to other channels using the End of Model or Start of Model options. You can specify an offset from an output number or select the start channel to start from the end of another model or align with the start of another model (in the last two scenarios, the model name is to be selected from a drop down box).
This options works well if your models are reasonably static as the channel numbers are automatically calculated. If however, you delete models then it can break the chain . xLights will alert you to this , but the popup dialogs could be tricky to navigate through.
The ‘Controller’ option, uses the controller name to determine the start channel for the model. It is calculated based on the “start channel” that is offset from the Controller Start Channel in the Controller Tab. This option works well for P5 or P10 Panels running of a FPP controller.
The Cube model is a 3D model that is used to model objects like Pixel/Peace Stakes, Boxes, or Grids. While the model is 3D, xLights renders the effects in 2D.
All the wiring for each layer will start in the same location. Bottom Left in the example above.
The layout tab displays a full preview of your show and provides a view of how all the models will appear. In addition you can :
Define new Models or change existing Model definitions.
Define new Model Groups or change existing Model Group definitions.
Select which Models, or Model Groups are be displayed on the Layout.
Select and adjust the layout background.
Specify, position and adjust the model size, orientation and location on the layout.
Check whether any models have overlapping channels.
Review or change the detailed characteristics of a model’s attributes
Create Additional Preview layout windows
Assign Models to one or more Preview Layouts
Assign Models to Specific Controller Connection
Assign the Model Start Channels
To copy a custom model generated in Excel, copy the cells in Excel, select Column A, Row 1 in the custom model grid, and then click on the paste icon.
Protocol
Description
ArtNet
ArtNet is a protocol for sending DMX512 data over Ethernet or Wifi. Similar to E1.31, ArtNet group channels into Universes. ArtNet is upported by most ethernet based controllers.
DDP
Distributed Display Protocol is a high efficiency data protocol. It is more efficiency than ArtNET or E.131. Currently, this protocol is not supported by all Ethernet based controllers. Supported on FPP/Kulp, HinksPix, Falcon v3/v4/v5, WLED, Genius, and Minleon.
E1.31
E1.31 (also called Streaming ACN or sACN) is a protocol for sending DMX512 data over Ethernet or Wifi. Channels of are grouped into blocks of channels called, Universes. Universes are can be any size up to 512 channels. Universe Size of 510 or 512 are supported by most devices. E1.31 is an industry standard and supported by most ethernet controllers.
OPC
Open Pixel Control is a protocol for controlling DIY Pixel Controllers. Used by some DIY Arduino/Raspberry controllers.
ZCPP
Zero Configuration Pixel Protocol is a high efficiency specific data protocol with build in configuration data for the controller outputs. It was designed to automatically configure the controller outputs in real time. It is more efficiency than ArtNET or E.131. Currently, this protocol is only supported by Falcons based controllers.
Starting Location
Determines the starting of the pixel string wiring.
Direction
Direction of the wiring and how it "snakes" though the nodes. Horizontal proceeds left and right based on the front perspective. Vertical will go up and down. Stacked will wire each layer then move to the next layer. See below for examples
Stand Style
Zig Zag - Wiring winds back and forth.
No Zig Zag - Wiring follows the direction and starts back at the beginning of the next line.
Alternate Pixel - Wiring 'jumps' over every other node to and winds back thought populating the 'jumped' nodes.
Layers All Start in Same Place
All the wiring for each layer will start in the same location.
Width
Width of Cube
Height
Height of Cube
Depth
Depth of Cube
Strings
Number of Physical Strings of Pixels or Lights
Model Setup:
Define most of the parameters the way you would for the existing moving head 3D model
Use the "Orient to Zero" parameters to get the pan/tilt positions in layout to make the head look like it does when its commanded to 0 which is usually the bootup position.
We want to define a Common starting position with the head point Up and facing Forward. All commands will be relative to that starting position I call the "Home" position. So we have a Zero position and a Home position.
You define the Zero position by viewing the layout and you define the Home position by creating a blank sequence and dropping a Moving Head Effect on the head. Click the center of the position grid so that it will latch a Pan=0 Tilt=0 command into the heads settings. If the head is not pointing Up and Forward then you need to adjust the degrees in the Orient Forward and Orient Up parameters for the pan/tilt motors. Just change the settings and come back and click on the effect to see it change. If you use an old school effect to position the head you should see how it points to the Zero position when commanded to Zero whereas the Moving Head Effect should apply the Home position offset.
Parameters:
Fixture: You need to set the fixture position for each head MH1 through MH8. This teaches xLights where each head is positioned so that when you tell it to do a Fan it know how to space out the heads. You can assign more than one head to a position if desired.
PanMotor: Channel (Coarse): Required.....define the main pan channel Channel (Fine): For 16 bit heads. The Fine channel is optional and can be set to 0 to disable. Min Limit (deg): Limit how many degrees the head will pan to the left starting from facing forward Max Limit (deg): Limit how many degrees the head will pan to the right starting from facing forward Range of Motion: How many total degrees does the head pan when commanded from 0 to 255 Orient to Zero: Number of degrees to spin the head so it matches the position when commanded to 0 Orient Forward: Number of degrees to spin the head from its Zero position so it faces forward Slew Limit (deg/sec): Number of degrees your head can move per second to try to make the screen match reality Reverse: Check this box if your head moves counter-clockwise when commanded from 0 to 255 Upside Down: Check this box if you head is mounted inverted
TiltMotor: Channel (Coarse): Required.....define the main tilt channel Channel (Fine): For 16 bit heads. The Fine channel is optional and can be set to 0 to disable. Min Limit (deg): Limit how many degrees the head will tilt backwards from facing up Max Limit (deg): Limit how many degrees the head will tilt forwards from facing up Range of Motion: How many total degrees does the head tilt when commanded from 0 to 255 Orient to Zero: Number of degrees to spin the head so it matches the position when commanded to 0 Orient Up: Number of degrees to spin the head from its Zero position so it faces up Slew Limit (deg/sec): Number of degrees your head can move per second to try to make the screen match reality Reverse: Check this box if your head moves counter-clockwise when commanded from 0 to 255 Upside Down: Check this box if you head is mounted inverted
Most other properties are similar to the previous moving heads
BaseMesh, YokeMesh, HeadMesh: These can be used to change the OBJ objects used to draw the head.
The Poly Line model enables several straight line or curved segments to be drawn as one model (rather than having to draw them as individual models).
This model is useful for the roof line, rafters, fences, etc where the lines are at an angle to each other.
To draw, select this model and drag on the layout as usual. At the end of each segment, click once with the mouse left button, then draw another segment. Left mouse button Click to end the segment.
At the end press the ESC key (after the Click) to deselect the drawing action. You can then grab any of the blue or green pixels and move it around to change the shape of the model image.
The # of Nodes defines the total number of nodes for the entire model, the Lights/Node is normally one and the Starting location can be the Green Square(Left) or Blue Square(Right).
Strings is the number of physical connections i.e ports to the controller.
The drop pattern allows the polyline to be used as icicles, this indicates how the pixels are arranged on each drop and how many.
Alternate Drop Nodes will skip every other hole to allow wiring up and down each icicle and prevent wire splicing.
Enabling the Individual Segments attribute selecting will present the different segments that form the poly line model.
You may end up with some in-between lines you don't want. So then check Indiv Segments and start clicking on each segment line in the property grid. It will highlight each segment as you click on them. Once you get to one of the "in-between" lines you don't want just type in a "0" for segment size and it will disappear from the drawing
You can change the number of nodes in each segment.
You can also name all your line segments.
To add a segment to an existing model, right click on a segment of the poly line model; the segment color will change to red.
Then select Add Point and a point will be added to the segment. The number of segments will increase by one. You can then work with the new segment and change the number of nodes via the panel.
If you Right click on a segment, the segment color will change to red.
You can then modify the straight line segment into a curved segment by selecting Define Curve. Grab one edge of the segment and drag it in the direction that you want the line to curve. Then select the other end of the segment and drag it in the direction you want to form a curve. Note the pink dots that denote the end of the curve that you are working with.
Click on the curved line and two straight red bars will be displayed from either end. You can then grab the end of the bar and drag it in any direction to stretch or move the curve.
The # of Strings would normally be 1.
The Lights per String represents the physical number of light nodes, bulbs or pixels.
You can drag the green or top blue pixel to hang the icicles at an angle and then drag the lower blue pixel to cause the drop to sheer and hand vertically shear.
The drop pattern indicates how the pixels are arranged on each drop and how many.
So, if the total lights on the string is 80 and the drop pattern is 3,4,5,4, this indicates that the first drop has 3 nodes, the next 4 , then 5 then 4.
This pattern is then repeated until 80 nodes have been accounted for.
Alternate Nodes will skip every other hole to allow wiring up and down each icicle and prevent wire splicing.
The direction can be defined as horizontal (the most common) or vertical. The ‘# Strings’ refers to the number of controller connections of the matrix. The Nodes/String refers to the number of nodes in each string. The 'Strands/String' is the number of 'rows' or zigzags per string. With AC lights ‘# Strings’ is the number of channels the Lights/string is the lights per string.
The starting location indicates where the matrix is connected to the controller (or where channel 1 of the matrix is).
Above is an example of a horizontal matrix with 16 rows and 50 pixels per row.
If the Strands/String is set to '2' it will add a zigzag and there will be 32 rows with 25 pixels per row.
Alternate Nodes will "hop" every other node down and back to have the string start and stop at the same location.
The ‘# Strings’ is almost always set to 1 .
The Nodes / String indicates how many nodes the string has and the Starting Location indicates whether it runs from left to right or vice versa.
In this example, the single strand model has ten nodes and starts at channel 7240. It runs from left to right.
In the case if you have a vertical setup , then the first channel should match the node connected to the controller or end of the previous model.
Accordingly change the orientation of the model to match that. You can however, reverse the orientation in many hardware controllers as well.
The Image Model is used to represent single channel props like blow-molds, inflatables or incandescent cutouts/wire-frames. You load a picture of the prop and xLights will illuminate the picture based on the channel value. The Off brightness can be set to a value above zero(10% in the example) so it is still visible in the layout when the channel is off. This Model only works with Single Channel or Single Channel Intensity string types not RGB lights or pixels.
The # Strings is normally set to 1 and the Lights/String denotes the total number of nodes on the model. The # of Points describes the points of the star and the startling location indicates where the first node is and which direction it progressive.
Starting Location is where the string start location is set to begin.
Outer to Inner Ratio describes the "wideness" of star points.
The Layers attribute value describe the concentric layers in the star. This will create node count settings for each layer. The sum of the node counts must add up to the number of nodes in the model.
Options/Settings
Description
Degrees
Degrees of Sphere Enclosure
360 - Full Sphere
180 - Half Sphere
Southern Latitude
Distance from the nodes to the bottom pole
Northern Latitude
Distance from the nodes to the top pole
# Strings
The # of Strings corresponds to the physical number of strings for the model.
Nodes/String
The Nodes/String represents the physical number of light nodes, bulbs or pixels per string.
Strands/String
Number of "Folds" per string. 1 has no folds. 2 has one zig-zag/fold.
The number of Strings is normally set to 1.
The Arms/String represents the number of Spokes and the Lights/Arm represents the number of nodes on each arm.
The Hollow % is used to control the gap at the base (ie center) of the spinner model.
The Arc can be used to denote whether the model is a 360 degrees spinner or say a 180 (sem circular spinner) or anything in between.
The Starting Location, besides indicating which is the first channel of the model, is also used to denote how it is wired. There are 6 definitions supported (wired from the center, wired from the outside, alternate first/last node and for either whether the nodes move clockwise or counterclockwise ).
When wired from the centre, the starting location must be as indicated with the red rectangle and the pixel direction is outwards on all arms.
When wired at the edge, the starting location must be as indicated with the green rectangle and the pixel direction is inwards on all arms.
The zig zag attribute is to be selected if the wiring is say - inwards on one arm and then outwards on the next and then inwards etc or outwards on one arm and then inwards on the next and then outwards etc.
The DMX model has a number of different styles and each has a different model representation.
After selecting the DMX Mode, a list of Sub Types will display.
Used to define any generic DMX Fixture. Can be used for 3/4 Channel RGBW lights or devices like Fog or smoke machines.
Used for multichannel Flood lights. The Single Line Model can all be used for DMX Floodlights.
For DMX Moving Heads. Supports Shutter control, RGBW channels, Color Wheel, etc.
Induvial Servo Control, Supports 16 bit servos.
For Skulls with servos embedded in them. Skulltronix Skulls are also supported.
DMX Style
Moving Head Display Style: Moving Head Top, Moving Head Side, Moving Head Bars, Moving Head Top Bars, Moving Head Side Bars, Moving Head 3D
# of Channels
Defines how many channels the model uses
Number of Preset
Set the Number of Preset DMX Presets. These define presets are values that are assigned to a Channel when rendering non DMX effects.
Pan Attributes
Set the Pan Channel, Orientation, Rotation
Tilt Attributes
Set the Tilt Channel, Orientation, Rotation
Color Type
RGBW is 4 individual color channels. Color Wheel uses one channel for the color wheel and one for brightness.
Shutter Attributes
Set the Shutter Channel, Open Threshold, and On Value. 'Open Threshold' is the DMX value when the shutter will open and the light will be visible. 'On Value' is a fixed value the shutter channel will be once enabled, '0' will disable it.
Due to the Custom Render Styles of DMX model it is recommended to use Per Model Default render style when added effects to a group of DMX Models
After Selecting the Import Model Button, You must click on the layout preview and drag out a box and release, to represent the imported model location.
Then select the local .xmodel file with the File Select Window
The imported model will be the same model type it was exported as. If the .xmodel file contains a custom Model, the imported model will also be a custom model.
After Selecting the Download Model button, You must click and drag out a box and release on the layout screen to represent the downloaded model location.
The Model Dialog will appear where you can select the desired model you would like to insert.
Click Insert and Model will be added to your layout.
Models for supported built in model types like trees, stars, wreaths(circle model) will NOT appear in the download model dialog.
If a model is incorrect or missing please contact the specific vendor.
The Model Download Dialog is populated by Vendors that support the xLights project. Encourage your specific vendor to support the project if they want their models to be included.
This model is used to represent window frames and door outlines. The # Lights Top is the number of light across the top of the window frame. The # Lights Left/Right is the number of lights per side. xLight will assume the sides are the same length and use this number for both sides. The # Lights Bottom is the number of light across the bottom. This can be set to zero for Door Frames. Direction specified the wiring direction. Starting Location is the location of the first node.
Double check the node layout and wiring view to verify your Window Frame definition matches your model. Depending on number of lights per side and the Direction/Starting Location the wiring can change.
A Model Group defines a collection of models. It is an optional entity, but very useful, in that many effects can be sequenced against the Model Group and xLights will then generate effects on all the Models in the group.
A Model can belong to more than one Model Group. An an example a model ‘Arch1’ can belong to the ‘All Models Group’ Model group as well as the ‘Arches Group’
You can also have models that do not belong to a Model Group - for example a matrix that you wish to sequence effects on separately such that dropping an effect on the” All Models” group does not affect the matrix.
To create a Model Group, from the layout tab right click within the Model list window. Click on Add Group, enter a Model Group name in the resultant window and click Ok.
In the layout windows, a Model Group can be added by highlight multiple models, right click, and select 'Create Group'.
In xLights, Model Groups are sequenced against an internal grid representation.
The Default Layout Mode and Max Grid Size provides options on how the ‘internal grid’ is to be calculated when effects run across a model group.
If ‘Grid as per preview’ is selected , then the buffer used will be exactly as to how the the house preview appears i.e will be quite large.
If ‘Minimal Grid’ is selected then the buffer area will be an area just surrounding the model group.
Select minimal grid wherever you can. Large grid sizes can significantly slow down rendering, particularly on some effects like fan and shockwave.
To modify the models that form part of a group, click on the group name.
The models that are currently in the group will be displayed in the ‘Models in Group’ right list and the other models will be displayed in the ‘Add to Group’ left list. Use the arrows to add or remove models as required and click on the Save when done.
The order of the models in the ‘Models in Group’ determines the render order of the Group Render Styles. 'Per Model' group render styles are rendered in model order top to bottom.
To remove a Model Group, select the Model Group from the model list, right click and select Delete Group. This will not change or remove any of the underlying models, however any effects that have been placed at that group level on the sequencer will be removed and the Model group will be removed from the Layout display if it has been added to that display.
To rename a Model Group, select the Model Group from the same list , right click and select Rename Group. Enter the new name for the Model Group. 'Clone Group' will create a copy of the current group with the same models. 'Delete Empty Groups' will delete Model Group with containing no models.
Selecting a Model Group from the list, sets it as a filter and only that Model Group is active on the layout; as such only models that are part of that group are displayed on the Preview screen. In order to revert back to all the models , Click on the ‘eye’ next to the Model Group name to deselect it.
Create a copy or clone of the currently selected group.
Delete any model group that is empty and contains no models or groups.
It is useful to have a Model Group (say “All Models”) and include all the models for your show and include that model group on the layout tab.
The type of tree can either be Round, Flat, or Ribbon. A Round Tree is "classic" tree with a round style base. A Flat Tree will have a flat base and is intended for trees against a wall. A Ribbon Tree is the same as a flat tree but the top is tapered to a single point. Flat and Ribbon Tree are always 180 degrees.
The Degrees attribute indicates whether the tree is a full (360), half (180) or three quarters (270) tree or any other value. This property is only available for Round Trees.
The # of Strings corresponds to the physical number of strings for that model. Typically an arch or a candy cane will have one string, but models such as a mega tree or a matrix will have many strings. This should match the number of controller ports you plan to use.
The Nodes per String or Lights per String represents the physical number of light nodes, bulbs or pixels in each string of lights. A 8 string tree with 100 Nodes per String would have 800 total lights.
The Strands per String represents the number of "folds" in each string of lights. If the string of lights will go up once and terminate, the Strands per String is 1. If the string will go up once and return to the bottom the Strands per String is 2.
The Spiral Wraps attribute defines many times a strand is wrapped around the tree. 1.0=one full wrap, 2.5 = 2 1/2 wraps from bottom to top. For spiral tree the # of Strings can be set to 1 and then this can be used to "Spiral Wrap" the tree.
The Bottom/Top Ratio determines the angle of the tree strands. A ratio of 6 will have a bottom 6 times larger than the top. A ratio of 1 will create a straight vertical cylinder. This can be used to adjust the cone shape of the tree.
The Starting Location is used to define where the first node starts in a multidimensional model (i.e. a matrix or mega tree). Set to the default value of Bottom Left if running from left to right or Bottom Right if running from right to left.
In this example, a 360 degree Mega Tree visually has 15 strings of 50 pixels on each string, with 2 Strands per String. This will "fold" the strings once causing the tree to be 30 strands wide and have strands of 25 pixels long.
Each string starts from the bottom, goes up to the top of the tree and loops back down. So half the number of physical strings are required.
The first node is in the front bottom left and starts from channel address 9200.
The Background image to the layout section i.e your house/yard can be set or changed via the Background Image setting section.
Click where indicated and browse to and select the background image. Change the file type if required.
Adjust the width, height and brightness attributes to your preference. The width and height depends on your screen size and resolution. If unsure, start with a .jpg or .bmp image with a resolution of around 1100 * 500 and adjust the width and height for the best fit. The ‘fill’ attribute will scale the image to best fit your window. Click on the Save button to save the Layout settings.
In 3D Mode, Meshes/Renders of your house or other object can be added to the Layout. OBJ file type is currently supported. OBJ files normally require a MTL Materials files that also must be put next to the OBJ file. It is recommended to put both files in your show folder and also remove any spaces from the file name.
Click Add OBJ button and Select the Mesh dropdown.
Click the Ellipsis(three dots) Button to select a OBJ file.
Once selected, the OBJ will be displayed in xLights.
In 3D Mode, Grids can be added to help align models. The grids can be rotated and moved to the desired location.
In 3D Mode, Multiple Pictures can be added to the Layout. Images can be placed on the ground and also used as the house backdrop.
Click the Ellipsis(three dots) Button to select a image file.
The file name will appear after a image is selected.
For a single object, you can left click on the object, (it turns yellow) and with the mouse button still held down, drag it around.
To move more than one object around together, press the Control key first and then left click on each object that you want to move as a group (holding down the control key all the time).
Then at the last object, drag to move all the selected objects around together. If you release the Control key at any time, the objects will not move as a group.
Another way is to Hold down shift, draw a box around the models to move, then let go of shift, and hold down alt, then move the group of models.
Select a group of objects, right click and select Align (top, bottom etc) to align the selected objects. Which object should they all align to ?
The object you selected first i.e. which will have the blue dots is the key object that others will align to.
When selecting a group, you can press shift, a box opens and you can drag the mouse around the objects to select the group to align.
There is no Undo for this action of dragging and setting alignment.
You can select which models you wish to see on your Layout Preview. This is done by first selecting the Preview that you want to be active from the Preview selection window.
There are three built in preview options: ‘Default’, ‘All Models’ and ‘Unassigned’. You also have the ability to create new preview windows.
If you only plan on having one preview, which is what most people will have, then this is the one to use.
Select the default ‘Default’ preview which will then display the models where either:
The Preview attribute against the model definition has been set to ‘Default’.
The Model is part of a Model Group where the Preview attribute has been set to ‘Default’.
The Render Buffer is used to generated Effects data onto. For each Model/Group/Submodel, xLights creates a Rectangular Grid to render effects on to. The size of the buffer depends on the model type and settings. 16 strand by 40 pixels Mega Tree will have a 16x40 render buffer.
The Effect is overlaid onto the render buffer to calculate the color data of the individual pixels or lights.
Default Minimal Grid will Draws a 2D grip over the models in the group and attempt to put each pixel in its own box, Up to the Max Grid Size, Normally 400x400.
This setting allows the user to specify parts of a model to be controlled as if it were its own model. For example, you could defined the horizontal and vertical section of a windows frame.
Click Add to create a new submodel. Then add the nodes that will be included in the submodel. On the right side you will see the model and selected nodes will be highlighted.
On the right side, the model will be displayed with the selected nodes highlighted. If the user clicks the row header(Top or Bottom), the display will highlight only the nodes in the selected row. If the user clicks the "Node Ranges" column header, all the nodes from all the rows will be highlighted.
The Node Ranges 'Grid' represents the submodels render buffer. A grid five row high with five nodes listed per row will create a 5x5 Render buffer.
Empty Commas(,) can be used to create empty spaces in the render buffer. The example below will create 5x5 a outline with a 3x3 'hole' in the middle.
Always Press 'Tab' after changing the submodel name or adding nodes to a row. This will guarantee the changes will "stick" and not disappear.
The 'Vertical Buffer Layout' checkbox with rotate the underlining render buffer 90 degrees.
To graphically select the nodes, double click the row header or row cell and select the desired nodes. This option will only populate one row at a time.
Un-check 'Ordered Selection' to enable 'Click and Drag' Mode
To Draw a model, like a Cross, across the whole model click the Draw Model Button.
Click and drag to select nodes(blue highlight). The selected node will turn grey once selected. Double clicking on a node number also toggles between selected and not selected. 'Select All' will select all the nodes. 'Select None' will deselect all the nodes. The 'Ordered Selection' checkbox enables a single select mode that disables 'Click and Drag'(blue highlight) Mode. 'Ordered Selection' is used to select the individual nodes in a specific order to be used by the underlying buffer.
The "From Model" button allows the user to select nodes based on the custom model "shape". For Example, you can import a snowflake model file to overlay it on a matrix.
Hold the 'Ctrl'/'Cmd' Key highlight the cells and press Ctrl+C to copy them. Ctrl+V can then be used to paste the cells. This data can also be copied to and from Excel.
Click Ok to Close the select window.
The SubBuffer tab allows the user to select sections of the buffer instead of the nodes. This can be used to divide mega trees/matrices into slices for singing face or individual effects.
Click The Action Button and Select Generate Slices to automatically generate different size slices.
Vertical Slices will create 'count' number of vertical slices that are equal size.
Delete the currently selected submodel(s).
To select multiple submodel to delete, hold the shirt or ctrl/command key.
Copy the currently selected submodel.
Select Generate Slices to automatically generate Subbuffer style Submodels.
This will flip all the node number rows, top to bottom, bottom to top.
This will flip all the node number row values, left to right, right to left.
This will Shift all the submodels nodes numbering 1->21, 100->120
This will reverse all the submodels nodes numbering. 1->100, 100->1.
This allows the user to 'copy' submodels from another similar model. Example, if multiple mini-trees, are defined in your layout, only create the sub-models on one tree and then use this option to import the sub-models on all the other trees.
This allows the user to 'copy' submodels from a XModel file.
This option will use a custom model file(.xmodel) to create submodels based on X/Y location of the node locations. The height and width of the custom model file must be smaller than the matrix height and width. This will also import the singing face and model state defines.
This exports all the submodel definitions as a CSV file for viewer with Excel or other spreadsheet software.
This generates a Custom Model xModel file of the currently selected submodel.
The top section of the display window is the Timeline section and indicates the scale that the waveform and sequencer is displaying.
You can select an area on the timeline – depicted by the arrows - and you can then play that section once independent of the section highlighted to be played on the waveform. At the end of playing that section, the highlighted arrows disappear, leaving the waveform highlight to be played. Clicking anywhere in the timeline or highlighting an area in the timeline initiates auto play, without losing the waveform selection.
The waveform displays a sonographic representation of the audio portion of the media that has been associated with the sequence.
You can control the focus of the waveform.
Zoom in on the waveform by double clicking on the waveform. Keep double clicking until you've got a zoom setting you can use. Or click on the ‘+’ button.
To zoom out, hold the shift key and double click on the waveform or click on the ‘-‘- button.
Click the edge of an effect, hold down control and use the mouse scroll wheel to go in or out.
Click on the waveform. Then hold down the Shift key and use the scroll key of the mouse to move the waveform and grid left or right.
When playing the sequence, a vertical line indicates the start position and another vertical line extending right through the grid indicates where the audio being played current is
The time counter displays the time from the beginning of the sequence that the current position is up to. The FPS value displays the Frames Per Second that the sequence is outputting the data at.
You can highlight a range on the waveform to play only that section. If you move your cursor on the waveform towards either edge of the highlighted area, a ‘hand’ appears and you can use that to move the edge.
If the Pause button is selected, and then pressed again, the sequence will restart from the current position that it stopped at.
If after a Pause, if the Play button is pressed, then the sequence will restart from the marked ‘start position’.
Clicking on the Stop button will reset the start position to the beginning of the sequence.
After Stop has been pressed the Rewind button will start from the beginning of the sequence and the fast forward button will play from the last component of the sequence.
Highlighting a portion of the waveform will cause only that section to be played. Pressing the spacebar will replay that section.
The ‘Replay’ button will replay the highlighted section of the waveform. It will start from the beginning of the highlighted area and when it reaches the end of the area , will loop back to play from the beginning of that area.
Clicking on an effect in the grid will not alter the waveform area that has been highlighted to be played. The effect becomes the focus point, if you zoom in and out, but the play range does not change. If you do want the start position to move to where your effect is, or to be based on the edit position in the grid, then double click in the grid and that will then remove any highlighted position/area in the waveform and set the start position in line with where you have double clicked.
To scroll Left/ Right, click in the grid. Then hold down the Shift key and use the scroll key of the mouse to move the grid left or right.
Hold the Ctrl key down and placing the mouse on the waveform, click and hold the mouse left button down and and drag it across the waveform.
The audio will be played as you scrub the line. Therefore you can play a small section again and again, backwards and forwards so as to identify a particular note inflection, timing mark or a word of a lyric.
Timeline Tags allow the user to create "bookmarks" or "shortcuts" on timeline numbered 0-9. You can then type CTRL + 0-9 to scroll the timeline to the numbered tag's location. To add a timeline tag right-click on the timeline at the desired timing location and select a number 0-9. Numbers with check-marks already have tags placed on the timeline. You can reuse a tag with a check-mark but the previous location will be overwritten.
To delete a timeline tag Right Click on the timeline and Select Delete and then the number of the tag you want to remove.
The Preview Window displays the available preview windows, enables you to select a different view and also enables you to create additional Preview Layout windows. To create a new Preview Layout, select the <Create New Preview> option from the window.
When would you create an additional Preview layout? If you had a corner block and you wanted to sequence from 2 directions or if you have a really wide block you can split it so everything does not become small, or if you are sequencing multiple houses in your street.
Enter the name for the Preview Layout and click Ok.
The new preview window will be created and the image that has been used for the default Preview will be selected.
Click on the Background Image attributes to browse for and select a different image if required. Otherwise, adjust the fill attribute value and the brightness value.
The image size has to be the same as the default image and as such, it is not available to change. Click on the Save button to save it.
The preview window can now be used to create Models or Model Groups against similar to the Default Preview layout. Models can be reassigned to the different Preview by changing the "Preview" Model Setting.
If you wish to delete the preview , right click within the window and click on the ‘Delete this Preview’ option.
When a Preview is Deleted, All the Models currently assigned to it will become unassigned and need to be reassigned to another preview.
When an additional Preview is created, a ‘Previews’ option to select and open it on your sequencer will be available on the View menu. Click on the preview name to open the Preview window. This option is not available if only the Default preview exists.
The Layer Blending window can be opened by clicking on the Layer Blending icon from the toolbar or via the View , Windows menus.
This will reset the Layer Setting back to default every time you select or create a new effect. Checked is the recommended setting for most users.
The Layer blending settings allows the user to dictate how effects on multiple layers will be merged together for a model/group/submodel.
When setting the layer blending modes, the current layer is considered layer 1 and the layer below is considered layer 2.
Click the Question Mark(?) Button for more Information.
Put two effects on a model and step through each of the layering modes to see what they will look like. Experience is much better than reading about it.
This is not to be confused with the Morph Effect. This is a layering option that can be applied to any two effects.
The morph option of layer blending will magically make effect 1 ‘morph’ into effect 2 during the length of the timing cell that the effects are in. You will not see effect 2 at the beginning of the timing cell, and you will not see effect 1 at the end of the timing cell. Somewhere near the middle you will see the effect 1 ‘morph’ into effect 2.
This will hide the effect for the specified amount of frame and display it when the number of frames is reached. This can be used to "warm up" an effect and hide the undesired beginning frames.
This will pause or stop an effect at the specified frame and hold that frame and display it until the end of the effect.
There are 19 layer blending transition choices. Using the transitions will help you bridge between effects providing a way to smooth out abrupt changes between different effects. A stylistic use would be between sections of a song such as the chorus to verse or verse to verse. Keep in mind that the blending is done within the boundary of the timing mark and does not transition between timing marks.
These transitions are common in the video editing world, and should be visually familiar to anyone who’s used video editing software or anyone who’s watched anything on TV in the past 20 years.
When setting a layer transition, the setting will apply to all future effects placed, so be sure to reset the transition times back to 0 if you do not wish the transition to apply to all future effects.
Transition
Description
Fade
The Effect with gradually disappear or appear.
Wipe
A line travelling from one side of the frame to another will cause the effect to disappear. The adjustment slider sets the starting wipe direction. 0 is from the top, 25 from the left, 50 from the bottom, 75 from the right.
Clock
This uses a circular motion as the hand of a clock from the center of the model to wipe the effect in or out. The adjustment slider sets the starting position and the reverse checkbox allows for a counter clockwise wipe.
From Middle
This is a curtain type wipe either from the middle or towards the middle depending if the effect is placed on the in transition or the out transition. The reverse makes the effect operate in a “to the middle” mode instead of “from the middle”. The adjustment slider will change the angle of the curtain direction.
Square Explode
This transition will draw the effect starting from the middle of the model and expand outwards with square edges until the model is filled. The reverse button starts drawing the effect from the outer edges and filling in towards the middle.
Circle Explode
Same as square explode, except the shape is circular instead of square.
Blinds
This transition is analogous to twisting the wand to open vertical blinds. The adjustment slider determines how many blinds are used. The reverse checkbox determines the direction that the effect will fill in from.
Blend
This transition effect when used as an “in” transition rapidly fills the model with square chunks until the model is full. Likewise when used as the “out” transition, square chunks of the effect disappear until no pixels are left. The adjustment slider determines the size of the chunks.
Slide Checks
This transition is a checkerboard type transition where the effect starts out with a checkerboard type of mask on the model and then the black portions are filled in either left to right depending on the reverse button selection. The size of the pattern is set via the Adjustment slider.
Slide Bars
This transition is broken up into 1-24 horizontal slices of the model determined by the Adjustment slider value. The effect selected will be filled in from opposite sides of the model interlacing each section until the model is filled.
Fold
This transition bends the effect onto itself like a piece of paper.
Dissolve
This transition will cause the effect to appear/disappear by adding/removing random pixels.
Circular Swirl
This transition will cause the effect to appear/disappear by emulating an object's rotation.
Bow Tie
This is a wipe transition using a Bow Tie Shape. The adjustment slider sets the starting location, 50 is the middle. The reverse checkbox will flip the direction.
Zoom
The effect will start out large and shrink into place.
Doorway
The Effect will start/end as a small box and increase/decrease size to fill the frame.
Blobs
This transition will cause the effect to appear/disappear by creating random rounded shapes on the frame.
Pinwheel
This transition will cause the effect to appear/disappear using blades like a fan. The adjustment slider sets the number of blades on the pinwheel.
Star
This is a wipe transition using a Star Shape. The adjustment slider sets the number of side of the star. 40 for four sided star, 50 for for five sided star, etc.
If an effect has a transitions applied a green bar will appear for an in transitions and a red bar for an out transitions. If the in and out transitions overlap, the overlap area will appear yellow.
This slider adjusts the level of each effect in the combined output of the effects. You can use this to just put a hint (or more) of one effect on another.
Canvas Mode is a special render mode that only works with specific effects. The default render mode in xLights will draw the effects on a blank buffer for each layer. Canvas Mode allows an effect to draw on a previous layer without "blanking it" out. This is used by effects like the Warp and Kaleidoscope Effect that manipulate data from the underlying layers.
This Dialog allows the user which layers to use when Canvas Mode is Enabled
To change an Effects setting, Select the effect in the sequencer timeline and open the Effects setting window using the shortcut in the top toolbar.
Each effect type has specific settings that can be used to manipulate the effect. These setting are specific to the currently selected effects. If multiple effect are selected the Effects setting panel will display the setting of the first effect. The "Update" button will change the settings of all the selected effects to current values used in the Effect Setting Dialog. To updated individual setting across multiple effects use the Bulk Edit option described below.
See the Effects Section for more information on the individual effect settings.
From the Color window, you can change the Colors that apply to the effect, as well as the Sparkles, Brightness and Contrast values. How effects use the colors is defined by the effect.
A single effect can be moved about on the sequencer horizontally , by selecting it with the mouse and dragging it left or right. A timing grid must be active. You can also select the effect and use the Left or Right arrow keys to move it left or right. When the effect encounters or is blocked by another effect, if you keep going, it will jump over the effect/effects and continue past.
Similarly an effect can also be moved vertically from one model to another. Use the Up or Down arrow keys to move it up or down. When the effect encounters or is blocked by another effect, if you keep going, it will jump over the effect/effects and continue past.
An effect or group of effects can be moved, by highlighting the effect, or range and moving it along the same model row/rows on the grid forwards or backwards. Hold the Shift key to move multiple effects.
Multiple effects can also be moved by using the Ctrl key. Click on the first effect , then hold down the Ctrl key and click on other effects. Then use the arrow keys (Up , Down , Left , Right) to move the selected effects together in the required direction.
Effects can be stretched by using the Alt key and dragging one edge of the effect highlighted (most commonly the bottom right corner) to provide a Chase effect. You may need to use Toggle Nodes to view the nodes so as to be able to stretch an effect.
A simple way to do a chase effect is to select a block of cells and hit 'd' for a fade down or 'u' for a fade up. If you then need to adjust it, drag the end line.
On OSX use Cmd key instead of Ctrl key.
In order to align several effects to the same start or end times , drag a box around all the effects you want to align and then hold down shift and click the effect you want to be the reference. Then right click and select Alignment. You can then select one of the four options to align to the effect you selected as your reference. In the example below, the Start times of three effects have been aligned to the Start of the Bar effect just below them.
You can even select a timing effect as the reference and it will align to that timing effect.
In order to copy and paste an effect, select the individual effect, right click and then select Copy. Move the cursor to where you want the effect to be copied to, right click and select Paste. You can also press Ctrl+C and Ctrl+V to copy and paste the effect.
In order to copy and paste a range of effects, use the cursor to highlight and select a range of cells. Then copy, followed by paste.
You can paste what is in the buffer (after a Copy) to multiple locations, by moving the cursor to each new location and pasting the copied data (right click and Paste or Ctrl+V) there.
There are two modes for Copying and Pasting effects: Paste by Time or Paste by Cell.
You can select, or change the mode by clicking on one of the two icons.
Paste by Time is the most common option. You do not need to have a timing track active . You copy the required section and paste at the required location. The copy works on copying effects and not copying grid locations. Therefore it will copy the first effect from with the range highlighted, and accordingly will paste that effect (and others after it that were selected) at the grid location when Paste is selected.
Paste by Cell works using timing tracks. A timing track must be active when you copy, so that the cells to be copied can be determined from the active timing track. You can use this option to copy timings/timing data (such as the phonemes used for singing faces).
Examples
You copy a single effect, select a target cell and hit Paste with Paste by Time mode. The result is the effect is pasted with the original duration. So if the original duration was 2 seconds , then two seconds duration will be pasted in the target irrespective of the length of the cells..
You copy a single effect, select a target cell and hit Paste with Paste by Cell mode. The result is the effect is pasted to fit within the target selected cell based on a %.
If it was 100% of the source cell, then the full target cell will be covered.
If it was 50% of the source cell, then 50% of the target will be selected.
You can delete an effect, by selecting the effect in the grid and pressing delete on your keyboard or pressing Ctrl+X.
In order to delete multiple effects, use the left mouse key to highlight a range of cells and then press delete. You can also right click on an effect and choose delete.
You can copy the effects of an entire model/group and paste it to another model/group.
Highlight the model name, right click and select Model, Copy Effects to copy the entire row of the effects.
Then select the model name header you want to paste the effects (in the same sequence or another sequence), right click against the model name and select Model -> Paste Effects. The data copied remains in the clipboard buffer. The Paste operation does not have to be immediately after the Copy operation.
You can copy the effects of an entire row/layer and paste it to another row/layer.
Highlight the row/layer header, right click and select Row, Copy Effects to copy the entire row of the effects.
You then paste the effects from the entire row/layer by right clicking on the row header and selecting Row, Paste Effects
Many, but not all effect actions can be ‘Undone’ by right clicking on the Grid and selecting the Undo action i.e. Undo effect move or Undo delete.. etc
You can also use the shortcut key of Ctrl+Z. The Undo actions can be daisy changed i.e. they can be repeated one after another.
In order to select a group of effects, use the left mouse key to select the range of effects. The color of the cells change, but also, the links in the selected cells will turn to magenta.
You can only select a group of cells, when the cursor looks like a pointing hand.
If two arrows are shown, then you can’t select the cells. You may need to zoom in to be able to see and select the required effects.
After selecting multiple effects, the user can change an individual setting across all the selecting effects. Right Click on the effects setting to change and select Bulk Edit.
A separate window will appear, allowing the user to change the setting.
After Clicking OK, all the selected effects will be changed to the new setting value.
If effects of different types are selected Bulk Edit will only change the setting of the Effect Type displayed in the Effects Settings Window.
Select and highlight an area on the effects grid. Right click and select the "Create Random effects" option. Effects will be randomly selected (along with different colors and options) and created in the area highlighted, each between consecutive timing marks. If no timing marks are active, then a default time length will be used for each effect. Use the shortcut key ‘R’ to achieve the same result by highlighting one or more cells and pressing 'R' on the keyboard. The Effects used by Create Random Effects can be set in the File->Preferences Menu under the "Random Effects" Tab.
xLights can support multiple timing tracks on the sequencer, each with different frequencies of timing marks. By default, a timing track ‘New Timing’ is created for each sequence if you have not created one when creating a new sequence. Timing Tracks can be added via the File, Sequence Settings, Timing menu.
Clicking on the down arrow will provide a drop down list of timing intervals to select from to create a timing track. Other than the first three, the remaining are from the VAMP plugins. If you have not installed the plugins then they will not appear in the list.
You can also import a Timing track that has been created externally. Click on the Import button instead of the New button. A window Chose Timing files(s) window will open, enabling you to browse for and select the timing file to be imported. Navigate to the .txt file containing the timing track and click OK to import it. The new timing track can be a lyric track with phrases and words broke down into phenoms.
If you are trying to import a LOR timing grid and it is not retrieved i.e. the window is empty, use any xml supported editor and check the LMS xml file for a section called <timingGrids>. The section should contain a subsection called <timingGrid> which must contain an attribute called "type=freeform".
When you create a timing track it gets added to all views that you have defined. Timing tracks are local to a sequence.
The timing marks create a grid but once the effects are dropped they have no relation to the original timing marks that were used to drop them. You can switch to any other timing track and have a completely different grid.
If you have multiple timing tracks defined,
Each timing track has a different color of timing marks.
You can select the timing track radio button (to the left of the timing track name) to enable that track. You can also select more than one timing track to be displayed at the same time, however only one timing track will be active for effects to calculate the start and end position.
You can rename a timing track , by right clicking on the timing track name and then providing a new name in the window that gets displayed.
You can set up timing marks on any timing track manually, by placing your cursor on the waveform (above the grid) and while playing the sequence, press the ‘t’ key where you wish the timing mark to appear. This is equivalent to what is called a 'tapper' function.
You can also have xLights create fixed timing interval timing tracks by selecting the Metronome timing option and then choosing the timing interval.
When xLights created a Metronome timing it is generated as a Fixed Timing Tracks. Fixed Timing Tracks are not editable and the timing marks cannot be changed. Fixed timing tracks are colored orange in the sequence tab by default.
To edit a Fixed timing track the user must right click and select Make Timing Track Variable.
While on the sequencer tab, you can add new timing tracks or delete an existing timing track at any time.
Right Click , with your cursor in the area of the timing track names and select Add Timing Track or Delete Timing Track.
You can also import timing marks created externally (the most common being those created via Audacity or another xLights sequence).
This capability includes importing a Singing Face (xLights Papagayo) timing track.
If you wish to select and delete multiple timing marks all at once, uncheck the circle beside the timing track and then drag select with the yellow dashed rectangle and hit the delete key.
In order to import a timing track, right click the Timing names area, then select Import Timing Track, navigate to the .txt ,PGO, LMS, LOR, LSP, .xml, or .xtiming file containing the timing track and click OK to import it.
The timing tracks from the specified file are imported as xLights timing tracks - the following is an example of one that has been imported from LSP.
Importing of a PGO timing track is covered elsewhere in the document.
Similarly to export a timing track, right click on the timing track name in the Timing names area, and save as as .xtiming file.
This capability includes exporting a singing face (xLights Papagayo) timing track.
You can export the file as a PGO file , if you wish to provide the file for use in another type of sequencer (LOR ). If you wish to use this in for another xLights sequencer , then export as an XTIMING file.
Multiple timing tracks can be exported to a single XTIMING file by selected them from the following dialog.
Timings are created just like effects which means they have a duration. Every timing effect has a starting edge and an ending edge. So you can have a timing effect that goes from 1 to 2 seconds and then another from 3 to 4 seconds with nothing in between 2 and 3 seconds. If you want one in there just select a range and hit "t" then drag the edges over to connect to the existing timing effects.
The purpose of this function is to create a timing track by importing the notes from an external source such as a MIDI file, from an externally generated source such as Audacity or from a music XML file.
Right Click on the Timing Track name and select Import Notes.
Specify a name for the Timing Track to be created , the Notes Source, and then navigate to and select the file from which the notes are to be Import.
Click OK and the Timing track will be created from the notes.
Once the timing track that has been created , it can be edited or adjusted if required.
Subsequently , when when using the Piano effect , specify the Timing Track that has been created as the Notes source.
The ‘Render All’ function is used to force a render of all effects - that have either been created within xLights, imported via the Import Effects function or has been imported as a Data layer.
The Data Layer order renders from the bottom to top. Therefore what is on the top layer will be done last – much like painting – the last brush strokes are on the top.
Model layers also render from the bottom to top. Therefore the bottom layer will be rendered first, then the layer above it and do on until the top layer is rendered last.
However, the Models themselves render top to bottom based on how they are laid out in the Master View of the sequence. So the top model is rendered first, then the next lower model until the last model is reached.
This is important to keep in mind when you have multiple models or model groups mapped to the same channels such as whole house model group and regular models.
You can change the order of data layer by moving them up or down. You can similarly change the order of layers within a model. And you can also change the order of models in the master view.
Always put your large groups at the top. To view your rendering order you need to be in the Master View and it renders top to bottom. Use the display elements window to change the ordering. Set the render order in the Master View and then use all my other views for sequencing. All other views don't affect rendering order they are for display purposes only.
From the Color window, you can change the Colors that apply to the effect, as well as the Sparkles, Brightness and Contrast values. How effects use the colors is defined by the effect. Some support just one, some support up to 8.
The 'Update' button will apply the current colors palettes to all the selected effects.
Use the Sparkles slider to increase the sparkles for the effect. If the Sparkles reflect music option is selected, then the sparkles will increase from the selected value based on the intensity of the music. The Sparkles color can be changed with the color picker on the right side.
Use the Brightness slider to increase or decrease the brightness of the effect.
You can open/close the Color Window by Clicking on the Effect Colors icon in the toolbar.
If this window is not open, select and open the Window from the Views, Window menu. You can save all your window positions as a “Perspective” for easy recall.
To change the colors used by an effect, select the effect, and double click the color that needs to be modified.
The Color Manager Dialog allows the use to then select a different color.
The user can create custom colors by clicking "Define Custom Colors" and manually adjusting the RGB color settings.
For any effect, you can change the initial colors selected for the effect by selecting a different color or colors from the Color Window. You can use the Control key and select multiple effects.
Once you select all the effects and change the color , hit the 'Update' button in the color panel. It will modify just the colors for all selected effects.
Clicking on the any of the color icons opens up a Palette window, where the standard colors can then be replaced with a new standard color or a custom color can be selected.
The Save button allows the user to save the current selected color for future use as a color palette. These color palette files are stored in the current show folder.
The Drop-Down allows the user to select the previously saved color palette stored in the show folder.
The update button will save any pending changes to the currently selected color palette file. Delete will delete the selected color palette file. If the user hovers over the color palette, the file name will appear.
This functionally enables a color to change within an effect duration I.E. where previously the same color value would have been displayed for a particular segment duration it can now be made to change within that segment duration.
As an example, drop a Bars effect against a model on the grid.
After selecting the required colors (white, red and green in this example), right click on the first color .
The Color Curves window is displayed.
The window representing the Color curve is black in color.
Double click on the mark (which turns yellow to indicate it has been selected) and from the resulting Palette window select a color (White).
Move the marker to the far left. Then click within the White Color curve window. This creates another mark , Double click on that mark and select Blue as a Color.
You now have a color effect that starts White and Turns blue over the duration of the effect.
You can adjust the markers to control where the color changes.
You can have up to 40 different color changes.
The Blend Mode can be set to Gradient or None (sharp change).
For effects that have the Platte color option (such as the Butterfly), the Palette must be selected for the colors to come into play.
You can select any one of the color curves present just below the Blend Mode attribute by clicking on it.
The color curve values will be copied into the window just above and you can then use the markers to adjust the color.
To can export a color curve by clicking on the Export button. You will be prompted to specify a name for the Color curve and a .xcc file of the specified name will be created in the location specified.
Similarly you can load a previously exported color curve file by clicking on the load button and then navigating to the location of a .xcc file and selecting it.
Color curves can be timed based or spatial based. A timed based color curve will change color over the duration of the effect, while a spatial color curve will change over the models X/Y location. A spatial color curve has direction. The icon below the color specified what type of color curve is selected. Click the icon to change the color curve type. A clock is a time based and an arrow is used for a spatial color curve. The Direction of the arrow represents the direction of the spatial color curve.
This functionality works on most effects but not all. For example – it is not applicable to effects such as DMX, Faces, Fire, Glediator, Pictures, State and Video.
Single Channel colors react only to the color that they are defined as. If you define them as single color blue then it will only react to the blue channel. You can set any color and it will route the blue portion of that color to that model.
If you send White (R=255, G=255 B=255), to a single color blue model then it will turn fully blue. If you send blue it will turn fully blue. If you send red or green it won't turn on at all. If you send pink which is R=255, G=0, B=128 you will get a half brightness blue.
You can therefore include those single color models inside a group and they will react to the colors dropped on the group. Any of the "blue" components of the RGB values assigned to that model will cause it to fire at the associated brightness of the component.
The strings will light up with the intensity of the color for each channel. So if you send Purple R=128, G=0, B=128), that will light up all the Red and Blue strings but only about 50% intensity.
If you just want a string to turn on full brightness without worrying about it then use White.
There are several windows that are used to select different properties, setting, or views when using the sequencer tab.
To select additional Windows, click on View/Windows and select the window to have displayed. If the window is already open, selecting it will close the window.
You can close a Window or move them around or if you have an additional monitor configured, then one or move Windows can be moved to the alternate monitor. The Windows are described in the View, Windows section.
You can save the windows that you normally have open as your default perspective. These windows will then be opened when you load xLights.
Select the Dock All option to reset the Windows perspectives and dock all the windows to your current setup.
This is sometimes required if you are using an xLights_rgbeffects file that has been saved with a different default perspective e.g. two monitors and that set-up is not present in your current environment.
The Reset to Defaults options used to reset the Toolbars. This will take effect when you next start xLights.
You must Save these settings for it to take effect - you will be prompted to save when quitting xLights.
Click on the effect from the effects toolbar and drag the effect to the grid and release it between two timing marks on the row of the model you wish the effect to play on. You can then select and drag each end to stretch the duration of the effect or reduce the duration of the effect. The effect that you are working with is reflected in the (associated and open) windows to the left of the grid.
If no timing track is selected then you can drag and drop even if you have no timing marks but the effect defaults to 1 second long.
Select and open the Views, Window menu and select windows to be opened.
The Value Curves functionality effectively changes the way an “effect” or setting works over time in a nonlinear fashion, based on the type of Value Curve selected and other parameters off the curve. This is best explained via an example.
Consider the Bars effect. It has two attributes ‘Palette Rep’ and ‘Cycles’ that can be linearly adjusted using the sliders. They are currently set to 5 and 3 respectively. This means that the palette will repeat 5 times over the duration of the effect and the effect will cycle through three times. Both will be applied evenly across the duration.
However, if you click on the Value Curve icon for either of these attributes, you will be presented with options to change how these repetitions are applied.
The Flat option is the same as the default linear option. The level can be used to adjust the intensity.
The other sliders are labelled ‘N/A’ as they are not applicable to the context and type of Value Curve thats is being used.
In other scenarios, Value Curves and for other effects, different sliders are available.
Click on the drop down link and a number of options are presented.
Select the Ramp Value curve. As the image indicates, this will cause the selected attribute (say Palette Reps), to increase (ramp up) over time, starting from 20% and ending at 80%. Note that the Start level and End level sliders are now active.
Another type of Value Curve is the Sawtooth variation. The selected attribute to which this is being applied (palette reps) will increase and decrease twice (controlled by the Cycles selected) from a start level to and End level.
Custom Value Curves can also be created. Select the Custom option from the drop-down. You can then click on the waveform to add new points and drag them as necessary.
Value curves can be loaded and exported as a .XVC file. By default, the files will be loaded and previewed if they are in the 'valuecurves' folder automatically created in the current show folder.
Layering effects gives you the ability to create unlimited stunning effects that could not be created without layers.
First, let's go over the limits. Each model may have a up to 200 layers of effects. Each layer can be blended with the layer below it for a combination of thousands possibilities within a single timing cell.
Layers on a model are like layers on a cake. Each layer adds a bit to the effect produced at the end. Much like layering your popcorn with butter or salt. It's easy to think of each layer of being additive like a food recipe, but you can also use layers to be subtractive as well using layer masks to reveal only a portion of a layer. See the table below for the different layer blending options.
Think of a color wash in red, with a layer of snowflakes. Normally you would picture a red model with the white snowflakes. You could change the layer masking so that the model was black and showed red on the snowflakes. Some effects like Morph can be applied to only a portion of a model, so using layers you can get multiple morphs on a Mega Tree that look like interleaving fingers for example.
Combining two spirals in opposing directions on a mega tree also can create stunning effects.
To add layers to a model right click the model in the sequencer tab and choose Add Layer above or below (the current layer).
Layers can also be added at the Strand level.
The Poly Line model defines each segment as a Strand and the layer functionality can then be applied separately to each strand.
To add layers at the strand level, click on the Model name in the sequencer to display the Strand names. Then right click on the strand name and choose Add Layer above or below the selected strand.
The strands blend onto the model level effects.
The Layer Settings window can be opened by clicking on the Layer Settings icon from the toolbar, or via the View, Windows menu.
This will reset the Layer Setting back to default every time you select or create a new effect. Checked is the recommended setting for most users.
This attribute controls how the buffer is laid out for a model or model group when the effect is rendered. Every model has a ‘Default’ buffer which can be view by opening the model's node layout in the Layout Tab.
For example, for Arches – the default buffer treats each arch as a single line and stacks the arches on top of eachother, for a Star model, the default is a square grid that cases effects to chase across the face of a star.
Additional options are available to change the buffer representation for the model or group. The list of values that are selectable are dynamic depending on the type of model.
For model groups, additional buffer render styles are available. The list below discrips all model render styles.
Render Style
Description
Default
Uses the Default buffer for a model or SubModel and Per Preview for a Model Group.
Per Preview
This will render the way the model has been laid out in the preview.
Single Line
Places all the strings/stands end to end and renders the effect on the resulting one pixel high line.
As Pixel
Treats all the model nodes as one pixel.
Horizontal Stacked
Places each Model next to each other horizontally in a single row that is aligned to the bottom
Vertically Stacked
Places each Model on top of each other Vertically in a single column, aligned to the left side.
Horizontal Stacked - Scaled
Places each Model next to each other horizontally in a single row, scales each models buffer size to be the same.
Vertically Stacked - Scaled
Places each Model on top of each other Vertically in a single column, scales each models buffer size to be the same.
Horizontal Per Model
Each Model's nodes are setup as a single row in the buffer horizontally and then each model is stacked vertically.
Vertical Per Model
Each Model's nodes are setup as a single column in the buffer vertically and then each model is place horizontally next to each other.
Horizontal Per Model/Strand
Each Model's strands are setup as a single row in the buffer horizontally and then each model is stacked vertically.
Vertical Per Model/Strand
Each Model's strands are setup as a single column in the buffer vertically and then each model is place horizontally next to each other.
Overlay - Centered
Model are "set" on top of each other and the buffers are Centered
Overlay - Scaled
Model are "set' on top of each other and the buffer sizes are scaled to be the same.
Single Line as a Pixel
Each Model is represented as a single Pixel and placed in a single line.
Per Model Default
Render the Effects on Each Individual Model using the model's default buffer
Per Model Per Preview
Render the Effects on Each Individual Model using Per Preview
Per Model Single Line
Render the Effects on Each Individual Model using Single Line
When using the "Per Preview" render style, this dropdown allows the user to select which viewpoint to use. 2D is the default.
The transformation attributes can be used to rotate the effect clockwise, counter clockwise (90 or 180 degrees) or to flip it either horizontally or vertically.
While some effects have settings to do similar things this is now the standard way to flip or rotate an effect.
This attribute will cause the effect to ‘blur’ i.e. the colors become less distinct (hazy) and the edges of two colors will fade into each other i.e. will not have sharp edges. The level of haziness can be increased from 0 onwards using the slider or adjusted using the Value Curve functionality by clicking on the Value Curve icon.
The Sub Buffer selection can be used to limit the area that an effect is active. This basically redefines the size of the model/group (on a per effect basis). This option is different than masking, because the entire effect is rendered based on this new model size, whereas a mask covers up what you specify.
So if you only want the effect to be on the top half of the model or group, bring the bottom part of the dotted yellow line to the middle of the black box. The ‘handles’ of the yellow grid are in the corners. Double Clicking will reset the defaults to the full size.
If you right click on the black box you can access and select some of the common buffer settings. ‘Full Buffer’ will reset to the full size. The "Edit" option allows the user to manually input the X/Y locations and use value curves.
As an example, drop the Fire effect on a Model Group covering your ‘whole house’.
Then adjust the yellow dotted lines of the box inwards and look at the effect it has on your house preview. You can limit the effect to say the left side of your house, with another similar one of a different color on the right side of the house applied on another layer.
The Sub-Buffer area selection also supports Value Curves. The bounding box handles will appear Red when a value curve is in use.
The Persistent option when enabled does not clear the display buffer before rendering each frame. The result is the preview frame remains until overwritten by a subsequent frame. For example, drop the balls or fan effect on a model, select the blending to “Effect 1”, then toggle Persistent on/off. You will see a huge difference. Doing the same for a “Chase” effect also results in a very different look.
The term came from high persistence scopes where each trace just kept layering on top of previous traces.
The Roto-Zoom functionality enables the effect to be Rotated as well as have aspects of the effect Zoomed.
The Preset defines the type of rotation to be applied to the effect. The effect can be continuously rotated clockwise or counterclockwise, made to explode outwards , implode inwards , shake etc.
The Rotation attribute changes the orientation of the effect. The attribute cannot be used if a Rotation Preset has been selected.
The Pivot Point attributes work if the Rotation attribute has been used by moving the point at which the effect rotates along the other axes.
The Zoom attribute increases the size of the effect - for a Text effect - the text will be made larger. The Zoom quality increase or decreases the pixels when the zoom attribute is used. These two attributes cannot be used if a Zoom (i.e. explode or implode ) Preset has been selected.
Application Order specifies which order to apply the rotation in.
Select the Preset of ‘None - Reset’ to reset the settings before trying another combination or if the rotation / zoom settings appear to be different to what is expected.
If the Model Preview window is open, you can play the model effects in the window by right clicking to the left of the sequencer grid and selecting Play Model. The sequencer will start playing and the effects in this window will focus on the selected window.
You can also achieve the same result by clicking on an effect against the model in the grid and then selecting Play.
This function is used if you wish to export effects from your model to another sequencer, such as LOR, LSP, Vixen, HLS. It can also be used to export an eseq (effect sequence) to the Raspberry Pi Falcon Player (FPP). Effect files are .fseq format files with an .eseq extension. These special sequence files contain only the channels for a specific effect and always start at channel 1 in the sequence file. The actual starting channel offset for the Effect is specified when you run it or configure the Effect in an Event on the FPP.
Eseq (effect sequences) can be played on the FPP any time while a main fseq sequence is running and you can have as many effect sequences running as you want on different elements of your display. If you create an fseq called ‘background.eseq’ and upload to the FPP, it will execute as soon as the FPP has started i.e no definition is required on the FPP.
Right click to the left of the sequencer grid and select Export Model or Render and Export Model.
‘Render and Export’ renders the model to a clean buffer and thus would ONLY contain the data from the effects on that model.
‘Export Model’ could include data from other sources that may affect the model such as data layers, model groups, overlapping models.
You will then be presented with a window where you can select the target sequencer type and the filename to be created. Press OK when done.
Status messages will be displayed on the last line of your sequencer as the model is exported. The file will be created in your show directory.
You can use this functionality to export a models effects to the Falcon Player and then use the effect to run a continuous background sequence such as a “Tune to” sign, independently of sequences running in via the fseq file.
You can export your effects as a video avi file. It is limited to matrices, trees and custom models. It generates a low res video which can be used in the video effect or in other sequencers. Right click against the Model name on the sequencer grid, select Export Sequence and then select either Compressed video or Uncompressed video. Enter the filename and press Ok. The avi file will be created in your show directory.
From the sequencer grid view, right click on a model name, and click on the Toggle Strands option, to display all strands for the model.
With the strands view open (i.e. displayed), right click on a strand to either toggle the strands closed or to Toggle Nodes and display the nodes for a strand.
This is often useful to see how a particular effect has been rendered down to the node level.
Dropping an effect on a Model group will give different results than dropping the same model on all elements of the group (because in the former case the canvas is treated as a whole matrix and then the effect is applied to the models within it). Some effects work at the Group level better than others.
If a model has sub-models they will be listed above the strand names. You then can use these to define an effect applied only to the sub-model.
On the left column of the sequencer tab, Model Groups have a symbol after the name that distinguishes them from Models.
When on the sequencer tab, If you right click on a Model group, the window will display a ‘Toggle Models’ option which will display all the models under the Model group (or hide them if you select the option again). You can also double click on the Model Group to obtain the same results.
You can use the Matrix drawing tools to amend a picture or draw your own pictures or animations. Click on the Picture effect within the sequence grid that contains your effect and then open the Effect Assist window if it is not already open. You will be presented with a window similar to the following i.e. the picture of your effect is copied to a grid.
The Matrix Drawing Tool has 8 windows, each with a color and a radio button under the color to show you which color is selected. You can change the color assigned to each window, change the saturation, hue, brightness, change the RGB setting etc.
Select the pencil tool and after selecting a color, use the left mouse button to draw and fill in the selected color or use the right mouse button to erase what has been drawn. The eraser can be used to remove colors on the grid.
Click on New Image to create a new image. The first time you use this function, you will be prompted for a directory to store the image files in. As an example, create an ‘image’ subdirectory within your show directory.
You will be presented with an empty grid and you can then draw/paint your effect within the grid. Click on Save image and name the image. The model window will display the model just drawn. (The model won’t be updated until the file is saved).
Load Image is used to load a previously saved image or any other supported image. If the picture loaded is not as per the model scale, you won’t be able to edit it.
Save As can be used to save an effect to a new name.
Highlight the area that you wish to copy, press Ctrl C to copy to the clipboard buffer, move to the area that you wish and press Ctrl V to paste it.
The File menu enables you to create a new xLights sequence, open an existing xLights sequence, Save, Save As or Close a sequence that is currently open, select a show directory, backup xLights sequences to another directory and quit the xLights application. These actions can also be done using shortcut keys and via icons on the top bar of the canvas.
Create a new sequence, either a musical or animation. See New Sequence Page for more information
To open an existing sequence, either use the Open Sequence icon, select Open Sequence from the File menu or press Ctrl O. You will be presented with the ‘Choose Sequence file to open’ window, with the directory defaulting to your show directory. Select the required xLights (XSQ or XML) sequence file to open. You can also select the FSEQ file and it will open the XSQ or XML file referenced within.
To open a recently used sequence, select any item from this list.
To save an open sequence, either use the Save Sequence icon, select Save Sequence from the File menu or press Ctrl S. If the sequence has not been saved previously, you will be presented with the Save As dialogue window to enter the name for the sequence.
If the Render on Save setting (under the Settings menu) is set (i.e. checked) then all the effects on all the models will be rendered first before the sequence is saved in the FSEQ file. This is the default. Progress status messages are displayed on the last line of the window with a progress bar indicating the render progress.
When the sequence has completed saving, a message will be displayed on the last line indicating the name of the FSEQ file and how long the save process took.
If you click on the green progress bar, a window opens and you can see the render progress of each model / model group.
One line is displayed for each model or Model group that is being rendered.
You can stretch and expand the window to see all the models.
To save an open sequence with a different name, either use the Save As Sequence icon or select Save As Sequence from the File menu. You will be presented with the Save As dialogue window to enter the name for the sequence. If the Render on Save setting (under the Settings menu) is set (i.e. checked) then all the effects on all the models will be rendered first before the sequence is saved in the FSEQ file. This is the default. Progress status messages are displayed on the last line of the window. When the sequence has completed saving, a message will be displayed on the last line indicating the name of the FSEQ file and how long the save process took.
To close the currently open sequence, select Close Sequence from the File menu. If the sequence data has not been saved since the last change, you will be presented with warning.
Click on Save Changes if you want to save your changes. If you click Cancel then you will be returned to the sequence. If you select and click Discard Changes, then the sequence will be closed without any sequence changes being saved.
The Preferences Dialog allows the user to set all the global settings in xLights. These settings are stored in the system register and are persistent between show folders.
The Sequence Settings Dialog allows the user to edit all the settings for the currently open sequence. See Sequence Settings page for more information.
The Key bindings Dialog allows the user to manually edit the keyboards shortcuts in xLights.
The Export House Preview Video feature will "Play" the loaded sequence and create a video file of the House Preview Window. The video resolution of the resulting file is based on House Preview size. It is recommended you make the House Preview Window as large as possible before selecting this option.
In order to change your show Directory, select Select Show Folder from the File menu, press F9 or click on the Change button against the Show Directory on the Setup tab.You will be prompted to navigate to and select a new directory folder to select.
Ensure that you have the correct xLights XML files (xlights_keybindings.xml, xlights_networks.xml and xlights_rgbeffects.xml) in your new directory.
This option will display a list of previously selected show directories. If you select any of the items listed, your show directory will be changed to the selected directory.
The Backup Menu item allows you to manually trigger a backup of the show folder.
You will be presented will a message indicating where a backup will be created. Click Yes to proceed. Every time this step is executed, a copy will be created of all the ‘*xml’ files from your show directory into the Backup subdirectory of your show directory. A new subfolder is created each time a backup is executed.
By default xlights backs up the key files at the start of a session when xLights is launched.
Pressing F10 anytime, anywhere will backup your XML files for you and store them in a new folder with the date/time embedded in the name the backup was created. You can press F10 as many times as you like and should do this at least once per sequencing session. Keep in mind that you must have saved at least once in order for an updated XML file to be protected.
The Restore Backup dialog enables the user to select the backup folder recover files stored in the backup folder. The right list display basic data about the files found in the selected backup folder.
The left list displays the available backup folders, the middle list displays the files to restore. The right list display basic data about the files found in the selected backup folder.
The Alternate Backup function enables you to specify and use a different location to back your files up, other than the default location that the F10 backup functionality provides for.
Press F11 or select this function from the File menu. The first time you use this function, you will be prompted for the location that you wish to back the files to. Navigate to the required location and select the folder. The prompts after that are similar to the Backup functions.
Subsequently, Pressing F11 will save the files to the specified location. You can change this location via the Settings, Alt Backup Location menu.
The F11 function does not do an auto (in memory) backup of the current sequence if you have one open. It will backup the open sequence XML contents from when it was last saved.
To quit xLights, select Quit from the File menu or press ALT+F4.
If you have a sequence open and the sequence data has not been saved since the last change, you will be presented with the Save Sequence Dialog.
There are a number of shortcut keys that can be used for functionality or adding effects on the grid. These effects are stored in the xlights_keybindings.xml file and can be modified by the user. Note that you must edit this file while xLights is NOT running. Changes will be lost when xLights closes as this file is saved upon exit each time.
The On and Ramp Up/Down effects also enables the intensity to be defined as a shortcut key. Look at examples in the existing file which has a start intensity set to zero and and end intensity set to 100%.
A view is used to be able to easily select a list of models and the sequence in which they are to be displayed on the sequencer.
Views work across sequences, so once you have setup a view with the models that you require, if you open any sequence, that view is available to use in that sequence.
If you define Model Groups in a view, then when you use the view in the sequencer, you will be presented with a list of the groups. Double Clicking each group will open up the list of models within the group.
Multiple views can be defined, with each view defining a list of models that are to be displayed and the sequence that they should be displayed in. For example:
A ‘Static Model’ view may contain all elements that are non RGB.
An ‘Import Model’ view may contain only elements that you wish to sequence after importing other data from other sequencers.
A ‘Halloween Model’ view may contain only elements that you wish to sequence for Halloween.
To Create a new View , click on the Add button, enter a unique name in the window and Click OK.
To delete an existing view , highlight the view from the View window and select Delete.
New models can be added to a view by first selecting that view from the Views list on the right, then second select the Available Model on the Left and third clicking on Right Arrow Button.
Similarly models can be removed from a View by highlighting the model in the Model window on the right and clicking on Left Arrow Button..
The position that the model appears within the view can be changed by highlighting the model and clicking on Up or Down Arrow.
The Double Left and Right Arrows will Add or Remove All the Models in either list.
The visibility is across all sequences and not specific to the sequence that is open. So if you make a model non visible, it will become non visible in all sequences.
The Master View is a special (system created) view. It contains all the models that have been defined for the sequence that is open only i.e. it does not span sequences. It also determines the rendering order. Any model added to any other view when a sequence is open automatically gets reflected in the Master View of that sequence. Models can be deleted (i.e. removed) from any view at any time.
If you attempt to delete a model from the Master View, you will be prompted to confirm the deletion, as deleting the model from the Master View will remove all effects that you have created against that model for the sequence that you have open.
If you add a Timing Track to a view, it will be added to all views that you have defined.
This is an advance method, It is recommended to use the User Lyric Dictionary Dialog instead.
The standard_library and extended_library are built-in dictionaries which contain information that assist xLights in converting each word into phonemes. Each word in the dictionary is listed with its associated phonemes. As xLights proceeds with the breakdown process there may occasionally be a word that it cannot find in these dictionary files. When this happens there is a simple process to add that word to the user_dictionary.
When xLights is first installed, this file is located in this folder: C:\Program Files\xLights\ This folder is the default folder that xLights is installed into. This can change if you decide to install xLights somewhere else.
To keep this file from being overwritten in future installs you should move the user_dictionary file to the folder where you store your sequences.
The user_dictionary can be moved to the Show Directory and xLights will read it from there. If you do this xLights will load the user_dictionary in the show directory and skip the user_dictionary in Program Files.
The user_dictionary is a simple text file which can be edited by using a text editor such as windows notepad or any other text editor, such as Notepad++, to open this file. This is only dictionary file that you should make any additions to because the other two files will be overwritten each time xLights is installed. When you first open the user_dictionary file it will contain the information shown below.
Before continuing, create a text file containing all the words that xLights did not have an associated phoneme breakdown created. Name this something easily identifiable, such as ‘missing words.txt’ and put it in the same folder as the sequences. There is no special formatting, just a list of words, one per line, is required. One thing to note here is that if you have any hyphenated words such as ‘screa-um’ you should break the word into two words such as ‘screa’ and ‘um’’ for this list.
Then click the ‘'Choose File' button and browse to find the file you created or enter this name into the file box.
Then click the 'Compile' button.
Once the processing has completed another web page will appear similar to this:
Click the work 'link'
Another web page similar to this will appear.
Here click the file with the .dict extension such as 0548.dict, then a web page will appear with the words and their phoneme breakdown as shown below.
Before following the rest of this process, close the current sequence and exit xLights.
If your user_dictionary is not open, open it now. Highlight and copy this list and paste it into your open user_dictionary and save the newly modified file. There is a small bug in xLights at the time this document was written which you need to compensate for. After pasting in the newly added words do a search and replace with a ‘ ‘ (space) for any ‘tab’ characters in the user_dictionary. Between the "word" and the "phonemes" requires two spaces (' ') and one space(' ') is required between phonemes.
This process will work for one to how ever many words that you have. But if you just want to quickly check one word past the following link into your browser.
This is the online CMU Pronouncing Dictionary. Here you will look up each word that Papagayo did not find in its dictionaries. Let’s take the first word 'ooky'. There is a box below the title ‘Look up the pronunciation for a word or a sentence in CMUdict (v. 0.7a)’ where you will enter this word. Then click the 'Pronounce it!’ button. If a red dot appears with the phrase ‘not in dictionary; consider using the LOGIOS tool discussed above, which is able to generate missing pronunciations by rule.’ Then you need to click the ‘LOGIOS’ link which takes you to the previously discussed web page.
Now that you have updated the user dictionary you should reopen xLights and load the previously saved sequence and find the newly added dictionary words and do a right click ‘Breakdown Word’ for the missing phonemes. The image now shows the results after adding the word ‘honkey’ to the user_dictionary file.
This section describes how Singing Face functionality i.e. the conversion of phrases from song lyrics or sentences spoken out aloud can be converted to work on Coro faces or Images on a matrix or Mega tree natively in xLights i.e. without using the Papagayo application.
In the model layout tab, select the singing face model, then click on the ellipsis (three dots) button on the Faces property.
The 'Name' dropdown specified the currently selected Face Definition. If the dropdown is empty, then no Face Definition exist for the current model.
Click 'Add' to create a new Face Definition.
'Delete' will delete the current selected Face Definition.
Click the ellipsis (three dots) to copy, rename or import a face definition.
The drop down box below the 'Name' selector is used to select the type of face definition. There are three types of face definition.
For each phoneme, select the channels that will be turned on. Multiple selections can be selected, by holding down the CTRL key.
If force custom colors is selected, then a specific color to be turned on by default. This can be specified for each phenom/row by double clicking in the color column to bring up the color palette.
If ‘Node Ranges’ is selected, then the following window will be displayed.
Type in the list of node numbers (pixel numbers) for what should be turned for each movement. Example: ("1-12,24-30"). Double click the Nodes Column or Phenom Name to bring up the Node Select Dialog.
Click and drag to select the desired nodes for the selected phenom definition.
Click Ok when done selecting the nodes for the current phenom name/row.
There is a right clicked menu that allows the user to import node numbers from a predefined submodel.
If force custom colors is selected, then a specific color to be turned on by default. This can be specified for each phenom/row by double clicking in the color column to bring up the color palette.
If a matrix is selected, then the following window will be displayed.
Then for each mouth position, double click in the eyes open column (you may need to double click more than once) and navigate to and select the face image corresponding to that mouth position. You can specify different images for the Eyes Closed position or by default, the same image is copied across.
The 'Download Images' button will display a list of user submitted singing faces images. Select the 'Insert Face' to download the pictures files to 'DownloadedFaces' folder in the show folder. This will also populate the face definitions in the main dialog.
Pay attention the image resolution compared to the matrix resolution. High resolution image will not scale well to low resolution matrices.
Then select the image placement i.e. Centered or Scaled. 'Center' with display the image in the center of the matrix. If the image resolution is greater than the matrix resolution, xLights will down scale the image to the matrix resolution. 'Scaled' will upscale the X and Y resolution of the image separately to the matrix resolution.
Images used for pictures and faces use the location reference you specify when you added the image. xLights attempts to resolve the location of the image if it cannot be located where specified.
If the images are in your show directory or in a sub folder inside your show directory, then the image will be found. In other cases , the new location may not be detected.
Next add a new Timing track. Right Click on the Row Heading and Select Add Timing Track
Select a Timing Track of type ‘Empty’ and click on OK to add it.
Right click on the name of the timing track and Select Rename Timing Track. Change it to something meaningful, such as ‘Lyrics’ or 'Main Vocals'.
If you have more than one Voice, then repeat this process for the second Voice.
Select the Timing Track (‘Lyrics’) and for clarity deselect any others. There are two ways to add the phrases/lyrics to the Timing Track.
Importing the entire set of Lyrics. Obtain the lyrics from the internet or elsewhere, copy them, then Right click and select ‘Import Lyrics’.
Type or paste the lyrics into the Window and press OK. The words of the lyrics will be evenly distributed across the song.
It is also possible to import an entire timing track (that another person has exported) containing the Lyrics, Words and phonemes via the Import Timing Tracks option. The file must be an .xtimings file.
Play through the song at regular or reduced speed and use the ‘t’ key to add timing marks at the beginning of each phrase. Then on the timing track, between two timing marks, double click or shift double click (this is set by your preference dialog settings) and an ‘Edit label’ box will pop up. Type in, or copy and paste the words that pertain to the selected phrase (or phrases) that belong between the two timing marks. Press Ok to accept.
Repeat for as many phrases as you require or you can do one phrase at a time.
You can break down all the phrases into words by right clicking on the timing track to the left of the Papagayo icon and selecting the Breakdown Phrases option. This will breakdown all the phrases into words or you can do this in sections i.e. Highlight a phrase or group of phrases, right click and accept the Breakdown Phrase option.
A list of words will be generated for the phrase in a timing track, just below the phrase.
You can break down all the words into phonemes by right clicking on the Timing Track to the left of the Papagayo icon and selecting the Breakdown Words option. This will breakdown all the words into phonemes or you can do this in sections ie: highlight a group of words, right click and accept the Breakdown Word or Breakdown Selected Words option. If the Breakdown Selected Words option does not appear, ensure that your cursor is not pointing on a word, otherwise you may only see the Breakdown Word option.
Due to the loading of dictionaries, there could be a delay of several seconds the first time this is used in each session, while the first word is broken down.
A list of phonemes will be generated for the word or words phrase in a timing track, just below the word timing track.
Zoom in to see the words or phonemes more clearly. Drag the words to align them as required.
You also need to separately drag the phonemes to align them as required.
If you wish to regenerate a word or words, highlight the words, right click and select Breakdown Word or Breakdown Selected Words option.
Select and drag the Face effect to the sequence grid against the model (your Singing face model).
Ensure that the color selected on the color window is correct based on your model definition (White is the most common setting).
If the Timing track name (‘Lyrics1’) does not appear in the list of Timing Tracks, click on another effect and then return to the Face effect to force the list to be refreshed.
Using the Effects Setting window, under Mouth Movements, select the applicable Timing Track (‘Lyrics’). The face definition value will default to the one defined for the model.
You can also select ‘Show Outline’ which will activate the outline when the face effect is present and ‘Turn On/Off Eyes’, if you wish. Setting the eyes to Auto will cause the eyes to blink every few seconds when the rest phenome is on.
The timings should automatically appear against each mouth movement.
Repeat the process for the next phrase or group of phrases.
Similarly, repeat for the next Voice by selecting another model (‘Singing Face 2’), and the next Timing Track (‘Lyrics 2’). When you drop the Face effect on the sequence grid, select the second timing track (‘Lyrics 2’) as the Timing Track on the Effects option and proceed as described for Voice.
If you wish to assign a group of phrases/words/ phonemes from one Voice/timing Track to another, then against the model of the second voice (‘Singing face 2’), for the selected group of phrases (‘Chorus’), when you drop the Face effect, select the first timing track (‘Lyrics’) and the effects from that timing track will be duplicated.
This step will help eliminate any words that xLights may not have in its library.
As you breakdown words in xLights, occasionally you may see that there is no phonetic breakdown of the word placed in the timing track. As shown below.
As you can see there is no pink phonemes below the work ‘honkey’. This means that the word is not in the xLights work dictionary. To manually add word breakdowns, Use the User Library Dialog located in the Tools Menu.
This section describes how you can import a Papagayo (.PGO) file into xLights as a timing track, so as to integrate it with xLights functionality and accordingly be able to edit and adjust it.
On the sequencer tab , after creating a new musical sequence or opening an existing musical sequence, right click on the Timing name and select Import Timing Track. Browse to the location of the Papagayo pgo file and select the file.
Specify the number of frames to offset the data by. Due to a performance limitation in the Papagayo software, a sequence often had to be broken up into segments. In which case the second segment had to be offset by the number of frames of the first segment.
For the first segment being imported the offset is zero. Click on OK.
The Phrases, words and phonemes are imported and a timing track with the three components is created for each Voice contained in the PGO file. The phrases, words and phonemes can then be edited, moved and adjusted similar to one that had been created within xLights.
The following image shows a snippet of what the file contains. The 4th line contains the total number of frames and the 5th line has the number of Voices in the file, followed by the details for each voice.
With this setting activated, xLights will perform an backup (similar to a user pressing F10 to manually backup) each time the sequence is saved - when the user clicks on Save or Save As.
The existing files, including the saved sequence XSQ, will be backed up to the Backup folder in your show directory prior to the render executing and FSEQ file being created.
With this setting activated, xLights will perform an backup (similar to a user pressing F10 to manually backup) each time xLights is launched. The existing files will be backed up to the Backup folder in your show directory, prior to the application launching and updating any xLights files when it is launched. The Backup sub directory created will have a suffix of ‘_OnStart’ added to the folder name.
When selected, backups are made of all relevant files both in the show directory as well as any sub-directories (excluding the backup folder itself).
This drop-down sets how long xLights will keep backup. With "Never" selected xLights will not delete any backups. 365, 90, 31, and 7 days will delete backup folder older than the selected length. This helps to clear out older files and free up space.
This defines the location where the backup folder(Backup on Save/Launch or F10) will be saved. If the 'Use Show Folder' Checkbox is selected (the default) the backup files will be saved in the current show folder. If this is unchecked and a folder path is specified all the backup files will be saved to that location. If this folder doesn't exist (move computers or remove a harddrive) the backup directory will default back to the show directory.
This is the location where the Alternative backups will be saved. This is manually triggered with F11 or the File Menu option. This Backup function is intended as a secondary backup location, like a external hardrive or NAS device. By default the location is not set and will prompt you if you attempt to do a Alternative Backup and no folder is set. To enable, set the desired folder or drive location.
You can use this option to paste effects to cells of a different size to the cells you copied from. If the source cell was a full cell, then the target cells will be filled. If the source cell was ½ filled, then the target cell will also be ½ filled ie it will be pasted to the same proportion as the source cell.
Within each view, the models that are part of the view can be marked as visible or non visible via the button to the left of the model.
Then in your internet browser open to the following webpage… as shown here:
Key
Type
Function
t
Timing Add
Adds a timing mark to the currently selected position.
s
Timing Split
Splits the current timing mark in half
+
Zoom In
Also available by the Control+mouse wheel
-
Zoom Out
Also available by Control+mouse wheel
R
Random
Generate Random effects
Key
Type
Effect
o
Effect
On
O
Effect
Off
u
Effect
On - Fade Up
d
Effect
On - Fade Down
m
Effect
Morph
c
Effect
Curtain
i
Effect
Circles
b
Effect
Bars
y
Effect
Butterfly
f
Effect
Fire
F
Effect
Fan
g
Effect
Garland
p
Effect
Pinwheel
r
Effect
Ripple
x
Effect
Text
s
Effect
Spirals
w
Effect
Color Wash
n
Effect
Snowflakes
Type
Use Case
Single Node
Coro Faces with LED Lights/Dumb RGB Nodes. i.e. 7/8 Channel LOR Faces
Node Ranges
Coro Faces with Smart RGB Pixels Faces i.e. Boscoyo Singing Faces
Matrix
Smart RGB Pixels/P5/P10 Matrices
Backup Preferences contains all the backup and restore settings.
View Preferences contains settings related to the scaling and size of items on the screen.
Effects Grid Preferences contains settings for the Sequencer Effects Grid.
Sequences Preferences contains settings for rendering and saving sequences.
Output Preferences are related to sending data to physical hardware.
The Random Effects tab allows the user to set which effects are used by the Generate Random Effects Right click menu option in the sequencer.
The Color Tab allows the user to change the colors options of xLights.
Output Preferences contains settings that did not fall under the other categories.
Select the Sequence Settings option from the File menu. This screen can also be accessed by clicking on the button of the toolbar. The Sequence Settings screen has four tabs.
The Info/Media tab displays information about the sequence including the xLights release that was used to create the sequence, the number of models saved, the Sequence Type (i.e. Media or Animated), if media has been specified then the name and location of the media file. The sequence duration, the sequence timing and whether the media tags should be overwritten.
The sequence type, media file name or location, the sequence duration and whether media tags can be overwritten can be changed from this tab after the sequence has been created.
Sequence Duration determines the playback length of the sequence in seconds. For Media sequence types this is fixed to the media/audio file length used and cannot be changed. Animated Sequence duration defaults to 30 seconds and can be changed to the new length from this dialog.
Sequence Timing dictates the playback speed of the sequence. A Sequence Timing of 50 milliseconds would have a playback speed of 20 frames per second. Click the Question Mark to change the Sequence Timing.
Allow Blending Between Models determines if effects from the model groups blend with model level effects. If enabled the model groups effect data will be merged with the model effect data. If disabled models lower in the render order with override effect data of models higher in the render order.
Changes to the length of sequence duration, Sequence Timing, and Allow Blending Between Models require a "Render All" for the change to take effect in the current open sequence.
The Metadata tab enables the media metadata to be entered or updated. The attributes supported are the author, email, website, song, artist, album, music url and a comment.
This information does not drive any functionality in xLights.
xLights will parse and retrieve the information from the media file. It won't update any information entered on the media/info screen unless the Overwrite Media Tags setting on the Media/Info screen is ticked.
After updating any data Click on Done to Update.
The Timings tab enables you to create or import one or more sets of timing marks on timing tracks for the audio of your sequence.
This screen is part of the flow when creating a new sequence or can be accessed via this tab at any time after creating a sequence to add additional timing tracks.
Clicking on New will present you with a list of options. You can either select a fixed value such as 50 or 100 ms or select from one of the options in the list.
This component uses the VAMP plugins to generate the timing marks.
Selecting one of the options then presents a window where you can either select the defaults or change the timing name or any of the plug-in settings.
Click Ok and the audio track will be analysed and a timing track will be created. You can then click New again to select another timing track (‘Beats’) to be created.
Click Done when complete.
The Import button enables you to import timing marks created externally for example using Audacity or where you have created a timing track manually or wish to import one from another sequencer in a supported format.
You will be presented with a window to navigate to and select a file containing the timing marks to import to the timing grid. This can be a text file (.txt), a LOR .LMS/.LAS file, Papagayo .PGO file, LSP File, or, xLights .XML/.xsq/.xtiming file.
You can repeat this process to import another timing grid from the same file or from another file. Click Done when complete.
If the Render Mode is set to Erase (which is the default value), then the fseq file is erased before every render. If set to Canvas Mode, then the data in the fseq is not cleared before a render, rendering is done over the old data.
If set to Canvas mode, deleting an effect will still show when played until it is overridden with a new effect. Imagine a 6 foot painting in which you paint over a 4 foot section. The 2 foot original section is still visible. This is the how canvas mode works.
When should you use the data layer to import effects?
Typically if you have sequences from other sequencers such as LSP, LOR, Vixen, HLS that you wish to use within xLights. The imported sequence is mapped very efficiently as a data image rather than individual effects. After importing the sequencer you can:
Save it ( an .fseq file is created) and run it within xLights or via the Falcon Player
Add xLights effects to new models via the sequencer
Selectively override some of the effects from the imported models within xLights.
You cannot however ‘edit’ any of the imported effects directly. In order to do that see the Import Effects function. The data layer embeds the CONVERT tab into the sequence. The process is used to convert an incoming file from another sequencer into an *.iseq file. Therefore, Vix, Lms, Seq, and Hls data into an ISEQ file.
This conversion is done in two places.
When you a import a data layer
When you press the ‘Render All’ button
The purpose of ‘Render All’ is to render all the effects and data layers to the sequence object without saving to disk. The already imported ISEQ file data is used. If the source (‘LMS’, ‘SEQ’, ‘HLS’ etc) file is changed, then you need to go to the Data Layer tab, click on that layer and select the Re-Import function.
Before using this function, a new sequence should have been created or an existing sequence opened.
From the Main Menu tab, select Sequence Settings and then Data Layers.
Click on Import, navigate to where your input file (‘LMS’, ‘LSP’ etc) is, change the file type as required and select the file to be imported. Click ok.
On completion of the import, the Data layer details and the number of channels imported to the data later will be displayed. The file has been imported/converted and stored in an .iseq file.
The normal (and default) option is for the xLights ‘layer’ to be on the top and the imported sequence data represented below it. When rendered, the data is rendered from the lowest layer upwards, so the xLights effects will be rendered last. (Refer to discussion under Move Up/Move Down).
On the Main Menu, click on the ‘Render All’ button, after which the sequence can be played. Click on the ‘Save’ or ‘Save All’ buttons to save the sequence.
You must click Render All or Save the file after the Import function is complete, the data is not automatically rendered.
To view the details of the data that has been imported, double-click on the model's row title to reveal the strands and then the nodes. The imported effects are at the node level.
Use this function if you wish to delete a data layer that has been created via the import function. Select on the layer and delete.
While the most common use of this function is to import effects from a previous sequencer once per sequence, you can import multiple layers to be rendered at the same time. An example of this is where you may have two purchased LOR (or other) sequences for a mega tree singing faces. Or you may have xLights effects on a whole house model which you then want to be ‘overridden’ by the imported data layer.
Using the Up/Down buttons allow you to determine which layer will take precedence over the others. The highest layer will render last i.e. on top of the others and so forth.
Use this function, if you wish to re-import and overwrite an imported data layer. Normally required if the source i.e. LSP, LOR sequence has been amended in any way and you wish to overwrite the previous import without affecting any other effects that may have been added to the sequence within xLights. Select the data layer and click on the re-import function, after which, functionality is the same as the Import function.
The Color Tab allows the user to change the colors options of xLights. The First two Columns Relate to the colors in the Sequence Tab, while the third column changes Layout Colors.
These Colors are used for the Timing Tracks Header's background color in the Sequence Tab.
Changed the Timing Mark's Color.
Effects Changes the Color of the "Bounding Boxes" of the Effects
Selected Effect Color (When Mouse Click and Dragging to select multiple effects.)
Effect Referenced Color.(The Effect the Effect Settings Dialog is Currently Referencing)
Row Heading Background Color
Row Heading Text Color
Currently Selected Row Heading Color
Mouse Click and Drag Box Color
The color of the Gridlines between the rows and columns.(Red in the Picture Below)
Timing Track Label Background Color
Timing Track Label Outline Color
Singing Faces Phrases Background Color
Singing Faces Words Background Color
Singing Faces Phonemes Background Color
Timing Tracks that cannot be edited.
Selected Locked Effect (Click and Drag Select)
Locked Effect Referenced Color (The Effect the Effect Settings Dialog is Currently Referencing)
Audio Waveform Color
Audio Waveform Background Color
Audio Waveform Selected Color
Audio Waveform Selected Effect Interval Marker Color
Model Color
Model Selected Color
Color of other models with overlapping channels of the selected model. Overlap checks enabled must me active for this to appear.
Mouse Click and Drag Box Color
Import Color Settings from a .xtheme file saved on the computer.
Export Color Settings as a .xtheme file to use/import on other computers.
Reset Colors to the xLights Default colors
Cancel Color Changes and Close Preference Dialog
Save Color Changes and Close Preference Dialog
This function enables you to change the size of the tool icons that are used to represent the effects on the effects ribbon.
Four options are available:
The OpenGL setting is used to define what version of the OpenGL API is being used for certain components of xLight rendering of 2D and 3D graphics.
This option does not have to be used unless you see issues with the waveform or icons not being displayed or the sequencer is jerky. In which case, starting with 3.x and working downwards , select an option and restart xLights and check the results. Advise the xLights team, as it could be that your video card drivers on your computer need updating.
In 3D mode, Model and Objects sometimes do not look correct in the house preview on all videocards. The Render Order 1-6 options use different render methods to generate the model layout. If you are having unwanted visual artifacts, try a different options and see if the models look better on your specific computer.
This option will adjust the size of the model handles in the Layout Tab.
There are three sizes available:
"Always On" will display the window in all cases, "Always Off" won’t display the window and "Auto Toggle" will display the window if the effect supports it, else won't display the window if the effect does not have this capability. Click on an effect in the sequencer grid and expand the Effect Assist window. If "Always on" is selected and the effect is not supported by this window, then you will see a red X in the window.
This Options will display Play, Pause, Stop, Scrub Bar to the House Preview to allow control of the sequence playback. They will only appear if the house preview window is larger than 400 wide by 300 high.
Automatically Show the House Preview Window when the sequence is playing and hide the House Preview when the sequence is stopped.
This settings allows the user to provide a contact email for when xLights submits a crash report. This is completely optional.
This setting allows xLights to use the computer's GPU to render video files. If you are having issues with video files's not displaying, it is recommended to disable this setting.
This setting allows xLights to compile shader effects on a background. This can help improve render times of shaders.
If selected, when a sequence is packaged with the Package Sequence option, all effects presets are stripped from the xlights_rgbeffects.xml file.
If selected, when a sequence is packaged the audio file is skipped as it is generally not legal to share audio files with other people. When the recipient opens the sequence they will need to point to where the audio file is on their computer.
If excluding the audio from a packaged sequence, it is necessary to provide the source of the audio file to those the package sequence is being sent to. This is best done by filling on the metadata on the sequence settings for the song, artist, album, and music URL (link for download).
Set the Video Codec and bitrate used by the Export House Preview Menu Dropdown. H.264 is recommended new Macs (M1, M1 Max, M2) with hardware video rendering. MPEG-4 is an older/slower standard that will create large video files.
This option will cause xLights to save both the Controller Settings and Layout Settings when either save button is clicked.
When Uploading Controller Inputs and Outputs, this will cause xLights to do both upload actions when Upload Output is clicked.
If enabled this will prompt the user of error during batch render. These errors could be related to missing models and missing effect files. If disables these errors will be ignored and render will be skipped for the models involved.
Force xLights to download the newest Vender Models on startup. It is recommended to enable this option on fast internet connections.
Set the 'Level' of tips of the day, you will receive. Off will disable Tip of the day.
This function enables you to change the size (i.e. width of each band) of the sequencer grid.
Five options are available: Extra Small, Small, Medium, Large, Extra Large.
When an effect such as the Morph effect is placed between timing marks (as an example over several seconds long), a representation of the color changes over time for that effect.
If unchecked, then the effect on the sequencer grid will only show the generic effect icon and not the colors. Not all effects have this difference.
This function provides the ability to turn off the effect displaying colors at the node level.
Turning it off improves rendering performance and is recommended where effects are only being dropped at the model level. The value can be turned back on as required.
If checked, When moving or resizing an effect this will snap the effect beginning and/or endpoint to the closest timing make if you drag it close enough (approx 10 pixels on your monitor).
When "Play Timing" is selected, if you Double Click a timing mark, xLights will play the sequence for that timing mark interval. If "Edit Text" is selected, the Edit Label Dialog will appear. This Dialog allows you to input lyrics for singing faces or states for the state effect. The opposite option's functionality will works if you hold down shirt key then double click.
When Enabled, the audio waveform will appear smaller on the screen. This is designed for screens with lower resolutions.
If checked, color bars are display to represent transitions, like fade in or fade out.
Backing up your critical files and sequences should be done regularly – as good practice.
What should be backed up ? Anything you require to run your show, but in particular your XML sequences, your media files and your user specific xLights configuration files.
The xLights configuration files are located in your show directory and are: xlights_keybindings.xml, xlights_networks.xml and xlights_rgbeffects.xml
By default xlights backs up the key files at the start of a session when xLights is launched.
The files are saved in a subfolder with a timestamp and ‘_onstart’ suffix.
It will also create a backup when the show directory is changed. If you have enabled Backup on Save, it will also take a snapshot after every Save operation.
Pressing F10 anytime, anywhere will backup your XML files for you and store them in a new folder with the date/time embedded in the name the backup was created. You can press F10 as many times as you like and should do this at least once per sequencing session. Keep in mind that you must have saved at least once in order for an updated XML file to be protected.
Alternatively, from the File menu, select Backup.
You will be presented will a message indicating where a backup will be created. Click Yes to proceed. Every time this step is executed, a copy will be created of all the ‘*xml’ files from your show directory into the Backup subdirectory of your show directory. A new subfolder is created each time a backup is executed.
The F11 function does not do an auto (in memory) backup of the current sequence if you have one open. It will backup the open sequence XML contents from when it was last saved.
It is a good practice to also separately backup any files that you may have used as inputs to your sequences such as LSP, LOR, Papagayo files that you imported, media files that may have amended with audacity, GIF or JPEGs etc. You may also wish to backup any FSEQ files, though this can be recreated by saving the sequence again.
Backing up the show directory (and media directory if it is different) to an alternate location is the simplest way to ensure that you have the files required.
To summarise the backup functionality:
When xlIghts starts up - a folder timestamp_OnStart is created and the XML and XBKP files in the show directory are backed up there.
When F10 / F11 is pressed , a folder (timestamp) is created in the show/alt location and the above files are backed up there (referred to as an on demand save).
Every x (3,10,15,30) minutes , the current open XML file (i.e xxx.xml) is backed up (overwrite) to xxx.xbkp or __.xbkp (for a new unnamed sequence) in the show directory. This will occur if there have been any changes since the last auto save or on demand (F10/F11) save.
Every x minutes (same value as set above), the xlights_rgbeffects.xml is backed up to xlights_rgbeffects.xbkp in the show directory. This includes the layout as well. This will occur if there have been any changes since the last auto save or on demand (F10/F11) save.
If you need to recover, File -> Restore Backup
Select the backup folder from the left list and "check" which files to restore. The right list display basic data about the files found in the selected backup folder.
xlights_networks.xml file contains the controller tab data.
xlights_rgbeffects.xml file contains the layout, model, preview and preset data .
xlights_keybindings.xml files contains the keyboard shortcut settings.
The Sequence Tab can be used to backup sequence files.
Click the "Restore Files" button to start the restore process.
From the Edit menu , you can select the Undo, Cut, Copy and Paste functions and apply them where where applicable. As an example, when on the sequencer grid, you can highlight an effect, click Edit and then click on Copy (to copy the data to the clipboard). Move your cursor to where you want the effect to be duplicated and then click File and Paste.
You can also use the associated Ctrl keys instead i.e. Ctrl+C and Ctrl+V in this case. The functionality of each option is self explanatory.
These Options allow the user to shift or move the effects in a sequence. This is useful if the effects are not lining up with the music. This may be due to using a slightly different audio file or looking different on the actual physical lights as compared to that in xLights.
Note that the value entered is in milliseconds. 1 second is equal to 1000 milliseconds.
To shift the effects to the right, enter the number as a positive value. To shift the effects to the left, enter the number as a negative value.
Shifting effects works on both timing and effects.
The default setting is to render all the effects of all the models and groups when saving the XML. If this setting is unchecked (i.e. to turn off), then it will only save the sequence XML file when you click Save/Save As, resulting in a very fast save operation. If unchecked, then Render All must be used to populate the render buffer. You must Render All and then File Save to create a up to date FSEQ file.
When Enabled model like matrixes and trees can be set to render at a smaller resolution to help lower render times during sequencing.
When enabled, the Model Blending option in the sequence settings dialog will be enabled when creating a new sequence.
Select a View to default as the Master View when creating a new sequence.
Render Cache allows xLights to render an effect or group of effects once and then save the individual frames in memory (and on disk) so it doesn't need to render the frames again. This can speed up render times, as xLights does not need to re-render unchanged effects.
This defines where the render cache files are saved on disk. If "Use Show Folder" is 'checked' xLights will use the current show folder. If 'unchecked' and a folder path is specified all the Render Cache data will be saved to that location. If this folder doesn't exist (move computers or remove a harddrive) the Render Cache directory will default back to the show directory.
There is a purge render cache option under Tools->Purge Render Cache.
The Auto Save functionality creates a copy of your working sequence xml, in your show directory. By default, the open sequence will be saved every 3 minutes and will create or override a file ‘XXX.xbkp’ where ‘XXX’ is the name of your sequence. You can use this menu to change the timeframe this occurs at or to disable it. The ‘*xml.xbkp’ files will also be included when you press F10 to back up your xml files from the show directory. It won’t be included if F11 is used to back files up to an alternate location.
In order to recover your sequence file from an unexpected error or corruption to the point when the last autosave executed: e nsure that xlights is not active. Then rename your existing sequence file (’xxx.xml’) to another name and rename the ‘xxx.xbkp. file to ‘xxx.xml’. Restart xLights, open the sequence and Click on Render All.
This defines where xLights will search for audio/picture/video files, This should only be set if the audio/picture/video files are not stored in the current show folder or a sub-directory of the current show folder. On Mac OS, adding folders in this section will give xLights the correct permissions to search them.
This will save the current rendered data to the FSEQ file on save. If this setting is disabled, the user will have to preform a Render All after opening a sequence. It is recommended that thus setting always remain checked (enabled).
Version 1 is the "original" FSEQ file format. V1 files contain all the channel data and can be very large file. xLights, FPP, and most controllers support V1. Version 2 of the FSEQ file format added compression and "skips" off channels to reduce file sizes. FPP 2.5 and lower do not support the V2 file format. ZSTD, ZLIB, Uncompressed are additional options to select which compression format to use. ZSTD is the default and is the preferred setting. These options can be changed in xLights to generate FSEQ files in the different file format for devices that require them. xLights 2019.64 and FPP 2.6+ support all the available file formats.
This defines where xLights will save FSEQ files. The FSEQ files are the raw sequence data for each sequence. If "Use Show Folder" is 'checked' xLights will use the current show folder. If 'unchecked' xLights will use the set folder path. If this folder doesn't exist (move computers or remove a harddrive) the FSEQ directory will default back to the show directory.
The test tab enables you to test anything from a single channel; all channels for a model, group, or universe; or all channels by sending test patterns to the physical lights.
The controllers and lights must be connected to the computer running xLights in order for the test feature to work. The connection may be wireless or wired, but a means of communication is required.
Testing from xLights, especially when using multicast may flood your network with data, and result in slower network connections. This is especially noticeable when using the Zoom Room for live assistance.
Ensure that output is enabled by selecting the "Output To Lights" button (it should be selected by default).
When you first access the Test Dialog, you will be presented with three tabs. The first tab is a view of all the channels configured against each ‘Controllers’, with output (Universe/Channel range) defined in the Controller Definition shown under the controller name. You can click against the Controller or Output to select or deselect all channels beneath.
Once you have selected a set of channels, you can save this individual set up as a test configuration for future repeat testing by clicking on the Save button and specifying a name for that group of channels. You can load a previously saved test configuration by clicking on the Load button.
If you click on the second tab labeled 'Model Groups', the view with display all the Model Groups. You can then select one or more Model group to test.
You can also click against a Model Group which will then display all the models under the group. This is quite useful to test a model or group of models at a time.
The third Tab, will display a list of all 'Models'. You can test individual models or expand the model, by clicking the down arrow, and test the individual nodes.
Different test functions are available for RGB, non RGB lights. You can also select the options to execute different test cycles. You can also select and change background as well as highlight colors and control the speed of the function using the controls provided.
The 'Standard' Tab will test the individual channels. This is intended for AC lights. The 'Highlight Intensity' is the "High" channel value, while the 'Background Intensity' is the "Low" intensity. At value off 255 is 100% ON while 0 is OFF. By default, the Highlight Intensity is 255 and the Background Intensity is 0. 'Case' will set one channel at a time to the 'Highlight Intensity' and proceed thought all the enabled channels. 'Alternate' will set every-other channel to the 'Highlight' and 'Background' Intensity. 'Background Only' with set all the channels to the 'Background Intensity'.
The 'RGB' Tab will test the individual Pixel or Dumb RGB strands. Similarly to above, the 'Highlight Intensity' is the "High" channel value, while the 'Background Intensity' is the "Low" intensity. At value off 255 is 100% ON while 0 is OFF. By default, the Highlight Intensity is 255 and the Background Intensity is 0. The three sliders will set the Output Color. For Model with RGB color order, the first sliders would be Red, 2nd is Green and the third is Blue. For all color orders the the first sliders controls the first color, the second sliders the second color, and third sliders the third color. 'Case' will set one Pixel or group of three channels, at a time to the 'Highlight Intensity' and proceed thought all the enabled channels. 'Alternate' will set every-other Pixel or group of three channels to the 'Highlight' and 'Background' Intensity. 'Background Only' with set all the Pixel to the 'Background Intensity'.
The 'RGB Cycle' Tab will test the individual colors in a Smart(Pixel) or Dumb RGB strands. The 'A-B-C' option will turn on each individual colors of the selected output. For Model with RGB color order, this would be Red, then Green and then Blue. For all color orders 'A' the first color, 'B's the second color, and 'C' is the third color. The 'A-B-C-All' will cycle the color and add an all colors on state. 'A-B-C-All-None' additionally adds an all colors off state. 'R-G-B-W' with cycle four channel RGBW lights.
Output from the test tab is, in most cases, always in RGB sequence. It actually turns on every 3rd channel, i.e. 1,4,7,10 etc for red and 2,5,6,11, etc for green, etc and then all channels for white. A quick way to test your lights to ensure the correct RGB, BRG, GRB etc. is set properly, is to turn on channel 1. That should turn on RED. Next would be to turn on channel 2, that should be Green and finally Channel 3 should turn on Blue. Go to the first light of the string . Select the first 3 channels in the setup i.e 97,98, 99. Check that Model is defined as RGB. Use background color and move the first (Red) bar only up. Green turned on for first light. Move first bar down and move the second (Green) bar only up. Blue turned on for first light. Move second bar down and move the third (Blue) bar only up. Red turned on for first light. So the controller should be set to GBR.
If you wish that the ‘RGB definition’ of your model be used instead, then select the R-G-B-W option instead.
This will use the model definition and turn on the color that corresponds to the channel as defined in the model. So if the model definition is GBR, then the colors turned on will be Green, Blue, and Red respectively.
The Test Dialog enables you to test anything from a single channel, all channels for a model or all channels by sending different test patterns to your physical lights.
The Check Sequence option runs a series of verification routines against the currently loaded setup, layout and sequence. This process will generate a text file containing information on the controller outputs, channel mappings and model information as well as identify any potential issues which could cause problems within xLights. Selecting the option will open up a text file using the default text file editor on your computer.
ERRORS in a check sequence file indicate there is something wrong with your setup, layout, or sequence and the show will not run correctly. Errors should be fixed before trying to run the sequence from your controllers.
WARNINGS are indications that something is not typical, but the show will still run. Verifying that the warnings are intended, or correcting their cause is recommended before running the sequence from your controllers.
Cleanup File Locations will move all the files currently used by xLights (audio, videos, pictures, etc) into the Show directory. This is useful when backing up or packaging your sequence for sharing, so that all of the needed files and paths are retained.
This option will take the currently open sequence and packages it up neatly into a zip file with all the images, audio and other files necessary to open and re-render this sequence on another computer. If you plan on sharing a sequence with another person then this is the best way to ensure you grab everything the recipient will need to open and use your sequence.
The Download Sequences/Lyrics Dialog provides a list of free sequences available on the Google Drive. You can select a Sequence to download and xLights will open the download link in your default web browser.
This Dialog also contains links to the Singing Faces Project Lyric tracks. You must be a member of the singing faces project to access these files.
Batch Render allows the user to re-render multiple sequence files. This is useful if a Layout change was made and all the FSEQ files need to be updated. The "Filter" drop-down allows the user to select which folders to search for the sequence XSQ/XML files in.
Recursive Search - No Backups
Search the show folders and sub-folder not including backup folders.
Recursive Search
Search the show folder and sub-folder including backups folders.
Only Show Directory
Search Only the root show folder.
If "Recursive Search" or "Recursive Search - No Backups" is selected the "Folder" drop-down allows the user to select a sub-folder to limit the search too.
Place a check-mark next to the sequence XSQ/XML file name you plan to batch render. There is a right click menu to Select All or Select None.
Click OK to render all the Sequence XML file.
If a Error is found during batch rendering, xLights will display a popup and will stop rendering. Monitor batch rendering to verify all the FSEQ files are created correctly.
FPP Connect is used to upload to a Falcon Pi Player that is playing the role as a show player the channel and model configurations and one or more sequences (including associated audio).
Bulk Controller Upload allows the user to upload the E1.31 Universe Inputs, and Controller String port Settings. Check the controllers you would like to upload and click upload.
Right Click to enable options to Select Controllers based on Active, Auto Config or FPP Proxy
HinksPix Export dialog is used to generate the required SD card files to use the HinksPix controllers in standalone mode. The selected sequences files will be generated for the selected controllers.
This dialog allows the user to run Lua scripts to automate xLights functions.
The Export Models functionality creates a Spreadsheet (.xlsx) file with the details of all your models. Click on the Export Models menu item. You will be prompted for a filename and location to create the file in. Specify the filename and click OK.
The Spreadsheet file will be created with a row for each model defined listing all the key attributes. Additional sheets are added with group attributes and global Channel/pixel counts. Spreadsheet programs such as Microsoft Excel or LibreOffice are used to view the .xlsx files.
The Export Effects functionality creates a CSV file with the details of all the effects in the open sequence. Click on the Export Effects menu item. You will be prompted for a filename and location to create the file in. Specify the filename and click OK.
A CSV file will be created with a row for each effect defined listing all the key attributes. In addition summary rows are created showing the number of times each sequence is used as well as the total duration of each effect.
The Export Controller Connections option creates a Spreadsheet with all the controller to model wiring information. This is meant to be used as a prop "hookup" list.
The View Log option, enables a user to view the information / debug log that xLights maintains, if required to troubleshoot any problems and provide information when posting questions. Selecting the option will open up a text file using the default text file editor on your computer. Scroll to the bottom to view the latest messages that have been written to the log.
The Package Log Files option, provides functionality to package the required xLights XML/XSQ and log files into a ZIP file which can then be provided for analysis. It is similar in content to the ZIP file created when a system crash occurs.
From the Tools menu, with the sequence that needs to be investigated open, select the Package Log Files option. The required files will be zipped into a file ‘xLightsProblem.zip’ and you will be prompted to save it in the show directory.
You can change either the ZIP file name and/or the location before saving the file.
The zip file will contain the xLights network, rgbeffects, the sequence XSQ (if open is open) and a log file. The zip file can then be provided to the xLights team for analysis.
To speed up loading, xLights caches(saves) the download items(Vender Model List, Free Sequence List) for up to 5 days. Purge Download Cache deletes the cached files and forces xLights to downloaded the newest version. This is needed when there are updated to the files available for download, but xLights is not seeing the newest list.
The Render Cache is used to save rendered effects data to speed up render times. This option deletes the cache and forces xLights to re-render all the effects.
This 2D Path Generate Tool allows you to create X and Y value curve "paths" that can then be used by effects like the shape effect.
Click and Drag the endpoint Dots, to move them. Double Click to add a new Line Segment. The Browse button allows the user to load a image to trace if needed. The slider will adjust the image brightness. Load will allow you to edit previously generated files. The Generate Button will save the path to two value curves files (X & Y Direction) to be loaded by an effect.
The Generate Custom Model function enables you to generate an xLights custom model using a picture or video of the physical item. You should have defined your controller and need to know which channel the model will start on and how many channels.
This tool is used to take a model with valid/useful face definitions, state definitions and submodels and remap them onto a model with a reordered wiring layout. The two models must be identically dimensioned custom model with pixels in all the same positions.
The Generate Lyrics From Data allows xLights to generate Lyric Timing Tracks with Phonemes from channel data. This data can be a LOR LMS or LAS file, that has been imported as a data layer first. Select the start channel of the channel data and the offset for each mouth movement channel. xLights will then generate the Phonemes Track from this data.
The Convert function is commonly used to convert a sequence file from one sequencer format to the format of another sequencer or to the format (.fseq) required to run via Falcon Player on a Raspberry Pi or BeagleBone Black controller.
This is not to be used to convert files into an xLights sequence – use the Data Layer or Import, Import Effects options to achieve that.
Prepare Audio allows xLights to load an audio "Cut List" file and edit an audio file to remove sections of a song or combine multiple songs. Reaper project files(.rpp) and xAudio Files (.xAudio) Files are supported.
The User Lyric Dictionary Dialog allows the user to manually add word phonemes breakdowns to the user dictionary file in the current show folder. This list will be used in addition to the standard and extended library, to breakdown works when creating lyric tracks. Enter your new work into the first text box. The second text box will auto search the current word list and find similar words and display their phonemes. The second box supports multiple words separated by a space. Once you are happy with the phonemes breakdown you can add it to the library.
Windows and Linux - This menu option will launch the xLights scheduler/player xSchedule.
Windows and Linux - This menu option will launch the xCapture E131 Recording Tool.
Windows and Linux - This menu option will launch the xScanner, which can be used to discover controllers located on the network.
MacOS - This menu option will launch the second instance of xLights that can be used for mapping sequences.
Click on the Save or Save As icon to save the sequence.
Since this is the first time that the sequence is being saved, the Save As dialogue box opens for a file name to be provided. If saving an audio sequence the filename field will be prepopulated with the Audio file name as the sequence name.
Provide a name and then click Save.
The ‘# Canes’ value can be set to the number of canes that the model represents (normally one). Similarly you can set the nodes per cane and lights per node (normally 1). The angle of the cane can be adjusted by changing the Cane Rotation value, or grab and move the top of the cane clockwise or anti clockwise.
Select the Reverse attribute to set the the crock of the cane facing the opposite direction. Select the Sticks attribute to set the cane to be a straight line without the curved crock.
In this example, a Candy Cane model has three canes in one set. Each cane has 18 nodes in it.
The start channel address is 1 and it is has RGB pixel nodes so it will use 54 channels.
Alternate Nodes will skip every other hole to allow wiring up and down each candy cane and prevent wire splicing.
Presets are a way to save an effect and easily recall it later to speed up sequencing.
You can also send snippets of your effects to other people and import and use snippets of effects supplied by other people without having to import an entire model.
The Effect Presets window enables presets to be managed. You can group them and perform a number of actions.
Against each preset name, the count of the number of effect layers is displayed.
To save an effect (which can span layers and models) as a preset, highlight the effects that you want to save, right click and select Effect Presets. Under the Favorites tree, you can first create a group that describes the type of effect that you are going to save (Spirals, Bars, etc). Click on Add group and give the group a name (‘Spirals’). Then select the group and click New Preset and give the Preset name (‘Red and White Spirals’) and press OK
To retrieve a preset that has been saved, go to a location on the grid where you wish the preset to be placed, right click on the sequencing grid, select Effects Preset, scroll to and locate the preset you want and double click on it to have it copied to your location, or select Apply Effect.
If you change something within an effect preset that you have selected, you can update it by clicking Update Preset.
To export a preset , select the Preset name from the list in the Preset panel, then click on Export preset. Specify a name and click on Save. A file with the selected name and a ‘.xpreset’ suffix will be created.
To import a preset, click on Import Preset, browse to where the ‘.xpreset’ file is located, select it and then then click on Open. A preset will be created under the highlighted group with the name of the selected file.
You can move an effect preset from one group to another group by dragging it across from one group to another. You can also highlight the name and delete it or rename it.
To create a new sequence, either use the New Sequence icon, select New Sequence from the File menu or press Ctrl N. The following screen is displayed:
If you do change your mind about creating a sequence, click on the Don’t Create Sequence button.
If creating a music sequence, click on Musical Sequence. A ‘Choose Audio File’ window will open, defaulting to your media directory.
You can select ‘FPP Audio files’ or ‘xLights Audio files’ to filter which file types can then be selected.
FPP Audio files: *.mp3;*.ogg;*.m4p;*.mp4
xLights Audio files: *.mp3;*.ogg;*.m4p;*.mp4;*.avi; *.wma;*.au;*.wav;*.m4a;*.mid;*. mkv;*.mov;*.mpg; *.asf; *.flv;*.mpeg.
If in doubt, select FPP Audio files.
The most common supported files on the FFP are .mp3 and .ogg. There is limited support for .mp4 and .m4p files for audio. Constant Bit Rate (CBR) audio works well. Variable Bit Rate(VBR) is quite uncommon.
Select the frames per second (fps) for your sequence.
The most common one used is 20fps (50ms).
On the Timing tab you can select one or more of a number of timing bar options, which will generate timing marks automatically (similar to those that can be done via Audacity).
If intending to create an xLights sequence, on the next screen, select the View that you wish to use on the sequencer screen (use the Drop down if the View displayed is not what you require) and then press Quick Start.
The next screen displayed will be the sequencer grid and all the models from the selected View, will be displayed.
If you selected More options from the previous screen, then you are presented with this screen.
If creating an xLights sequence, at this stage you can select ‘Done’ and import timing marks later (either via the Timings menu or by Right Clicking on the Sequencer menu). Alternatively, you can click on the Timings tab now – this will lead to the Timings menu.
Press either Skip or click on Done. If you pressed Skip then the following screen is displayed:
If you click on the Edit Metadata tab, this will lead to the Sequence Settings dialog box. You can Import a Timing Track or click on any of the tabs for the corresponding functionality.
Click on Done when complete.
At this stage a new empty sequence has been created. You can...
Select Save to save the sequence in your show directory – you will be prompted for a sequence name.
Click on the Sequencer tab and continue with
Adding models for this sequence to the sequencer view,
Creating/adding timing marks
Dropping effects on the sequencer grid
Playing the sequence
Ensure that you save the sequence prior to exiting to save the work that has been done so far. By default though, the layout and sequencer changes are saved every 3 mins to a backup file i.e. ‘xxx.xbkp’ file in your show directory (where xxx is the name of the sequence).
If creating an animation sequence, click on Animation Sequence. No media/audio file is required or requested for.
This option enables you to create a timing track with marks at fixed intervals of your choice e.g every 1 second or every 5 secs. This is especially useful for animation sequences so that you don’t then have to go through and create timing marks manually.
Click on Timing and then from the drop down window , select the Metronome option.
In the popup window select the timing interval between each mark in milli secs ie 1000 for every 1 sec, 5000 for 5 every secs etc.
It must be a multiple of the base timing selected (ie 50 millisecs if 20fps was selected on the previous screen).
Click on Done when complete. xLights will create a Timing track with timing marks at the specified intervals.
The subsequent process is the same as in the Musical Sequence. By default, xLights will create an animated sequence that is 30 seconds in length. To change this , click on File, Sequence Settings and you can change the Sequence Duration.
To use ArtNET or E1.31 frame synchronization then you need to enable it using this option. When enabled xLights will emit at the end of the frame a sync packet which supported controllers will use to trigger light output. This can make your show look a lot sharper but very few controllers support these packets.
For ArtNET you just need to select this option.
For E1.31 you also need to set a universe number on the controller tab … this universe number needs to be a universe you are not otherwise using.
By default xLights automatically selects which network interface to send out network data on and sometimes it selects the wrong one. To force xLights to send to a particular adapter select this option and select the IP Address of the adapter you want to use. Select the top blank line to disable forced IP mode and return to the default option of auto.
This selection allows xLights to "skip" frames that contain the same data as the previous frame. This can help with lagging, as it will reduce network traffic. xSchedule will also use this setting when outputting data.
When using the Jukebox Panel with xFade or xSchedule, this determines which instance of xLight to select the effect from.