TapHome

Paradox Digiplex EVO přes PRT3 (TCP)

Packet Parser → TCP
Přidal
Poslední aktualizace: 11. 2026

Vyžaduje externí bránu

Paradox PRT3 (APR-PRT3) printer and home automation module, or BUS2SER, with an RS-232-to-Ethernet converter — stránka produktu

Paradox Digiplex EVO přes PRT3 (TCP)

Šablona Paradox EVO PRT3 propojuje alarmovou ústřednu Paradox Digiplex EVO s TapHome přes modul PRT3 a oficiální ASCII protokol Paradoxu. PRT3 je připojený na sběrnici combus ústředny a protokol nabízí na svém 9pinovém sériovém portu. Převodník RS-232 na Ethernet zpřístupní tento port v lokální síti a TapHome se k převodníku připojuje přes TCP — počítač mezi nimi není potřeba.

Šablona ukazuje stav armování jedné oblasti a oblast armuje nebo disarmuje uživatelským kódem, ukazuje čtyři zóny s jejich upozorněními a jeden virtuální PGM a ukáže chybu, když PRT3 ztratí spojení s ústřednou.

PRT3 slouží jako rozhraní pro domácí automatizaci jen u ústředen Digiplex EVO. Pro ústředny Spectra SP a Magellan MG použijte komunitní šablonu Alarmové ústředny Paradox přes PAI (MQTT).

Komunitní šablona — zatím neotestovaná s TapHome na skutečné ústředně. Šablona vznikla z oficiální příručky ASCII protokolu Paradoxu (ASCII-EP01) a otestovaná byla jen se simulátorem PRT3 na lokálním TapHome Core 2025.2, ne se skutečnou ústřednou Digiplex EVO se skutečným PRT3 a převodníkem. Ověřte ji na své instalaci dříve, než se na ni budete spoléhat při zabezpečení; zkušenosti z praxe jsou vítané. XML stáhnete na této stránce nebo v portálu TapHome: Paradox EVO přes PRT3 — komunitní šablona, a importujete ho jako nový modul.

Bezpečnost: uživatelský kód je uložený v TapHome a jde nešifrovaně. PRT3 armuje a disarmuje jen s uživatelským kódem a šablona tento kód posílá s každým příkazem k armování a disarmování. Kód je uložený v konfiguraci TapHome a jde nešifrovaně po lokální síti mezi TapHome Core a převodníkem. Založte v ústředně pro TapHome samostatného uživatele omezeného na oblasti, které TapHome ovládá, a použijte jeho kód — nikdy ne hlavní kód.

Podporované ústředny

ÚstřednaPožadavek
Digiplex EVO48, EVO96, EVO192, EVOHDPRT3 (nebo BUS2SER) v režimu domácí automatizace s ASCII protokolem
DGP-848verze 4.11 nebo novější
DGP-NE96verze 1.60 nebo novější

Ústředny Spectra SP a Magellan MG nemají oficiální rozhraní pro domácí automatizaci — viz Alarmové ústředny Paradox přes PAI (MQTT).

Hardwarové zapojení

  • PRT3 k ústředně: čtyři svorky PRT3 (červená, černá, zelená, žlutá) připojte na svorky sběrnice combus ústředny.
  • Převodník k PRT3: stranu RS-232 převodníku připojte na 9pinový sériový port PRT3 — ne na paralelní port ani na port USB.
  • Převodník do sítě: převodník nastavte do režimu TCP server s pevnou IP adresou a TCP portem. TapHome se k němu připojuje jako TCP klient a spojení drží otevřené.

Parametry sériové linky jsou 8N1 (8 datových bitů, bez parity, 1 stop bit). Převodník musí používat přesně stejnou rychlost jako PRT3 — při jiné rychlosti TapHome nedostane nic.

Konfigurace

Režim domácí automatizace na PRT3

