LIGHTWARE Biamp Tesira driver for LARA
Specifications
- Biamp Tesira Designer Software version: v4.10.1.24215
- Biamp Tesira Firmware version: v4.10.0.6
- LARA version: v1.2.0b41
Introduction
The Biamp Tesira driver for LARA allows integrators to configure and control Tesira DSP over Telnet (TCP/IP). The driver is compatible with specific firmware and software versions:
- Biamp Tesira Designer Software v4.10.1.24215
- Biamp Tesira Firmware v4.10.0.6
- LARA version v1.2.0b41
Solution Overview
The driver module enables control of selected parameters of the Tesira DSP connected to a Lightware Universal Matrix Switcher (UCX or MMX2) via a local network. Key features include:
- Integration of DSP control functions for video, shades, lights, and audio.
- Connection requirement: UCX/MMX2 to be connected to the Tesira DSP through a local network.
Module Release Notes
Known issue: No mechanism to signal a broken connection when controlling the Tesira unit via RS232.
Events Defined in the Driver
- Event: TTP connected
- Description: Tesira DSP is ready to receive and execute commands.
- Event: Subscribed parameter changed
- Description: Fires when any subscribed parameter is changed.
- Event: Parameter query response received
- Description: Fires when a response is received for a get command.
Status Variables Defined in the Driver
- Variable: tcpConnected
- Type: boolean
- Description: True if the TCP connection between Lightware and Tesira is established.
- Variable: ttpsConnected
- Type: boolean
- Description: True if the Tesira DSP is ready to receive and execute commands.
Methods Defined in the Driver
Methods are used to set values, query parameters, etc., in the DSP. These methods can be called from Logic modules or User panel modules.
Introduction
The scope of this document is to help integrators understand and configure the Biamp Tesira driver for LARA. The driver supports Tesira control over Telnet (TCP/IP).
Firmware and software versions used and tested during the development:
- Biamp Tesira Designer Software v4.10.1.24215
- Biamp Tesira Firmware v4.10.0.6
- LARA version v1.2.0b41
The downloadable package contains:
- Tesira driver module: Biamp_TesiraFORTE_driver_module_v1.0.1.zip
- Sample configuration: Sample_config_Tesira_control_v1.0.1.zip
- Documentation: LARA_Biamp_TesiraFORTE_DSP_driver_module_v1.0.1.pdf
- TesiraFORTE VT4 config file: sample_config_FORTEX400.tmf
References
- Lightware LARA Users Manual
- Lightware UCX series Users Manual
- Biamp Tesira Text Protocol 3.0
- Biamp Tesira Text Protocol Cornerstone
- Biamp Tesira Command String Calculator
Solution Overview
Biamp Tesira DSP driver module for LARA provides the ability to control selected parameters of the Tesira DSP installed beside a Lightware Universal Matrix Switcher (either UCX or MMX2).
In order to have a working solution the UCX/MMX2 has to be connected to the Tesira DSP through a local network.
The main feature of this solution is to provide DSP control functions for integrators, to be able to use the same user interface for controlling video, shades, lights as well as audio. Functions provided by the driver module are introduced in the following chapters.
Module release notes
V1.1.0 – Added serial control option, added new methods, such as subscribeLogicState, unsubscribeLogicState, setCrosspointLevelState, getCrosspointLevelState
known issues: when controlling the Tesira unit via RS232, there is no mechanism to signal that the connection is broken
V1.0.1 – LARA 1.2 support added. Please note that the module is not backward compatible with earlier versions of LARA. It is recommended to use the version v1.0.0 module with LARA 1.1.x.
V1.0.0 – initial version
Events Defined in the Drive
Event | Description |
TTP connected | The Tesira DSP is ready for receiving and executing commands |
Subscribed parameter
changed |
Fires when any subscribed parameter is changed |
Parameter query response received | Fires when a response is received for a get command.
The response for getSerial and getFirmware does not activate the event. |
There are a few additional events in the driver originating from the base module, so those are not listed here.
Status Variables Defined in the Driver
Event | Type | Description |
tcpConnected | boolean | True if the TCP connection between the Lightware and the Tesira device has been established. |
ttpsConnected | boolean | True if the Tesira DSP is ready to receive and execute commands. |
Methods Defined in the Driver
Methods are used to realize functions in the DSP, e.g., setting values, querying parameters, etc. The methods can be called from other modules, e.g. Logic module or User panel module. The implemented methods can be found below:
- ecallPreset
- subscribeLevel
- subscribeMute
- subscribeLogicState
- subscribeUSBStatus
- setLevel
- incLevel
- decLevel
- setMute
- setCrosspointLevelState
- toggleMute
- getLevel
- getMute
- getCrosspointLevelState
- getSerial
- getFirmware
- unsubscribeLevel
- unsubscribeMute
- unsubscribeLogicState
- unsubscribeUSBStatus
- sendFrame
Subscribe Type Methods
These methods are used to subscribe to parameter changes of different processing blocks. When a subscribed parameter is changed, the “Subscribed parameter changed” event getting triggered and the unique name (custom label for feedback in Tesira) and the new value of the parameter is being stored/updated in a json object called dspData. The unique name is generated automatically, for details of the unique name, see the particular method’s description.
With the event, the actual state of all the subscribed parameters are handed over with the dspData json object.
Below, you can see the content of the JSONn object logged to the console. For more details, please check the sample configuration.
*FB-Level1-ch1-level’: 5.799999,
‘FB-Level1-ch1-mute’: false,
*FB-Mutel-chl-mute’: false,
‘FB-Level2-ch1-level’: -100,
‘FB-Level2-ch2-level’: 12,
‘FB-Level2-chl-mute’: true,
*FB-Level2-ch2-mute’: false,
*FB-USB-USBXOutput1-connected’: true,
‘FB-USB-USBXInput1-connected’: true
subscribeUSBStatus
Subscribes to changes of the connection status of the given USB input/output block.
Parameter | Description |
instanceTag | Instance tag of the USB input/output block |
refreshRate | Time in milliseconds, describes how often the DSP will send updates |
The update sent by the DSP is processed by the driver module, and it stores the latest values in a JSON object. The property of each item is the unique name, which is calculated automatically according to the following:
unique name: FB-USB-x-connected
where FB-USB- is fixed
x is the instance tag
-connected is fixed.
subscribeMute
Subscribe to changes of a mute button change.
Parameter | Description |
instanceTag | Instance tag of the level/mute block |
channel | Channel number |
refreshRate | Time in milliseconds, describes how often the DSP will send updates |
The unique name is calculated automatically according to the following: unique name: FB-x-chy-mute
where FB- is fixed
x is the instance tag
– ch is fixed
y is the number of the channel inside the processing block
– mMuteis fixed.
subscribeLevel
Subscribe to changes of a level parameter.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
refreshRate | Time in milliseconds, describes how often the DSP will send
updates |
The unique name is calculated automatically according to the following: unique name: FB-x-chy-level
where FB- is fixed
x is the instance tag
y is the number of the channel inside the processing block -level is fixed
subscribeLogicState
Subscribe to changes of a logic meter’s block state parameter.
Parameter | Description |
instanceTag | Instance tag of the logic meter block |
channel | Channel number |
refreshRate | Time in milliseconds, describes how often the DSP will send updates |
Get Type Methods
These methods are used to query the actual value of a parameter. When the DSP sends its response to a get command, the “Parameter query response received” event getting triggered, and the unique name of the parameter and it’s value are stored in variables (qrVariable, qrValue). Those variables are handed over as event parameters.
The unique name is generated automatically; for details of the unique name, see the particular method’s description.
getMute
Queries the actual state of a mute button.
Parameter | Description |
instanceTag | Instance tag of the level/mute block |
channel | Channel number |
The unique name is calculated automatically according to the following: unique name: QR-x-chy-mute
where QR- is fixed
x is the instance tag
-ch is fixed
y is the number of the channel inside the processing block
-mMuteis fixed.
The value is a Boolean type, which can be true or false.
getLevel
Queries the actual value of a level parameter.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
The unique name is calculated automatically according to the following: unique name: QR-x-chy-level
where QR- is fixed
x is the instance tag
-ch is fixed
y is the number of the channel inside the processing block -level is fixed.
The value is a number in dB
getCrosspointLevelState
Queries the actual value of a matrix mixer’s crosspoint state.
Parameter | Description |
instanceTag | Instance tag of the level block |
inputNr | Input nr. of the given crosspoint |
outputNr | Output nr. of the given crosspoint |
getFirmware
Queries the firmware version of the connected Tesira DSP device. The driver automatically queries the firmware version at startup nd shows it on the Status Board. The method does not have any parameters.
getSerial
Queries the serial number of the connected Tesira DSP device. The driver automatically queries the serial number at startup nd shows it on the Status Board. The method does not have any parameters.
Set Type Methods
These methods are used to set parameters to an absolute value.
setLevel
Sets the level to an absolute value.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
value | The required value of the level parameter in dB |
setMute
Sets a mute button to on or off.
Parameter | Description |
instanceTag | Instance tag of the level/mute block |
channel | Channel number |
value | The required state of the mute button (true for mute on, false
for mute off) |
Other Methods
recallPreset
Used for recalling presets set up in Tesira software by the preset’s ID number.
Parameter | Description |
presetNumber | ID number of the preset u want to recall
|
incLevel
Increases the value of a level parameter by the specified value.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
value | Value in dB by which you want to increase the original value |
decLevel
Decreases the value of a level parameter by the specified value.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
value | Value in dB by which you want to decrease the original value |
toggleMute
Toggles between the on and off state of a mute button
Parameter | Description |
instanceTag | Instance tag of the level/mute block |
channel | Channel number |
unsubscribeLevel
Stops the Tesira DSP device from sending updates regarding the specified level parameter.
Parameter | Description |
instanceTag | Instance tag of the level block |
channel | Channel number |
unsubscribeMuTE
Stops the Tesira DSP device from sending updates regarding the specified mute parameter.
Parameter | Description |
instanceTag | Instance tag of the level/mute block |
channel | Channel number |
unsubscribeLogicState
Stops the Tesira DSP device from sending updates regarding the specified logic state parameter.
Parameter | Description |
instanceTag | Instance tag of the logic meter block |
channel | Channel number |
unsubscribeUSBStatus
Stops the Tesira DSP device from sending updates regarding the USB connection status.
Parameter | Description |
instanceTag | Instance tag of the USB input or output block |
sendFrame
Sends a custom command to the Tesira DSP device. With the help of this method, it is possible to send commands to the DSP, which are not yet implemented in the driver.
Parameter | Description |
message | Command string to send to the DSP |
Installation and Configuration of the Driver
Prerequisites
To use the Tesira driver for LARA, you must have a configured Biamp DSP. To do that, please refer to the user manual of the Biamp device/software. Some settings have to be set on Biamp’s side to let the control system work:
- In case of Telnet control, Telnet must be enabled in the Tesira-Network SettingsThe
- Tesira device must be unprotected
- Instance tags must not contain spaces for proper operation
Installation
This section assumes that you are familiar with your Biamp Tesira DSP and Lightware Taurus UCX, MMX2 devices, and you know their IP address and have enabled LARA functionality. Further, you have your computer connected to the same IP subnet where your devices are located.
Uploading the Tesira driver
You can upload the Tesira DSP driver module to a new/existing LARA configuration by clicking on the Upload module icon shown below.
Browse and open the module as a ZIP archive. You have to enter a name for the module. When uploaded successfully it has to appear on the Browse Modules tab as it is shown below.
Create an instance for a particular Tesira device to control
To be able to communicate with a device, an instance has to be created from the module, which is called “Biamp_Tesira” in the example above.
To create an instance, you have to select the module and click on the ”Create new instance from the selected module” shown below.
Instances have to have a unique name, let’s call it “testinstance”. Configuration can be done at the time of creation, right from the window shown below, but those settings can be modified later as well. Please note that instance names cannot be modified after creation!
When the instance has been created successfully, it is indicated by the green instance indicator next to the module’s name on the Browse Modules tab.
When an instance is created, it appears on the Status Board as well, as it is shown below.
Configuring the instance
The instance has to be configured by its parameters. Most of the parameters can be selected using drop-down lists.
Parameters can be edited by clicking the “Edit instance parameters” button as shown below:
The Edit Instance Parameters window is shown below.
Sample Configuration
The downloaded package contains the driver module itself and a sample configuration package. The sample configuration is provided to let you study how the driver module interacts with other modules in a configuration.
The sample configuration package contains the following
- Tesira configuration file (prepared for TesiraFORTÉ VT4)
- LARA configuration file
- You need to test the sample configuration:
- Lightware Taurus UCX/MMX2 series universal matrix switcher
- Biamp TesiraFORTÉ VT4
Instead of the VT4, you can use other TesiraFORTÉ DSP units, but you might have to recreate the Tesira configuration file for yourself. The screenshot below shows the design of the sample configuration, with the instance tags of the blocks used in the LARA configuration.
Using the Sample Configuration
Upload the sample configuration to the Tesira DSP
For the method, please refer to the Biamp documentation.
Upload the sample LARA configuration to the Lightware UCX/MMX2 device
Click upload configuration on your main LARA window. Browse and select the sample configuration file.
Modify the IP address settings of testinstance to match your actual Tesira device.
Refer to section 3.2.3.
After you’ve finished the configuration, you should see something like this:
Operation of the configuration
At startup, the configuration subscribes to the following parameters:
Instance tag | Attribute | Channno nr. | Automatically generated unique name for feedback |
Level1 | level | 1 | FB-Level1-ch1-level |
mute | 1 | FB-Level1-ch1-mute | |
Mute1 | mute | 1 | FB-Mute1-ch1-mute |
Level2 |
level | 1 | FB-Level2-ch1-level |
2 | FB-Level2-ch2-level | ||
mute | 1 | FB-Level2-ch1-mute | |
2 | FB-Level2-ch2-mute | ||
USBOutput1 | connected | N/A | FB-USB-USBOutput1-connected |
USBInput1 | connected | N/A | FB-USB-USBInput1-connected |
When there are changes to the parameters above in Tesira, the new value is stored in the json object named dspData. The property will be the automatically generated unique name and the value is the new value of the particular parameter.
In the Logic module there is a rule (Subscribed parameter changed) what is triggered when any subscribed parameter changed in Tesira. The rule logs the content of dspData to the console and simultaneously write the actual values to the debug panel.
The pictures below show the console and the user panel output.
[2023-07-19 15:21:36.932] – myRoom – {
‘FB-Level1-ch1-level’: -80,
‘FB-Level1-ch1-mute’: true,
‘FB-Mute1-ch1-mute’: true,
‘FB-Level2-ch1-level’: -100,
‘FB-Level2-ch2-level’: -100,
‘FB-Level2-ch1-mute’: true,
‘FB-Level2-ch2-mute’: true,
‘FB-USB-USBXOutputl-connected’: true,
‘FB-USB-USBXInput1-connected’: true
}
FAQS
Q: What software versions are compatible with the Biamp Tesira driver for LARA?
A: The driver is compatible with Biamp Tesira Designer Software v4.10.1.24215, Biamp Tesira Firmware v4.10.0.6, and LARA version v1.2.0b41.
Q: What is the main feature of the Biamp Tesira driver for LARA?
A: The main feature is to provide DSP control functions for integrators to control video, shades, lights, and audio using the same user interface.
Documents / Resources
![]() |
LIGHTWARE Biamp Tesira driver for LARA [pdf] User Guide Biamp Tesira driver for LARA, driver for LARA, for LARA |