Getting started with non-addressable LEDs
In this guide I will show you what you need for an Audectra project with non-addressable LEDs, how to connect everything together and how to set everything up in Audectra. In my terminology non-addressable LEDs are either strips or panels with RGB LEDs, where you can’t control each LED individually. Thus, the whole strip or panel acts as one pixel. In contrast to addressable LEDs, these are typically controlled by PWM (Pulse Width Modulation).
Lets discuss first what you’ll need for this kind of project. Beside the RGB strip or panel, referred to as target, you will need the following components.
This component is responsible for applying the render it receives from Audectra to your target. Currently, Audectra is capable of pushing the render encapsulated in the TPM2 or TPM2.Net protocol down to your bridge controller either over a serial interface or UDP. Since there is no TPM2 controller available, which is capable of applying a single pixel RGB information to non-addressable LEDs, at least as far as I know, you need to build such a bridge.
The simplest way to achieve this is by getting an Arduino or Teensy controller with at least three analogue outputs (PWMs) for this purpose. I’ve prepared a base firmware for you, giving you a working starting point for your bridge. You can get it from our Github repository. If you want to have multiple channels on the bridge for multiple targets, keep in mind to check if there are enough analogue outputs available on your controller! If you need help with this step, you are more than welcome to ask for help in the forums.
Because the bridge controller in general ain’t capable of switching or driving your target directly, you need an RGB amplifier for this purpose. Its job is to lift the PWM output voltage of your bridge to either 12 V or 24 V (depending on what voltage your target needs, 12 V is the most common). Additionally, it has to be robust enough to drive your target even at full brightness. Also, it is recommended to put an amplifier at least every ten meters of strip, otherwise you would experience a drop in brightness over the length of your strip.
You can buy such RGB amplifiers all over the internet, if you don’t insist on building one on your own. Check if the amplifier is inverting your input or not. This means, if you apply a black color on your bridge (turn off all PWMs) but your target shines in a bright white color, your amplifier is probably inverting. You can easily correct this in our base firmware by setting the “InvertOutput” flag in the software to 1.
Don’t underestimate your power hungry strips or panels! Follow this guide to select the right power supply for your project!
Building the setup
The following illustration shows you roughly how to connect everything up.
The host is the PC, where you are running Audectra. The bridge receives the output render, which in this case is a simple single-pixel single-channel configuration, and applies the received color to its analogue output (PWM) ports (R, G & B). These PWM signals are then amplified through the RGB amplifier, which needs an additional power supply to drive your target. Finally, the output signals of your amplifier are applied on your target.
First steps in Audectra
Lets hook up your new target by adding a new client in Audectra and creating a sample project. If you need some help with the user interface, take a look at this guide!
Adding a new client
Lets start by hooking up our bridge into Audectra. Open the bridge settings by on opening the "Settings" menu in the menu bar and selecting the menu item "Bridges". This will open the "Bridge Settings" dialog.
Click on "Add" on the right side of the "Bridge Settings" dialog. This will open the "Bridge Wizard", which will guide you through the process. First, you need to specify the connection settings. Note, that these settings depend on your system and configuration.
Clicking next will allow you to set the channel configuration for your bridge. In this guide, we assume that our bridge only has one channel. Click on the "+" button to add a new channel to the channel configuration of your bridge and adjust its dimensions to 1×1.
Follow and finish the bridge wizard to add the bridge. Our bridge should now be listed in the bridge settings dialog.
Close the "Bridge Settings" dialog, by clicking on the "Close" button on the bottom right corner.
Creating a sample project
With our bridge connected to Audectra, lets create a new project for it. Open the "File" menu in the menu bar and select the menu item "New Project". This will open the "Project Wizard", which will guide you in creating a new project. Select the project type "Non-Addressable" and finish the project wizard. This will add the new project to the project tree on the left side of Audectra.
Rename the project by selecting it, right-click on it and select the menu item "Rename" in the context menu. You will be able to rename the project in place.
Patching up the project
In this step, we will configure Audectra to push the projects output render to our target. This process is called patching the render, because Audectra allows you to create patches of the projects render output and split it up to multiple targets.
Select the project, right-click on it and select the menu item "Add new Patch". This will open the "Patching Wizard", which will guide you through the patching process. On the first page of the wizard, select the channel we've configured earlier on our bridge.
Click next and select "Lines -> Top Left" as patching mode. Note, that any patching mode will work the same for a 1×1 patch.
The next page will prompts you to position the patch on the project. Position it at (0, 0), click on next and finish the wizard.
After finishing the wizard, you can see the applied render patch in the project tree under "Patches".
Adding a project state
So far we have connected our new target, added a new project and configured the project to push the output render to our new target. Now we need to add a state to our project. Right-click on the selected project and select the menu item "Add new State" in the context menu. This will add a new state, named "State 0", to the project.
Rename the state by selecting it, right-click on it and select the menu item "Rename" in the context menu. You will be able to rename the state in place.
Adding some effect layers
Lets say we want to make a simple bass light. With the newly created state selected in the project tree, click on the "Layers" tab to open the layer configuration for the selected state.
Add a new layer by clicking the "+" button under the layer list. This will prompt you with the "Effect Wizard", asking you to choose the effect you want to add to this state. Select the "Simple Color" effect and click on finish, which will add the effect to your layer list. Rename the layer by selecting it, right-click on it and select the menu item "Rename" in the context menu. You will be able to rename the layer in place.
Your target should now light up according to what you see in the layer preview. If it doesn’t, check your configuration and setup again. If you need further assistance, don't hesitate to ask for support.
Next, we want to choose the color of our bass light. To achieve that, we open the layer settings by selecting our layer, right-clicking on it and selecting the menu item "Layer Properties" in the context menu. This will open the "Layer Settings" dialog for the selected layer. In our case, the "Simple Color" effect only has settings for the color. Choose the HSV color model by selecting the "HSV" radio button. Move the second slider (saturation) and the third slider (value) to their maximum. Then choose your preferred bass color by moving the first slider (hue).
Why using the HSV color model for this project? It allows us to change the value/lightness of our bass color without changing its hue. Thus we can bind the value property of our slider to the spectral energy in the bass ranges. Click on the "Bind" button beside the right slider in the layer settings dialog. This will open the "Expression Editor". Enter the following expression into the expression editor.
Sqrt(Spectral.Bins.SubBass.MeanEnergy + Spectral.Bins.Bass.MeanEnergy) / 2
This will combine the spectral energy of the sub bass and the bass frequency bins into the value/lightness of our bass color.
You can adjust the scaling however you see fit for the music you are listening to. If you are happy with the preview graph on the bottom of the expression editor, click on "Save" to save the expression. To enable the binding with our defined expression, simply right-click on the "Bind" button beside the third slider. This will activate the binding and turn the button green.
Close the layer settings dialog. You've successfully created bass light with Audectra!
Saving the project
Lets save our new project by right-clicking on our selected project in the project tree and selecting the menu item "Save" in the context menu. This will open a dialog, asking you to specify the path and name for your project file. Click on “Save” and you’re done.
The next time you start Audectra, you can load this project by opening the "File" menu in the menu bar and selecting the menu item "Load Project". This will open a dialog, asking you to specify the path and name for your project file. Click on “Open” to load the project.