PRT3 naprogramujete z klávesnice ústředny:

  1. Podržte [0] a zadejte instalační kód.
  2. Zadejte sekci [4003] u ústředen EVO nebo [953] u ústředen DGP-848.
  3. Zadejte 8místné sériové číslo PRT3.
  4. Zadejte sekci [016] (volby sériového portu) a nastavte:
VolbaNastaveníVýznam
[1]ZAPSériový port zapnutý
[4]ZAPDomácí automatizace (ne hlášení událostí)
[5] a [6]VYP a VYPASCII protokol (ne C-Bus)
[2] a [3]podle příručky PRT3Rychlost: 2400, 9600, 19200 nebo 57600 b/s — stejnou rychlost nastavte na převodníku

PRT3 lze naprogramovat také softwarem WinLoad (verze 2.62 nebo novější) nebo funkcí rozeslání nastavení modulům (module broadcast) z ústředny.

Virtuální PGM

Virtuální PGM šablony je virtuální PGM modulu PRT3, ne fyzický výstup PGM ústředny. Naprogramujte ho v PRT3 s událostmi ústředny, které ho zapínají a vypínají (sekce [100] až [399], deset sekcí na jeden virtuální PGM), aby PRT3 posílal jeho stav do TapHome.

Uživatel pro TapHome

Založte v ústředně pro TapHome samostatného uživatele, dejte mu přístup jen k oblastem, které TapHome armuje a disarmuje, a jeho kód (4 až 6 číslic) zadejte při importu. Šablona tento kód posílá s každým příkazem k armování a disarmování, proto parametr nesmí zůstat prázdný.

Parametry importu

Parametr importuPopisVýchozí hodnota
IP adresa převodníkuIP adresa převodníku RS-232 na Ethernet v režimu TCP server192.168.1.100
TCP port převodníkuTCP port převodníku4001
Číslo oblastiOblast v ústředně, tři číslice (001 až 008)001
Čísla zón 1–4Zóny v ústředně, tři číslice (001 až 192)001 … 004
Číslo virtuálního PGMVirtuální PGM modulu PRT3, dvě číslice (01 až 30)01
Uživatelský kódKód uživatele ústředny založeného pro TapHome(prázdné)

Pro další oblasti nebo zóny importujte šablonu znovu s jinými čísly a zařízení, která nepotřebujete, smažte. Každý import otevírá vlastní TCP spojení, proto ověřte, zda převodník přijme víc než jedno.

Funkce zařízení

Oblast

Ukazuje stav oblasti a oblast armuje nebo disarmuje.

StavKdyž ho vyberete v TapHome
Disarmovanýdisarmuje oblast uživatelským kódem
Armovanýarmuje oblast
Armovaný Forcearmuje oblast nuceně (Force)
Armovaný Stayarmuje oblast v režimu Stay
Armovaný Instantarmuje oblast v režimu Instant
Poplachnepošle nic — stav jen ukazuje poplach, který hlásí ústředna

Po každém příkazu se šablona znovu zeptá na stav oblasti. Zařízení Oblast ukáže upozornění, když ústředna odmítla poslední příkaz k armování nebo disarmování (obvykle špatný uživatelský kód), když má oblast poruchu a když je poplach v paměti. Při startu TapHome Core šablona nepošle žádný příkaz k armování ani disarmování — oblast převezme stav z nejbližší odpovědi ústředny.

Zóny 1–4

Každá zóna ukazuje, zda je zavřená nebo otevřená; zóna se sabotáží a zóna s poruchou požární smyčky se berou jako nezavřené. Upozornění se ukážou, když je zóna v poplachu, v požárním poplachu, je sabotovaná, má poruchu požární smyčky, ztratila dohled nebo má slabou baterii. Každé upozornění zůstane, dokud ústředna nenahlásí zónu jako v pořádku.

Virtuální PGM

Ukazuje stav jednoho virtuálního PGM modulu PRT3. Stav se změní, jen když PRT3 nahlásí změnu; protokol nemá dotaz na stav virtuálního PGM, takže po startu TapHome Core zařízení nemá hodnotu až do nejbližší změny. TapHome virtuální PGM nespíná.

