Integracja Biamp Tesira z KNX: sterowanie przez TCP API, GA wyciszenia i automatyzacja scen konferencyjnych
Biamp Tesira nie posiada natywnej wtyczki KNX — w odróżnieniu od QSC Q-SYS — jednak otwarte TCP API (Tesira Text Protocol na porcie 8082) umożliwia każdej platformie middleware wysyłanie poleceń ASCII do przywoływania presetów, sterowania poziomem i wyciszania. Integracja z KNX odbywa się przez warstwę middleware, która przekształca zapisy adresów grupowych KNX w polecenia TCP Tesira.
Podstawy Tesira TCP API
Tesira Text Protocol działa jako prosty protokół poleceń/odpowiedzi ASCII przez TCP na porcie 8082. Polecenia mają format: OBJECT_NAME COMMAND [param1] [param2]. Serwer (Tesira) odpowiada +OK {"value":"..."} przy powodzeniu lub -ERR przy błędzie.
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}Nazwy obiektów: Nazwy obiektów MIXER, nazwy presetów oraz indeksy wejść/wyjść są definiowane w Tesira Software i muszą dokładnie odpowiadać (z uwzględnieniem wielkości liter) poleceniom TCP. Wyeksportuj projekt Tesira w celu weryfikacji wszystkich nazw obiektów przed napisaniem kodu middleware. Częsty błąd: spacje w nazwach obiektów muszą być ujęte w cudzysłów w ciągu polecenia.
Podejście KNX do IP-Symcon do Tesira TCP
IP-Symcon to platforma middleware do automatyki budynkowej z natywnymi modułami KNX i klienta TCP. Monitoruje ona adresy grupowe KNX i przekształca zmiany w polecenia TCP Tesira — najbardziej niezawodna metoda dla instalacji, w których IP-Symcon jest już wdrożony jako platforma wizualizacji lub logiki.
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 = PresentationPodejście z integracją KNX przez Home Assistant
W przypadku instalacji używających Home Assistant jako platformy middleware, integracja HA KNX monitoruje adresy grupowe, a automatyzacja oparta na skrypcie Python lub poleceniu powłoki HA wysyła odpowiednie polecenie TCP Tesira. Podejście to nie wymaga dodatkowych licencji oprogramowania poza 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: 1GA wyciszenia, GA głośności i scena przywoływania presetu
Schemat adresów grupowych KNX do sterowania Tesira stosuje te same konwencje DPT co integracja QSC Q-SYS, umożliwiając spójne programowanie paneli dotykowych KNX na różnych platformach DSP.
| KNX GA | DPT | Polecenie Tesira | Uwagi |
|---|---|---|---|
| 7/1/0 — CR1 Głośność | DPT 5.001 (0–100%) | MainMixer setLevel → dB | 0%=−60dB, 100%=0dB liniowo |
| 7/1/1 — CR1 Wyciszenie | DPT 1.001 | MainMixer setMute true/false | 1=wycisz, 0=odwycisz |
| 7/1/2 — CR1 Preset | DPT 5.010 (bez znaku) | DEVICE recallPreset po nazwie | 0=Standby, 1=Konf., 2=Prezent. |
| 7/1/3 — CR1 Status głośności | DPT 5.001 | MainMixer getLevel (polling) | Feedback: Tesira → KNX |
| 7/1/4 — CR1 Status wyciszenia | DPT 1.001 | MainMixer getMute (polling) | Feedback: Tesira → KNX |
Połączona scena sali konferencyjnej z oświetleniem
Jedna GA sceny KNX wyzwala jednocześnie konfigurację audio Tesira i regulację oświetlenia DALI — tworząc zunifikowane doświadczenie sali spotkań jednym naciśnięciem przycisku lub zdarzeniem obecności.
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 simultaneouslyTest uruchomienia
Przetestuj łącze TCP Tesira za pomocą surowego terminala TCP (PuTTY w trybie Raw) przed konfiguracją middleware, aby zweryfikować poprawność odpowiedzi Tesira na polecenia. Następnie przetestuj komunikację end-to-end od KNX Group Monitor przez middleware do 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 onPotrzebują Państwo integracji Biamp Tesira z KNX zaprojektowanej i uruchomionej według specyfikacji?
Konfigurujemy middleware TCP API Tesira, automatyzację scen KNX i integrację oświetlenia DALI dla sal konferencyjnych — dostarczamy przetestowane z pełną dokumentacją uruchomienia na miejscu.
Zapytaj o ofertę →