TapHome

Paradox Digiplex EVO cez PRT3 (TCP)

Packet Parser → TCP
Pridal
Posledná aktualizácia: 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 cez PRT3 (TCP)

Šablóna Paradox EVO PRT3 prepája alarmovú ústredňu Paradox Digiplex EVO s TapHome cez modul PRT3 a oficiálny ASCII protokol Paradoxu. PRT3 je pripojený na zbernicu combus ústredne a protokol ponúka na svojom 9-pinovom sériovom porte. Prevodník RS-232 na Ethernet sprístupní tento port v lokálnej sieti a TapHome sa k prevodníku pripája cez TCP — počítač medzi nimi netreba.

Šablóna ukazuje stav armovania jednej oblasti a oblasť armuje alebo disarmuje užívateľským kódom, ukazuje štyri zóny s ich upozorneniami a jeden virtuálny PGM a ukáže chybu, keď PRT3 stratí spojenie s ústredňou.

PRT3 slúži ako rozhranie pre domácu automatizáciu len pri ústredniach Digiplex EVO. Pre ústredne Spectra SP a Magellan MG použite komunitnú šablónu Alarmové ústredne Paradox cez PAI (MQTT).

Komunitná šablóna — zatiaľ neotestovaná s TapHome na skutočnej ústredni. Šablóna vznikla z oficiálnej príručky ASCII protokolu Paradoxu (ASCII-EP01) a otestovaná bola len so simulátorom PRT3 na lokálnom TapHome Core 2025.2, nie so skutočnou ústredňou Digiplex EVO so skutočným PRT3 a prevodníkom. Overte ju na svojej inštalácii skôr, než sa na ňu budete spoliehať pri zabezpečení; skúsenosti z praxe sú vítané. XML stiahnete na tejto stránke alebo v portáli TapHome: Paradox EVO cez PRT3 — komunitná šablóna, a importujete ho ako nový modul.

Bezpečnosť: užívateľský kód je uložený v TapHome a ide nešifrovane. PRT3 armuje a disarmuje len s užívateľským kódom a šablóna tento kód posiela s každým príkazom na armovanie a disarmovanie. Kód je uložený v konfigurácii TapHome a ide nešifrovane po lokálnej sieti medzi TapHome Core a prevodníkom. Založte v ústredni pre TapHome samostatného užívateľa obmedzeného na oblasti, ktoré TapHome ovláda, a použite jeho kód — nikdy nie hlavný kód.

Podporované ústredne

ÚstredňaPožiadavka
Digiplex EVO48, EVO96, EVO192, EVOHDPRT3 (alebo BUS2SER) v režime domácej automatizácie s ASCII protokolom
DGP-848verzia 4.11 alebo novšia
DGP-NE96verzia 1.60 alebo novšia

Ústredne Spectra SP a Magellan MG nemajú oficiálne rozhranie pre domácu automatizáciu — pozrite Alarmové ústredne Paradox cez PAI (MQTT).

Hardvérové zapojenie

  • PRT3 k ústredni: štyri svorky PRT3 (červená, čierna, zelená, žltá) pripojte na svorky zbernice combus ústredne.
  • Prevodník k PRT3: stranu RS-232 prevodníka pripojte na 9-pinový sériový port PRT3 — nie na paralelný port ani na port USB.
  • Prevodník do siete: prevodník nastavte do režimu TCP server s pevnou IP adresou a TCP portom. TapHome sa k nemu pripája ako TCP klient a spojenie drží otvorené.

Parametre sériovej linky sú 8N1 (8 dátových bitov, bez parity, 1 stop bit). Prevodník musí používať presne tú istú rýchlosť ako PRT3 — pri inej rýchlosti TapHome nedostane nič.

Konfigurácia

Režim domácej automatizácie na PRT3

PRT3 naprogramujete z klávesnice ústredne:

  1. Podržte [0] a zadajte inštalačný kód.
  2. Zadajte sekciu [4003] pri ústredniach EVO alebo [953] pri ústredniach DGP-848.
  3. Zadajte 8-miestne sériové číslo PRT3.
  4. Zadajte sekciu [016] (voľby sériového portu) a nastavte:
VoľbaNastavenieVýznam
[1]ZAPSériový port zapnutý
[4]ZAPDomáca automatizácia (nie hlásenie udalostí)
[5] a [6]VYP a VYPASCII protokol (nie C-Bus)
[2] a [3]podľa príručky PRT3Rýchlosť: 2400, 9600, 19200 alebo 57600 b/s — rovnakú rýchlosť nastavte na prevodníku