Modul

Šablona se každých 5 sekund ptá na stav oblasti a čtyř zón. Modul ukáže chybu, když PRT3 nahlásí, že ztratil spojení s ústřednou, a zruší ji, když se spojení obnoví. Když převodník není dostupný, TapHome ukáže běžnou chybu spojení modulu.

Co šablona nemá

  • Panika a reset kouřových hlásičů — vynechané záměrně: tísňová, zdravotní a požární panika by spustila skutečné hlášení poplachu.
  • Přemostění zón a přímé ovládání fyzických výstupů PGM — PRT3 je nepodporuje.
  • Popisky zón a oblastí — šablona používá jen čísla.
  • Virtuální vstupy a užitečné klávesy modulu PRT3.

Řešení problémů

TapHome neukazuje žádné hodnoty

Ověřte, že převodník je dostupný na IP adrese a portu z importu, že převodník a PRT3 používají stejnou rychlost a že sekce [016] má volby [1] a [4] ZAP a volby [5] a [6] VYP.

Armování nebo disarmování nic neudělá

Upozornění na zařízení Oblast, že ústředna odmítla příkaz, znamená špatný uživatelský kód nebo uživatele bez přístupu k oblasti. Ověřte v ústředně kód uživatele pro TapHome a jeho oblasti.

Chyba modulu o spojení s ústřednou

PRT3 ztratil spojení s ústřednou po sběrnici combus. Ověřte zapojení čtyř svorek sběrnice combus.

Zóna ukazuje špatný stav

Ověřte, že číslo zóny z importu je číslo zóny v ústředně, vždy se třemi číslicemi (zóna 5 je 005).

Dostupná zařízení

Paradox PRT3 Modul
Vlastní proměnné
AreaNum (string)Číslo oblasti v ústředně, tři číslice (001 až 008)
Enter the area number with three digits (area 1 = 001) as the import parameter Area number.
Zone1Num (string)Číslo zóny 1 v ústředně, tři číslice (001 až 192)
Zone2Num (string)Číslo zóny 2 v ústředně, tři číslice (001 až 192)
Zone3Num (string)Číslo zóny 3 v ústředně, tři číslice (001 až 192)
Zone4Num (string)Číslo zóny 4 v ústředně, tři číslice (001 až 192)
PgmNum (string)Číslo virtuálního PGM naprogramovaného v PRT3, dvě číslice (01 až 30)
Program the virtual PGM in the PRT3 (activation and deactivation event) and enter its number with two digits (01) as the import parameter Virtual PGM number.
UserCode (string)Uživatelský kód samostatného uživatele ústředny založeného pro TapHome (4 až 6 číslic), ne hlavní kód; posílá se nešifrovaně s každým příkazem k armování a disarmování
Create a separate user in the panel for TapHome, limited to the areas TapHome controls, and enter its code as the import parameter User code. Do not use the master code.

Paradox PRT3

Čtení (modul)
# Poll the area and the four zones; every command ends with CR (framing)
SENDDATA("RA" + AreaNum);
SENDDATA("RZ" + Zone1Num);
SENDDATA("RZ" + Zone2Num);
SENDDATA("RZ" + Zone3Num);
SENDDATA("RZ" + Zone4Num);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
IF INDEXOF(msg, "COMM&fail") = 0
    CommFail := 1;
END
IF INDEXOF(msg, "COMM&ok") = 0
    CommFail := 0;
END
IF CommFail = 1
    ADDERROR(1, "PRT3 reports COMM&fail: no communication between the PRT3 module and the panel");
END
Oblast Vícestavový přepínač

Stav jedné oblasti ústředny a její armování nebo disarmování uživatelským kódem; Poplach se jen zobrazuje a nic neposílá

