<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.phidgets.com/docs/index.php?action=history&amp;feed=atom&amp;title=Using_xLights_with_Phidgets</id>
	<title>Using xLights with Phidgets - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.phidgets.com/docs/index.php?action=history&amp;feed=atom&amp;title=Using_xLights_with_Phidgets"/>
	<link rel="alternate" type="text/html" href="https://www.phidgets.com/docs/index.php?title=Using_xLights_with_Phidgets&amp;action=history"/>
	<updated>2026-06-11T04:17:57Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://www.phidgets.com/docs/index.php?title=Using_xLights_with_Phidgets&amp;diff=35679&amp;oldid=prev</id>
		<title>Mparadis: Mparadis moved page Using XLights with Phidgets to Using xLights with Phidgets</title>
		<link rel="alternate" type="text/html" href="https://www.phidgets.com/docs/index.php?title=Using_xLights_with_Phidgets&amp;diff=35679&amp;oldid=prev"/>
		<updated>2026-06-10T22:23:15Z</updated>

		<summary type="html">&lt;p&gt;Mparadis moved page &lt;a href=&quot;/docs/Using_XLights_with_Phidgets&quot; class=&quot;mw-redirect&quot; title=&quot;Using XLights with Phidgets&quot;&gt;Using XLights with Phidgets&lt;/a&gt; to &lt;a href=&quot;/docs/Using_xLights_with_Phidgets&quot; title=&quot;Using xLights with Phidgets&quot;&gt;Using xLights with Phidgets&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:23, 10 June 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Mparadis</name></author>
	</entry>
	<entry>
		<id>https://www.phidgets.com/docs/index.php?title=Using_xLights_with_Phidgets&amp;diff=35678&amp;oldid=prev</id>
		<title>Mparadis: Created page with &quot;Category: Project {{TOC limit|3}} {{#seo:|keywords=xLights, ws2812, christmas lights}} {{#seo:|description=Learn how to use a Phidgets addressable LED controller with xLights software.}} ==Introduction== link= xLights is a free and open-source comprehensive light control platform that helps create small or large light displays quickly, without the need for coding. This guide will walk you through how to add the Addressable LED Phidge...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.phidgets.com/docs/index.php?title=Using_xLights_with_Phidgets&amp;diff=35678&amp;oldid=prev"/>
		<updated>2026-06-10T22:11:43Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&lt;a href=&quot;/docs/index.php?title=Category:Project&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Category:Project (page does not exist)&quot;&gt;Category: Project&lt;/a&gt; {{TOC limit|3}} {{#seo:|keywords=xLights, ws2812, christmas lights}} {{#seo:|description=Learn how to use a Phidgets addressable LED controller with xLights software.}} ==Introduction== &lt;a href=&quot;/docs/File:XLights.png&quot; title=&quot;File:XLights.png&quot;&gt;400px|thumb|link=&lt;/a&gt; xLights is a free and open-source comprehensive light control platform that helps create small or large light displays quickly, without the need for coding. This guide will walk you through how to add the Addressable LED Phidge...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category: Project]]&lt;br /&gt;
{{TOC limit|3}}&lt;br /&gt;
{{#seo:|keywords=xLights, ws2812, christmas lights}}&lt;br /&gt;
{{#seo:|description=Learn how to use a Phidgets addressable LED controller with xLights software.}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
[[Image:xLights.png|400px|thumb|link=]]&lt;br /&gt;
xLights is a free and open-source comprehensive light control platform that helps create small or large light displays quickly, without the need for coding. This guide will walk you through how to add the Addressable LED Phidget as a controller in xLights. &lt;br /&gt;
&lt;br /&gt;
== Demonstration ==&lt;br /&gt;
&amp;lt;center&amp;gt;{{#ev:youtube|G6JIiXuTe18|rel=0}}&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Hardware==&lt;br /&gt;
This project uses the following parts:&lt;br /&gt;
* [{{SERVER}}/?prodid=969 PhidgetSBC4 (SBC3003_0)]&lt;br /&gt;
* [{{SERVER}}/?prodid=1368 Addressable LED Phidget (LED0100_0)]&lt;br /&gt;
* [{{SERVER}}/?tier=2&amp;amp;catid=28&amp;amp;pcid=24 USB Cable]&lt;br /&gt;
* [{{SERVER}}/?tier=1&amp;amp;catid=61&amp;amp;pcid=54 12V Power Supply for PhidgetSBC]&lt;br /&gt;
* [{{SERVER}}/?prodid=1011&amp;amp;pcid=77 Ethernet cable]&lt;br /&gt;
* 16x16 Addressable LED Array&lt;br /&gt;
* 5V 3.5A Power Supply for LEDs&lt;br /&gt;
* Windows, macOS or Linux computer&lt;br /&gt;
&lt;br /&gt;
==Assembly==&lt;br /&gt;
[[Image:xL_setup.png|link=|700px]]&lt;br /&gt;
&lt;br /&gt;
Assemble the system following these steps:&lt;br /&gt;
* Connect your LED array to the Addressable LED Phidget&lt;br /&gt;
* Connect the Addressable LED Phidget to the PhidgetSBC4 using a USB cable&lt;br /&gt;
* Connect the PhidgetSBC4 to your network router or switch with an ethernet cable&lt;br /&gt;
* Connect the 12V power supply to the PhidgetSBC&lt;br /&gt;
* Connect the LED power supply to the Addressable LED Phidget. Here, our LED array requires 5V.&lt;br /&gt;
&lt;br /&gt;
== Server Setup ==&lt;br /&gt;
&lt;br /&gt;
=== SBC Web Configuration ===&lt;br /&gt;
In this project, we&amp;#039;ll be using a client (our desktop computer) and a server (the PhidgetSBC4). &lt;br /&gt;
&lt;br /&gt;
To start, we need prepare the PhidgetSBC4 with the required packages and configurations. Log into the SBC&amp;#039;s web interface by double clicking on its control panel entry:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_controlpanel.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Next, follow these steps:&lt;br /&gt;
#Log in and navigate to &amp;#039;&amp;#039;&amp;#039;System -&amp;gt; Packages&amp;#039;&amp;#039;&amp;#039;. &lt;br /&gt;
#Install the &amp;#039;&amp;#039;&amp;#039;C/C++ Development Tools/Headers&amp;#039;&amp;#039;&amp;#039;. &lt;br /&gt;
#&amp;#039;&amp;#039;&amp;#039;Refresh Available Packages&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;Upgrade All Packages&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_packages.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, go to &amp;#039;&amp;#039;&amp;#039;Network -&amp;gt; Settings&amp;#039;&amp;#039;&amp;#039; and enable the SSH server if it isn&amp;#039;t already enabled.&lt;br /&gt;
&lt;br /&gt;
=== Installing the Server ===&lt;br /&gt;
&lt;br /&gt;
Now that SSH is enabled, we can remote in with SSH software (we recommend  [https://www.chiark.greenend.org.uk/~sgtatham/putty/ PuTTY]). Or, you can plug a monitor and keyboard into the SBC4 and complete the rest of this section in the terminal directly.&lt;br /&gt;
&lt;br /&gt;
If you don&amp;#039;t already have &amp;#039;&amp;#039;&amp;#039;git&amp;#039;&amp;#039;&amp;#039; installed, you can get it with the following commands:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
apt update&lt;br /&gt;
apt install git&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you don&amp;#039;t already have the &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; command installed, you can get it with:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
apt install build-essential&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Navigate to &amp;#039;&amp;#039;&amp;#039;/usr/userapps/&amp;#039;&amp;#039;&amp;#039; (you&amp;#039;ll have to create the userapps directory if this is the first project on this SBC) and use the following command to download the server project files:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
git clone https://github.com/PhidgetsInc/openpixelcontrol-ph22.git&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All of the files and folders for the server code will be added in a folder named &amp;#039;&amp;#039;&amp;#039;openpixelcontrol-ph22&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
If you&amp;#039;re not experienced with the terminal, we recommend switching back to the SBC web interface at this point. Go to the &amp;#039;&amp;#039;&amp;#039;Projects&amp;#039;&amp;#039;&amp;#039; tab and you should see the project folder. Click on the folder to open it.&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_project1.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Scroll down and click the &amp;#039;&amp;#039;&amp;#039;make&amp;#039;&amp;#039;&amp;#039; button to build the project.&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_make.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Once it&amp;#039;s done building you can test the server by returning to your SSH terminal and typing &amp;#039;&amp;#039;&amp;#039;./bin/Phidget_server&amp;#039;&amp;#039;&amp;#039; from the project folder. If it&amp;#039;s successful, you should see this:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_serverRunning.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Once the server is running, we can configure our client.&lt;br /&gt;
&lt;br /&gt;
== Client Setup ==&lt;br /&gt;
&lt;br /&gt;
To begin, install [https://xlights.org/ xLights] on your client computer.&lt;br /&gt;
&lt;br /&gt;
=== Controller Configuration ===&lt;br /&gt;
&lt;br /&gt;
Open xLights and add a new ethernet controller under the controllers tab:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_controller.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* The &amp;#039;&amp;#039;&amp;#039;Protocol&amp;#039;&amp;#039;&amp;#039; should be set to &amp;#039;OPC&amp;#039;.&lt;br /&gt;
* The &amp;#039;&amp;#039;&amp;#039;Message Data Size&amp;#039;&amp;#039;&amp;#039; should be equal to the number of LEDs in your display multiplied by the number of color channels. This project uses a 16x16 grid of RGB lights, so the data size is 768. For a strand of 100 RGBW lights, the data size would be 400.&lt;br /&gt;
* The &amp;#039;&amp;#039;&amp;#039;IP address&amp;#039;&amp;#039;&amp;#039; needs to be set to the SBC&amp;#039;s IP, which you can find in the Phidget Control Panel:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_IP.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
=== Layout Configuration ===&lt;br /&gt;
&lt;br /&gt;
The layout lets you accurately model your lights in xLights. For a simple LED strip click on &amp;quot;Single Line&amp;quot;, and for a grid, use &amp;quot;Matrix&amp;quot;. Then click and drag in the black space to create the model.&lt;br /&gt;
[[Image:xL_layout.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Once it&amp;#039;s created, click on your model to access the options.&lt;br /&gt;
[[Image:xL_layoutOptions.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
We won&amp;#039;t be going in depth on all the layout options in this article, but you can find more information in xLights&amp;#039; official documentation. For now, the important thing is to select &amp;#039;&amp;#039;&amp;#039;Use Start Channel&amp;#039;&amp;#039;&amp;#039; for the controller. Next, click on start channel and click on the &amp;#039;...&amp;#039; that appears. For &amp;#039;&amp;#039;&amp;#039;Universe number&amp;#039;&amp;#039;&amp;#039; select the IP address of the SBC. &lt;br /&gt;
[[Image:xL_universe.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
In order to have our 16x16 grid display properly, the Strings, Nodes/String, and Strands/String must be set to 4, 64, and 4. This is because the LEDs are laid out in a zig-zag pattern. If you&amp;#039;re using a strip, you can just set it to 1, N, 1, where N is the number of lights in your strip.&lt;br /&gt;
&lt;br /&gt;
=== Sequencer ===&lt;br /&gt;
&lt;br /&gt;
Once your controller and layout are set up, you can move to the sequencer tab and do &amp;#039;&amp;#039;&amp;#039;File -&amp;gt; New Sequence&amp;#039;&amp;#039;&amp;#039;. Select &amp;#039;Animation&amp;#039;, &amp;#039;40fps&amp;#039;, and &amp;#039;Quick Start&amp;#039;. &lt;br /&gt;
&lt;br /&gt;
Now you can choose one of the effects from the effects bar and drag it into the row in the timeline corresponding to the layout you created. Drag it out so it lasts longer than a few seconds. Click on the play button, and you should see the effect play out on the preview in the bottom left. You can play with the Effect Settings and Colors windows to customize the effect.&lt;br /&gt;
[[Image:xL_timeline.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Further details on creating sequences fall outside of the scope of this article, but you can see the official xLights documentation for more information. &lt;br /&gt;
&lt;br /&gt;
Now that your sequence is set up, you can click the lightbulb icon to attempt to connect to the SBC&amp;#039;s server.&lt;br /&gt;
[[Image:xL_bulb.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
If it&amp;#039;s successful, you&amp;#039;ll see the IP address of your client appear in your SSH terminal:&lt;br /&gt;
[[Image:xL_sshConnect.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
When you hit play, you should see your lights activate.&lt;br /&gt;
&lt;br /&gt;
[[Image:animation.gif|link=|center]]&lt;br /&gt;
&lt;br /&gt;
== Running the Project on Boot ==&lt;br /&gt;
&lt;br /&gt;
Now that you&amp;#039;ve confirmed the server and client work using SSH or a local terminal, we can set the program to launch on boot as a daemon.&lt;br /&gt;
&lt;br /&gt;
Open the SBC web interface again and navigate to your project. Scroll down to &amp;#039;&amp;#039;&amp;#039;Startup Settings&amp;#039;&amp;#039;&amp;#039; and enable it, selecting &amp;#039;&amp;#039;&amp;#039;bin/Phidget_server&amp;#039;&amp;#039;&amp;#039; as the executable and clicking the save button below.&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_startup.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
The next time you power cycle the SBC, the server will run and you should be able to connect with your xLights client.&lt;br /&gt;
&lt;br /&gt;
== Running Autonomously on the SBC ==&lt;br /&gt;
&lt;br /&gt;
You may find that having a second computer running the xLights app 24/7 is a bit overkill for the size and scope of your project. If you just want the SBC to run a few patterns on a loop all by itself, but you still want to use xLights to design the pattern, you can have the SBC act as both client and server for the OPC stream.&lt;br /&gt;
&lt;br /&gt;
Open an SSH connection and go back to the /userapps/ directory on your SBC. Run the following command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
git clone https://github.com/PhidgetsInc/opcdecode-ph22.git&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This project requires &amp;#039;&amp;#039;&amp;#039;libzstd&amp;#039;&amp;#039;&amp;#039; to run. Install it with the following command:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
apt install libzstd-dev&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You should now have a second project visible in the SBC web interface:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_project2.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Click on openpixelcontrol-ph22 and start the project:&lt;br /&gt;
&lt;br /&gt;
[[Image:xL_startProj.png|link=|center]]&lt;br /&gt;
&lt;br /&gt;
Then go back and do the same for opcdecode-ph22. You should see your lights turn on and display the default pattern.&lt;br /&gt;
&lt;br /&gt;
You can now configure both projects to run on boot as we did in the previous section, which will cause the pattern to display autonomously on boot, even if the SBC isn&amp;#039;t connected to any network. You can design and save your own sequence in xLights and copy the .fseq file to the SBC to customize the pattern.&lt;/div&gt;</summary>
		<author><name>Mparadis</name></author>
	</entry>
</feed>