Biamp Tesira KNX Integration: TCP API Control, Mute GAs and Conference Scene Automation
Biamp Tesira does not include a native KNX plugin — unlike QSC Q-SYS — but its open TCP API (Tesira Text Protocol on port 8082) allows any middleware platform to send ASCII commands for preset recall, level control and mute. The KNX integration route uses a middleware layer that bridges KNX group address writes to Tesira TCP commands.
Tesira TCP API basics
The Tesira Text Protocol operates as a simple ASCII command/response protocol over TCP on port 8082. Commands follow the format: OBJECT_NAME COMMAND [param1] [param2]. The server (Tesira) responds with +OK {"value":"..."} on success or -ERR on failure.
Essential Tesira TCP commands
Connection:
Host: <Tesira SERVER-IO IP address>
Port: 8082
Protocol: TCP, keep-alive
Auth: SESSION login admin <password>
Preset recall:
DEVICE recallPreset <preset_name>
Example: DEVICE recallPreset "Conference Mode"
Example: DEVICE recallPreset "Presentation Mode"
Example: DEVICE recallPreset "Standby"
Level control (MIXER object):
<MixerName> setLevel <input_index> <output_index> <level_dB>
Example: MainMixer setLevel 1 1 -10.0
(Input 1, Output 1, −10 dBFS)
Level range: typically −60.0 to +12.0 dB
KNX DPT 5.001 (0–100%) → Tesira dB:
0% → −60 dB (silence), 100% → 0 dB (unity)
Linear mapping: level_dB = (value% / 100) × 60 − 60
Mute control:
<MixerName> setMute <input_index> <output_index> <true|false>
Example: MainMixer setMute 1 1 true (mute)
Example: MainMixer setMute 1 1 false (unmute)
Get current level (for bidirectional feedback):
<MixerName> getLevel <input_index> <output_index>
Response: +OK {"value": -10.0}Object names: MIXER object names, preset names and input/output indices are defined in Tesira Software and must match exactly (case-sensitive) in TCP commands. Export the Tesira design to verify all object names before writing middleware code. Common mistake: spaces in object names must be quoted in the command string.
KNX to IP-Symcon to Tesira TCP approach
IP-Symcon is a building automation middleware platform with native KNX and TCP client modules. It monitors KNX group addresses and translates changes into Tesira TCP commands — the most robust route for installations where IP-Symcon is already deployed as a visualisation or logic platform.
IP-Symcon Tesira integration (script excerpt)
// IP-Symcon PHP script triggered by KNX GA change event
// Called when GA 7/1/1 (Tesira mute) changes
function TesiraMute($mute_value) {
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_connect($socket, "192.168.1.150", 8082);
// Login
socket_write($socket, "SESSION login admin Password123
");
$response = socket_read($socket, 256); // expect +OK
// Send mute command
$cmd = $mute_value ? "true" : "false";
socket_write($socket, "MainMixer setMute 1 1 $cmd
");
$response = socket_read($socket, 256); // expect +OK
socket_close($socket);
}
// KNX GA triggers:
// GA 7/1/0 (DPT 5.001 volume) → TesiraSetLevel()
// GA 7/1/1 (DPT 1.001 mute) → TesiraMute()
// GA 7/1/2 (DPT 5.010 preset) → TesiraPresetRecall()
// value 0 = Standby, 1 = Conference, 2 = PresentationHome Assistant KNX integration approach
For sites using Home Assistant as the middleware platform, the HA KNX integration monitors group addresses and a HA Python script or shell command automation sends the corresponding Tesira TCP command. This approach requires no additional software licence beyond HA.
Home Assistant automations.yaml for Tesira mute
# KNX mute GA → Tesira TCP command
automation:
- alias: "CR1 Tesira Mute"
trigger:
- platform: state
entity_id: binary_sensor.knx_cr1_mute
action:
- service: shell_command.tesira_mute
data:
mute: "{{ states('binary_sensor.knx_cr1_mute') }}"
# shell_commands.yaml:
tesira_mute: >
python3 /config/scripts/tesira_cmd.py
"MainMixer setMute 1 1 {{ mute == 'on' | lower }}"
# KNX configuration (configuration.yaml):
knx:
binary_sensor:
- name: "knx_cr1_mute"
state_address: "7/1/1"
sensor:
- name: "knx_cr1_volume"
state_address: "7/1/0"
type: "percentU8" # DPT 5.001
# For preset recall — use number entity triggered by KNX:
number:
- name: "knx_cr1_preset"
address: "7/1/2"
min: 0
max: 5
step: 1Mute GA, volume GA and preset recall scene
The KNX group address scheme for Tesira control follows the same DPT conventions as the QSC Q-SYS integration, enabling consistent KNX touchpanel programming across different DSP platforms.
| KNX GA | DPT | Tesira command | Notes |
|---|---|---|---|
| 7/1/0 — CR1 Volume | DPT 5.001 (0–100%) | MainMixer setLevel → dB | 0%=−60dB, 100%=0dB linear |
| 7/1/1 — CR1 Mute | DPT 1.001 | MainMixer setMute true/false | 1=mute, 0=unmute |
| 7/1/2 — CR1 Preset | DPT 5.010 (unsigned) | DEVICE recallPreset by name | 0=Standby, 1=Conf, 2=Present |
| 7/1/3 — CR1 Vol Status | DPT 5.001 | MainMixer getLevel (polled) | Feedback: Tesira → KNX |
| 7/1/4 — CR1 Mute Status | DPT 1.001 | MainMixer getMute (polled) | Feedback: Tesira → KNX |
Conference room combined scene with lighting
A single KNX scene GA triggers both Tesira audio configuration and DALI lighting adjustment — creating a unified meeting room scene experience from one button press or occupancy event.
Conference room combined scene (KNX scene GA → Tesira + DALI)
KNX scene GA 7/0/0 (DPT 18.001 combined room scene):
Scene 1 — "Conference" (value 0):
Tesira: DEVICE recallPreset "Conference Mode"
→ Routing: all microphones active, codec enabled
→ Gain: conference optimised, AEC enabled
→ Unmute: MainMixer setMute 1 1 false
DALI: recall scene 3 (60%, 4000K, perimeter 30%)
Display: power on (KNX binary output → RS-232 power command)
Scene 2 — "Presentation" (value 1):
Tesira: DEVICE recallPreset "Presentation Mode"
→ Routing: laptop audio input to loudspeakers
→ Gain: presentation optimised (higher output level)
DALI: recall scene 4 (40%, 3000K — reduced for projector)
HDMI: switch input 2 (laptop) to output 1 (projector)
Scene 0 — "Standby" (value 63 per DPT 18.001 convention):
Tesira: DEVICE recallPreset "Standby"
→ All inputs muted, level −60 dB
DALI: recall scene 0 (all off)
Display: power off (RS-232 power off command)
IP-Symcon/HA: monitors GA 7/0/0 → sends matching Tesira preset
+ writes DALI scene and display GA simultaneouslyCommissioning test
Test the Tesira TCP link using a raw TCP terminal (PuTTY in Raw mode) before configuring the middleware, to verify the Tesira responds correctly to commands. Then test end-to-end from KNX Group Monitor through the middleware to Tesira.
Tesira TCP commissioning test
Step 1: Raw TCP test (PuTTY):
Host: <Tesira IP>, Port: 8082, Connection type: Raw
Type: SESSION login admin <password>
Response: +OK
Type: DEVICE recallPreset "Standby"
Response: +OK (no value returned for preset recall)
Type: MainMixer setMute 1 1 true
Response: +OK
Type: MainMixer getMute 1 1
Response: +OK {"value": true}
Step 2: Middleware test (IP-Symcon/HA):
Write 1 to GA 7/1/1 (KNX mute) via ETS6 Group Monitor
→ Check middleware log: Tesira command sent
→ PuTTY session: MainMixer getMute → should return true
Step 3: Volume feedback test:
In PuTTY: MainMixer setLevel 1 1 -20.0
→ Middleware should detect level change (if polling active)
→ ETS6 Group Monitor: GA 7/1/3 (volume status) should update
Step 4: Combined scene test:
Write 0 to GA 7/0/0 → Scene 1 (Conference)
→ Verify Tesira preset recalled (check Tesira Software monitor)
→ Verify DALI scene 3 activates (visible lighting change)
→ Verify display powers onNeed Biamp Tesira KNX integration designed and commissioned to spec?
We configure Tesira TCP API middleware, KNX scene automation and DALI lighting integration for conference rooms — delivered tested with full commissioning documentation to your site.
Request a quote →