enum ascii
Hodnoty / Stavy: Disarmovaný · Armovaný · Armovaný Force · Armovaný Stay · Armovaný Instant · Poplach

Oblast

Čtení stavu přepínače
RETURN(Mu);
Zápis stavu přepínače
# Alarm (5) is reported by the panel and is never a command
IF Mu = 0
    SENDDATA("AD" + AreaNum + UserCode);
ELSEIF Mu = 1
    SENDDATA("AA" + AreaNum + "A" + UserCode);
ELSEIF Mu = 2
    SENDDATA("AA" + AreaNum + "F" + UserCode);
ELSEIF Mu = 3
    SENDDATA("AA" + AreaNum + "S" + UserCode);
ELSEIF Mu = 4
    SENDDATA("AA" + AreaNum + "I" + UserCode);
END
IF Mu < 5
    SENDDATA("RA" + AreaNum);
END
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
# Area status: RA<nnn> + state (D, A, F, S, I) + M T N P A S, each O when OK
IF INDEXOF(msg, "RA" + AreaNum) = 0 AND LENGTH(msg) >= 12
    VAR st := GETAT(RECEIVEDBYTES, 5);
    IF GETAT(RECEIVEDBYTES, 10) = 65
        Mu := 5;
    ELSEIF st = 68
        Mu := 0;
    ELSEIF st = 65
        Mu := 1;
    ELSEIF st = 70
        Mu := 2;
    ELSEIF st = 83
        Mu := 3;
    ELSEIF st = 73
        Mu := 4;
    END
    AreaMemory := IF(GETAT(RECEIVEDBYTES, 6) = 77, 1, 0);
    AreaTrouble := IF(GETAT(RECEIVEDBYTES, 7) = 84, 1, 0);
END
# Answer to an arming or disarming command of this area
IF INDEXOF(msg, "AA" + AreaNum) = 0 OR INDEXOF(msg, "AD" + AreaNum) = 0
    CodeFailed := IF(INDEXOF(msg, "&fail") > 0, 1, 0);
END
IF CodeFailed = 1
    ADDWARNING(1, "The panel refused the last arming or disarming command (&fail): check the user code");
END
IF AreaTrouble = 1
    ADDWARNING(2, "Trouble in the area");
END
IF AreaMemory = 1
    ADDWARNING(3, "Alarm in memory");
END
Zóna 1 Jazýčkový kontakt Pouze ke čtení

Stav zóny ústředny (zavřená nebo otevřená) s upozorněními na poplach, požární poplach, sabotáž, poruchu požární smyčky, ztrátu dohledu a slabou baterii

boolean ascii
Proměnná: ZoneNum — Číslo zóny v ústředně, tři číslice (001 až 192)

Zóna 1

Čtení
RETURN(Rc);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
# Zone status: RZ<nnn> + C, O, T, F + A F S L, each O when OK
IF INDEXOF(msg, "RZ" + ZoneNum) = 0 AND LENGTH(msg) >= 10
    VAR st := GETAT(RECEIVEDBYTES, 5);
    Rc := IF(st = 67, 0, 1);
    ZTamper := IF(st = 84, 1, 0);
    ZFireLoop := IF(st = 70, 1, 0);
    ZAlarm := IF(GETAT(RECEIVEDBYTES, 6) = 65, 1, 0);
    ZFire := IF(GETAT(RECEIVEDBYTES, 7) = 70, 1, 0);
    ZSupervision := IF(GETAT(RECEIVEDBYTES, 8) = 83, 1, 0);
    ZBattery := IF(GETAT(RECEIVEDBYTES, 9) = 76, 1, 0);
END
# Warnings are rebuilt from the stored zone state on every message
IF ZAlarm = 1
    ADDWARNING(1, "Zone in alarm");
END
IF ZFire = 1
    ADDWARNING(2, "Fire alarm");
END
IF ZTamper = 1
    ADDWARNING(3, "Zone tampered");
END
IF ZFireLoop = 1
    ADDWARNING(4, "Fire loop trouble");