PRT3 sa dá naprogramovať aj softvérom WinLoad (verzia 2.62 alebo novšia) alebo funkciou rozoslania nastavení modulom (module broadcast) z ústredne.

Virtuálny PGM

Virtuálny PGM šablóny je virtuálny PGM modulu PRT3, nie fyzický výstup PGM ústredne. Naprogramujte ho v PRT3 s udalosťami ústredne, ktoré ho zapínajú a vypínajú (sekcie [100] až [399], desať sekcií na jeden virtuálny PGM), aby PRT3 posielal jeho stav do TapHome.

Užívateľ pre TapHome

Založte v ústredni pre TapHome samostatného užívateľa, dajte mu prístup len k oblastiam, ktoré TapHome armuje a disarmuje, a jeho kód (4 až 6 číslic) zadajte pri importe. Šablóna tento kód posiela s každým príkazom na armovanie a disarmovanie, preto parameter nesmie ostať prázdny.

Parametre importu

Parameter importuPopisPredvolená hodnota
IP adresa prevodníkaIP adresa prevodníka RS-232 na Ethernet v režime TCP server192.168.1.100
TCP port prevodníkaTCP port prevodníka4001
Číslo oblastiOblasť v ústredni, tri číslice (001 až 008)001
Čísla zón 1–4Zóny v ústredni, tri číslice (001 až 192)001 … 004
Číslo virtuálneho PGMVirtuálny PGM modulu PRT3, dve číslice (01 až 30)01
Užívateľský kódKód užívateľa ústredne založeného pre TapHome(prázdne)

Pre ďalšie oblasti alebo zóny importujte šablónu znova s inými číslami a zariadenia, ktoré nepotrebujete, zmažte. Každý import otvára vlastné TCP spojenie, preto overte, či prevodník prijme viac ako jedno.

Funkcie zariadení

Oblasť

Ukazuje stav oblasti a oblasť armuje alebo disarmuje.

StavKeď ho vyberiete v TapHome
Disarmovanýdisarmuje oblasť užívateľským kódom
Armovanýarmuje oblasť
Armovaný Forcearmuje oblasť nútene (Force)
Armovaný Stayarmuje oblasť v režime Stay
Armovaný Instantarmuje oblasť v režime Instant
Poplachnepošle nič — stav len ukazuje poplach, ktorý hlási ústredňa

Po každom príkaze sa šablóna znova spýta na stav oblasti. Zariadenie Oblasť ukáže upozornenie, keď ústredňa odmietla posledný príkaz na armovanie alebo disarmovanie (zvyčajne zlý užívateľský kód), keď má oblasť poruchu a keď je poplach v pamäti. Pri štarte TapHome Core šablóna nepošle žiadny príkaz na armovanie ani disarmovanie — oblasť prevezme stav z najbližšej odpovede ústredne.

Zóny 1–4

Každá zóna ukazuje, či je zatvorená alebo otvorená; zóna so sabotážou a zóna s poruchou požiarnej slučky sa berú ako nezatvorené. Upozornenia sa ukážu, keď je zóna v poplachu, v požiarnom poplachu, je sabotovaná, má poruchu požiarnej slučky, stratila dohľad alebo má slabú batériu. Každé upozornenie ostane, kým ústredňa nenahlási zónu ako v poriadku.

Virtuálny PGM

Ukazuje stav jedného virtuálneho PGM modulu PRT3. Stav sa zmení, len keď PRT3 nahlási zmenu; protokol nemá dotaz na stav virtuálneho PGM, takže po štarte TapHome Core zariadenie nemá hodnotu až do najbližšej zmeny. TapHome virtuálny PGM nespína.

Modul

Šablóna sa každých 5 sekúnd pýta na stav oblasti a štyroch zón. Modul ukáže chybu, keď PRT3 nahlási, že stratil spojenie s ústredňou, a zruší ju, keď sa spojenie obnoví. Keď prevodník nie je dostupný, TapHome ukáže bežnú chybu spojenia modulu.

Čo šablóna nemá

  • Panika a reset dymových hlásičov — vynechané zámerne: tiesňová, zdravotná a požiarna panika by spustila skutočné hlásenie poplachu.
  • Obchádzanie zón a priame ovládanie fyzických výstupov PGM — PRT3 ich nepodporuje.
  • Menovky zón a oblastí — šablóna používa len čísla.
  • Virtuálne vstupy a užitočné klávesy modulu PRT3.