END
IF ZSupervision = 1
    ADDWARNING(5, "Supervision lost");
END
IF ZBattery = 1
    ADDWARNING(6, "Low battery");
END
Zóna 2 Jazýčkový kontakt Pouze ke čtení

Stav zóny ústředny (zavřená nebo otevřená) s upozorněními na poplach, požární poplach, sabotáž, poruchu požární smyčky, ztrátu dohledu a slabou baterii

boolean ascii
Proměnná: ZoneNum — Číslo zóny v ústředně, tři číslice (001 až 192)

Zóna 2

Čtení
RETURN(Rc);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
# Zone status: RZ<nnn> + C, O, T, F + A F S L, each O when OK
IF INDEXOF(msg, "RZ" + ZoneNum) = 0 AND LENGTH(msg) >= 10
    VAR st := GETAT(RECEIVEDBYTES, 5);
    Rc := IF(st = 67, 0, 1);
    ZTamper := IF(st = 84, 1, 0);
    ZFireLoop := IF(st = 70, 1, 0);
    ZAlarm := IF(GETAT(RECEIVEDBYTES, 6) = 65, 1, 0);
    ZFire := IF(GETAT(RECEIVEDBYTES, 7) = 70, 1, 0);
    ZSupervision := IF(GETAT(RECEIVEDBYTES, 8) = 83, 1, 0);
    ZBattery := IF(GETAT(RECEIVEDBYTES, 9) = 76, 1, 0);
END
# Warnings are rebuilt from the stored zone state on every message
IF ZAlarm = 1
    ADDWARNING(1, "Zone in alarm");
END
IF ZFire = 1
    ADDWARNING(2, "Fire alarm");
END
IF ZTamper = 1
    ADDWARNING(3, "Zone tampered");
END
IF ZFireLoop = 1
    ADDWARNING(4, "Fire loop trouble");
END
IF ZSupervision = 1
    ADDWARNING(5, "Supervision lost");
END
IF ZBattery = 1
    ADDWARNING(6, "Low battery");
END
Zóna 3 Jazýčkový kontakt Pouze ke čtení

Stav zóny ústředny (zavřená nebo otevřená) s upozorněními na poplach, požární poplach, sabotáž, poruchu požární smyčky, ztrátu dohledu a slabou baterii

boolean ascii
Proměnná: ZoneNum — Číslo zóny v ústředně, tři číslice (001 až 192)

Zóna 3

Čtení
RETURN(Rc);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
# Zone status: RZ<nnn> + C, O, T, F + A F S L, each O when OK
IF INDEXOF(msg, "RZ" + ZoneNum) = 0 AND LENGTH(msg) >= 10
    VAR st := GETAT(RECEIVEDBYTES, 5);
    Rc := IF(st = 67, 0, 1);
    ZTamper := IF(st = 84, 1, 0);
    ZFireLoop := IF(st = 70, 1, 0);
    ZAlarm := IF(GETAT(RECEIVEDBYTES, 6) = 65, 1, 0);
    ZFire := IF(GETAT(RECEIVEDBYTES, 7) = 70, 1, 0);
    ZSupervision := IF(GETAT(RECEIVEDBYTES, 8) = 83, 1, 0);
    ZBattery := IF(GETAT(RECEIVEDBYTES, 9) = 76, 1, 0);
END
# Warnings are rebuilt from the stored zone state on every message
IF ZAlarm = 1
    ADDWARNING(1, "Zone in alarm");
END
IF ZFire = 1
    ADDWARNING(2, "Fire alarm");
END
IF ZTamper = 1
    ADDWARNING(3, "Zone tampered");
END
IF ZFireLoop = 1
    ADDWARNING(4, "Fire loop trouble");
END
IF ZSupervision = 1
    ADDWARNING(5, "Supervision lost");
END
IF ZBattery = 1
    ADDWARNING(6, "Low battery");
END
Zóna 4 Jazýčkový kontakt Pouze ke čtení

Stav zóny ústředny (zavřená nebo otevřená) s upozorněními na poplach, požární poplach, sabotáž, poruchu požární smyčky, ztrátu dohledu a slabou baterii

boolean ascii
Proměnná: ZoneNum — Číslo zóny v ústředně, tři číslice (001 až 192)

Zóna 4

Čtení
RETURN(Rc);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
# Zone status: RZ<nnn> + C, O, T, F + A F S L, each O when OK
IF INDEXOF(msg, "RZ" + ZoneNum) = 0 AND LENGTH(msg) >= 10
    VAR st := GETAT(RECEIVEDBYTES, 5);
    Rc := IF(st = 67, 0, 1);
    ZTamper := IF(st = 84, 1, 0);
    ZFireLoop := IF(st = 70, 1, 0);
    ZAlarm := IF(GETAT(RECEIVEDBYTES, 6) = 65, 1, 0);
    ZFire := IF(GETAT(RECEIVEDBYTES, 7) = 70, 1, 0);
    ZSupervision := IF(GETAT(RECEIVEDBYTES, 8) = 83, 1, 0);
    ZBattery := IF(GETAT(RECEIVEDBYTES, 9) = 76, 1, 0);
END
# Warnings are rebuilt from the stored zone state on every message
IF ZAlarm = 1
    ADDWARNING(1, "Zone in alarm");
END
IF ZFire = 1
    ADDWARNING(2, "Fire alarm");
END
IF ZTamper = 1
    ADDWARNING(3, "Zone tampered");
END
IF ZFireLoop = 1
    ADDWARNING(4, "Fire loop trouble");
END
IF ZSupervision = 1
    ADDWARNING(5, "Supervision lost");
END
IF ZBattery = 1
    ADDWARNING(6, "Low battery");
END
Virtuální PGM Jazýčkový kontakt Pouze ke čtení

Stav jednoho virtuálního PGM modulu PRT3, který zapínají a vypínají události ústředny pro něj naprogramované; do TapHome jen hlásí

boolean ascii

Virtuální PGM

Čtení
RETURN(Rc);
Listener
VAR msg := TOSTRING(RECEIVEDBYTES);
IF INDEXOF(msg, "PGM" + PgmNum + "ON") = 0
    Rc := 1;
END
IF INDEXOF(msg, "PGM" + PgmNum + "OFF") = 0
    Rc := 0;
END
Připojení: Packet Parser → TCP
Možná vylepšení (8)
  • Emergency, medical and fire panic — Left out on purpose: a panic command triggers a real alarm report.
  • Smoke detector reset — Left out on purpose.
  • Virtual inputs 1–16 — TapHome could open and close virtual inputs of the PRT3 to trigger actions in the panel; not in the template.
  • Zone, area and user labels — The panel returns 16-character labels; the template uses numbers only.
  • Utility keys — Utility key commands of the PRT3, not in the template.
  • System events — The PRT3 sends live events (zone open, arming, alarm); the template reads states by polling every 5 s instead.
  • Zone bypass and direct control of physical PGM outputs — The PRT3 ASCII protocol has no command for either.
  • More areas and zones — The template has one area, four zones and one virtual PGM. Import it again with other numbers for more; the converter usually accepts one TCP client, so check whether it allows a second connection.

Zdroje

  • Paradox APR-PRT3 Printer Module — ASCII Protocol Programming Instructions (ASCII-EP01)

Našli jste problém s touto šablonou zařízení?

Napište nám, co nefunguje, co chybí, nebo jak by se měla šablona chovat. Vaše zpětná vazba nám pomáhá udržet katalog přesný.

Komunita — neověřeno

Chcete to použít ve svém TapHome jádře?

Otevřete tuto šablonu v zákaznickém portálu a použijte ji ve svém domově, nebo navrhněte úpravu a odešlete ji zpět do katalogu.

Otevřít v portálu