Riešenie problémov

TapHome neukazuje žiadne hodnoty

Overte, že prevodník je dostupný na IP adrese a porte z importu, že prevodník a PRT3 používajú rovnakú rýchlosť a že sekcia [016] má voľby [1] a [4] ZAP a voľby [5] a [6] VYP.

Armovanie alebo disarmovanie nič neurobí

Upozornenie na zariadení Oblasť, že ústredňa odmietla príkaz, znamená zlý užívateľský kód alebo užívateľa bez prístupu k oblasti. Overte v ústredni kód užívateľa pre TapHome a jeho oblasti.

Chyba modulu o spojení s ústredňou

PRT3 stratil spojenie s ústredňou po zbernici combus. Overte zapojenie štyroch svoriek zbernice combus.

Zóna ukazuje zlý stav

Overte, že číslo zóny z importu je číslo zóny v ústredni, vždy s troma číslicami (zóna 5 je 005).

Dostupné zariadenia

Paradox PRT3 Modul
Vlastné premenné
AreaNum (string)Číslo oblasti v ústredni, tri čí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 ústredni, tri číslice (001 až 192)
Zone2Num (string)Číslo zóny 2 v ústredni, tri číslice (001 až 192)
Zone3Num (string)Číslo zóny 3 v ústredni, tri číslice (001 až 192)
Zone4Num (string)Číslo zóny 4 v ústredni, tri číslice (001 až 192)
PgmNum (string)Číslo virtuálneho PGM naprogramovaného v PRT3, dve čí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žívateľský kód samostatného užívateľa ústredne založeného pre TapHome (4 až 6 číslic), nie hlavný kód; posiela sa nešifrovane s každým príkazom na armovanie a disarmovanie
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

Čítanie (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
Oblasť Viacstavový prepínač

Stav jednej oblasti ústredne a jej armovanie alebo disarmovanie užívateľským kódom; Poplach sa len zobrazuje a nič neposiela

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

Oblasť

Čítanie stavu prepínača
RETURN(Mu);
Zápis stavu prepínača
# 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 Len na čítanie

Stav zóny ústredne (zatvorená alebo otvorená) s upozorneniami na poplach, požiarny poplach, sabotáž, poruchu požiarnej slučky, stratu dohľadu a slabú batériu

boolean ascii
Premenná: ZoneNum — Číslo zóny v ústredni, tri číslice (001 až 192)

Zóna 1

Čítanie
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 Len na čítanie

Stav zóny ústredne (zatvorená alebo otvorená) s upozorneniami na poplach, požiarny poplach, sabotáž, poruchu požiarnej slučky, stratu dohľadu a slabú batériu

boolean ascii
Premenná: ZoneNum — Číslo zóny v ústredni, tri číslice (001 až 192)

Zóna 2

Čítanie
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 Len na čítanie

Stav zóny ústredne (zatvorená alebo otvorená) s upozorneniami na poplach, požiarny poplach, sabotáž, poruchu požiarnej slučky, stratu dohľadu a slabú batériu

boolean ascii
Premenná: ZoneNum — Číslo zóny v ústredni, tri číslice (001 až 192)

Zóna 3

Čítanie
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 Len na čítanie

Stav zóny ústredne (zatvorená alebo otvorená) s upozorneniami na poplach, požiarny poplach, sabotáž, poruchu požiarnej slučky, stratu dohľadu a slabú batériu

boolean ascii
Premenná: ZoneNum — Číslo zóny v ústredni, tri číslice (001 až 192)

Zóna 4

Čítanie
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álny PGM Jazýčkový kontakt Len na čítanie

Stav jedného virtuálneho PGM modulu PRT3, ktorý zapínajú a vypínajú udalosti ústredne naprogramované preň; do TapHome len hlási

boolean ascii

Virtuálny PGM

Čítanie
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
Pripojenie: Packet Parser → TCP
Možné vylepšenia (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 ste problém s touto šablónou zariadenia?

Napíšte nám, čo nefunguje, čo chýba, alebo ako by sa mala šablóna správať. Vaša spätná väzba nám pomáha udržiavať katalóg presný.

Komunita — nepreverené

Chcete to použiť vo svojom TapHome jadre?

Otvorte túto šablónu v Customer Portali a aplikujte ju na svoj domov, alebo navrhnite zmenu a odošlite ju späť do katalógu.

Otvoriť v portáli