TapHome

Xvent Xcont Central

Modbus RTU
Submitted by
Last updated: 03. 2026
Xvent Xcont Central

Xvent Xcont Central to kontroler Modbus RTU do centralnych jednostek rekuperacji Xvent Xhouse (XH) i Xflat (XF). Łączy się z TapHome przez RS-485 za pomocą złącza RJ45 przez XCONT-HUB. Szablon zapewnia sterowanie prędkością wentylatora, monitorowanie temperatury pokojowej i wilgotności, temperaturę ochrony przeciwmrozowej, pomiar przepływu powietrza, progi aktywacji CO2 i wilgotności oraz tryby pracy, w tym tryb boost i tryb letni.

Komunikacja Modbus wymaga firmware w wersji 100 lub wyższej.

Podłączenie sprzętowe

Okablowanie RS-485 przez RJ45

Xcont Central wykorzystuje złącze RJ45 do komunikacji RS-485 przez XCONT-HUB. Magistrala pracuje w trybie half-duplex.

Xvent Xcont Central RJ45 connector pinout for RS-485 connection to XCONT-HUB

Przypisanie pinów RJ45:

PinFunkcja
1Niepodłączony
2Niepodłączony
3Linia danych magistrali RS-485 A
4Linia danych magistrali RS-485 A
5Linia danych magistrali RS-485 B
6Linia danych magistrali RS-485 B
7Niepodłączony
8Niepodłączony

Podłącz przewody A (piny 3, 4) do TapHome RS-485 A+/D+ oraz przewody B (piny 5, 6) do TapHome RS-485 B-/D-. Piny 1, 2, 7 i 8 muszą pozostać niepodłączone.

Magistrala pracuje w trybie half-duplex. Jednostka wymaga minimalnej przerwy 4 ms między ramkami Modbus dla prawidłowego wykrywania ramek. Typowy czas odpowiedzi wynosi około 4 ms.

Specyfikacja techniczna
  • Protokół: Modbus RTU Slave, RS-485
  • Prędkość transmisji: 19200 (obsługuje również 4800 i 9600)
  • Parzystość: Even (obsługuje również brak parzystości)
  • Bity danych: 8
  • Bit stopu: 1
  • Zakres adresu slave: 1–247

Konfiguracja

Włączenie komunikacji Modbus

Adres slave Modbus i parametry komunikacyjne konfiguruje się przez rejestr retencji DCFG pod adresem 0x9C50. Ustawienia domyślne:

  • Prędkość transmisji: 19200 (bity 5–6 = 3)
  • Parzystość: Even (bit 7 = 0)
  • Adres slave: Konfigurowany w bitach 8–15 (zakres 1–247)

Aby zmienić ustawienia Modbus, zapisz do rejestru H:40016 używając funkcji Modbus 0x10:

BityFunkcjaWartości
5–6Prędkość transmisji0=Wyłączona, 1=4800, 2=9600, 3=19200
7Parzystość0=Even, 1=Brak parzystości
8–15Adres slave1–247

Zmiany prędkości transmisji, parzystości i adresu slave wchodzą w życie natychmiast. Jednostka przestanie komunikować się do momentu rekonfiguracji mastera Modbus na nowe parametry.

Konfiguracja TapHome

Podczas dodawania urządzenia w TapHome skonfiguruj połączenie Modbus RTU z następującymi ustawieniami:

  • Slave ID: Musi odpowiadać adresowi skonfigurowanemu w jednostce (domyślny zależy od jednostki)
  • Prędkość transmisji: 19200
  • Parzystość: Even
  • Bity stopu: 1
  • Bity danych: 8

Funkcje urządzenia

Zasilanie i tryby pracy
  • Power (H:40000 bit 0) — główny wyłącznik ON/OFF jednostki rekuperacyjnej
  • Fan Mode (H:40000 bit 1) — przełączanie między trybem automatycznym (sterowanie AQS na podstawie czujników CO2/wilgotności) a ręcznym sterowaniem wentylatorem
  • Summer Mode (H:40000 bit 2) — aktywacja trybu letniego bypass z konfigurowalnym czasem trwania (domyślnie 8 godzin)
  • Boost Mode (H:40000 bit 4) — aktywacja trybu boost z wyższą prędkością wentylatora na konfigurowalny czas (domyślnie 60 sekund)
  • Touch Button Lock (H:40000 bit 5) — blokada rodzicielska przycisków dotykowych na panelu przednim

Wszystkie te elementy sterujące współdzielą jeden rejestr retencji (H:40000) i używają manipulacji poszczególnymi bitami — przełączenie jednej funkcji nie wpływa na pozostałe.

Sterowanie prędkością wentylatora
  • Fan Speed Level (H:40000 bity 6–9) — wybór spośród 8 poziomów prędkości (0–7), gdzie każdy poziom odpowiada określonemu napięciu wyjściowemu, które różni się w zależności od modelu jednostki (XF1-015, XH1-030, XF1-020, XH2-030). Przełącznik wielowartościowy pokazuje również opcję Boost (poziom 8), ale zaleca się używanie przełącznika Boost Mode

  • Fan Status (A:30001 bity 8–11) — wskaźnik tylko do odczytu aktualnego stanu pracy wentylatora: Jednostka WYŁ, WYŁ chłodzenie, Błąd wentylatora 1, Błąd wentylatora 2, Aktywny normalny, Aktywny przeciwmrozowy, Nieaktywny normalny, Nieaktywny przeciwmrozowy, Tryb letni lub Tryb boost. Atrybut serwisowy pokazuje poprzedni stan wentylatora przed bieżącą zmianą

Monitorowanie temperatury i wilgotności
  • Room Temperature & Humidity (A:30016 / A:30014) — odczyt temperatury pokojowej z rozdzielczością 0,1 °C i wilgotności względnej z rozdzielczością 0,1 % RH. Atrybut serwisowy stanu czujnika informuje, czy czujnik jest OK, odłączony lub zwarty
  • Frost Protection Temperature (A:30015) — odczyt czujnika temperatury ochrony przeciwmrozowej po stronie wywiewu z rozdzielczością 0,1 °C. Atrybut serwisowy monitoruje stan połączenia czujnika
  • Desired Temperature (A:30012) — odczyt aktualnie ustawionej żądanej temperatury pokojowej z rozdzielczością 0,1 °C. Ta wartość jest w szablonie tylko do odczytu — poziom temperatury ustawia się przez rejestr panelu przedniego
Monitorowanie napięcia wentylatora
  • Fan 1 Voltage (A:30018) — odczyt aktualnego napięcia wyjściowego wentylatora 1 z rozdzielczością 0,01 V. Atrybuty serwisowe informują o stanie wejścia tacho i potwierdzeniu rozruchu silnika
  • Fan 2 Voltage (A:30020) — odczyt aktualnego napięcia wyjściowego wentylatora 2 z rozdzielczością 0,01 V. Te same atrybuty serwisowe co wentylator 1
Progi jakości powietrza
  • CO2 Activation Threshold (H:40001) — konfigurowalny poziom stężenia CO2 (600–1000 ppm, domyślnie 800 ppm), przy którym wentylatory automatycznie się aktywują w trybie automatycznym AQS. Regulowany przez akcję serwisową „Set Value"
  • RH Activation Threshold (H:40002) — konfigurowalny poziom wilgotności względnej (50–75 %, domyślnie 65 %), przy którym wentylatory automatycznie się aktywują w trybie automatycznym AQS. Regulowany przez akcję serwisową „Set Value"
Pomiar przepływu powietrza
  • Airflow (A:30015) — odczyt aktualnego przepływu powietrza z czujnika przepływu z rozdzielczością 0,1 m³/h
Diagnostyka serwisowa

Moduł udostępnia trzy atrybuty serwisowe do monitorowania:

  • Firmware Version (A:30000) — aktualna wersja firmware jednostki
  • UI State (A:30001 bity 0–3) — aktualny stan interfejsu użytkownika z 14 możliwymi wartościami, w tym Jednostka wył., Błędy wentylatorów, Błędy czujników, Stany blokady, Normalna praca, Menu serwisowe i Menu użytkownika
  • Attribute (H:40000 bity 10–15) — ustawienie poziomu temperatury dla jednostek typu E

ReadScript modułu monitoruje również błędy czujników CO2 i RH z rejestru stanu A:30003 i zgłasza je jako błędy w TapHome.

Dodatkowe funkcje

Xcont Central udostępnia również rejestry dla odczytów czujnika CO2 (A:30013), stanu jakości powietrza AQS i wymaganej prędkości wentylatora, monitorowania stanu podgrzewania wstępnego i dogrzewania, śledzenia czasu pracy filtra (A:30028), stanu przekaźników podgrzewania i dogrzewania, korekcji temperatury pokojowej i różnych rejestrów timerów. Opcje konfiguracyjne obejmują ustawienie żywotności filtra, prędkości i czasu trwania trybu boost, czasu trwania trybu letniego oraz flagi stałej minimalnej prędkości wentylatora. Mogą one zostać dodane w przyszłej aktualizacji szablonu.

Rejestr wartości czujnika CO2 (A:30013) i czas pracy filtra (A:30028) nie są zawarte w aktualnym szablonie. Aby bezpośrednio monitorować poziomy CO2, czujnik CO2 można dodać jako niestandardowe urządzenie Modbus w TapHome używając rejestru wejściowego A:30013 (funkcja 0x04, adres 0x753D).

Rozwiązywanie problemów

Brak komunikacji Modbus
  1. Sprawdź połączenie kabla RJ45 — upewnij się, że kabel jest prawidłowo osadzony zarówno w XCONT-HUB, jak i w adapterze RS-485
  2. Zweryfikuj okablowanie pinów — piny 3/4 (przewód A) i 5/6 (przewód B) muszą być prawidłowo podłączone do TapHome RS-485 A+/B-
  3. Sprawdź parametry komunikacyjne — TapHome musi być ustawiony na 19200 baud, parzystość even, 1 bit stopu, 8 bitów danych (zgodne z domyślnymi ustawieniami jednostki)
  4. Sprawdź adres slave — zweryfikuj, że skonfigurowany adres odpowiada temu, co jest ustawione w TapHome
  5. Przestrzegaj taktowania ramek — między ramkami Modbus musi być co najmniej 4 ms przerwy
Błędy czujników zgłaszane w TapHome
  1. Błąd czujnika CO2 — sprawdź fizyczne połączenie czujnika CO2 z jednostką. ReadScript modułu odczytuje bit 0 rejestru A:30003
  2. Błąd czujnika RH — sprawdź fizyczne połączenie czujnika wilgotności. ReadScript modułu odczytuje bit 1 rejestru A:30003
  3. Czujnik pokojowy odłączony/zwarty — sprawdź atrybut serwisowy na urządzeniu Room Temperature. Wartości stanu: 0=OK, 1=Odłączony, 2=Zwarty
Błędy wentylatorów
  1. Sprawdź urządzenie Fan Status — wartości 2 i 3 wskazują odpowiednio błąd wentylatora 1 lub wentylatora 2
  2. Zweryfikuj atrybut serwisowy stanu wejścia tacho na urządzeniach Fan Voltage (OK/NG)
  3. Sprawdź atrybut serwisowy flagi rozruchu silnika — NG wskazuje, że silnik nie uruchomił się
Format adresów rejestrów

Xcont Central używa wysokich adresów Modbus. Rejestry wejściowe zaczynają się od 0x7530 (dziesiętnie 30000), a rejestry retencji od 0x9C40 (dziesiętnie 40000). Podczas konfiguracji niestandardowych urządzeń w TapHome używaj dziesiętnych adresów rejestrów (np. 30016 dla temperatury pokojowej, 40000 dla sterowania panelem przednim).

Dostępne urządzenia

Xvent Xcont Central Moduł
Atrybuty serwisowe
Wersja firmware
Stan UI
Atrybut

Xvent Xcont Central

Odczyt (moduł)
IF(GETBIT(MODBUSR(A, 30003, Uint16),0)=1, ADDERROR("Chyba CO2 čidla"));
IF(GETBIT(MODBUSR(A, 30003, Uint16),1)=1, ADDERROR("Chyba RH čidla"));
Atrybuty serwisowe
Firmware Version
MODBUSR(A, 30000, Uint16)
Stav uživatelského rozhraní
SWITCH(GETBITS( MODBUSR(A, 30001, Uint16),0,4 ), 
0, "Vypnutá jednotka",
1, "Vypnuté zařízení probíhá dochlazení předehřevu či dohřevu",
2, "Chyba ventilátoru 1 ",
3, "Chyba ventilátoru 2 ",
4, "Chyba pokojového čidla",
5, "Chyba protimrazového čidla",
6, "Aktivní zámek dotykových tlačítek",
7, "Stav deaktivace zámku dotykových tlačítek",
8, "Stav probuzeného ovladače, zobrazí aktuální nastavení",
9, "Režim nastavení škály ventilátorů",
10, "Režim nastavení škály teplot",
11, "Běžný power ON režim",
12, "Režim servisního menu",
13, "Režim uživatelského menu",
"Chyba"
)
Atribút
GETBITS(MODBUSR(H, 40000, Uint16), 10, 6)
Napięcie wentylatora 1 Zmienna Tylko do odczytu

Aktualne napięcie wyjściowe wentylatora nawiewnego — wskazuje bieżącą prędkość

Rejestr: A:30018 Int16 Jednostka: V numeric
Atrybuty serwisowe
Stan wejścia tacho
Flaga rozruchu silnika

Napięcie wentylatora 1

Odczyt
MODBUSR(A, 30018, Int16)/100
Atrybuty serwisowe
Stav tacho vstupu
SWITCH (GETBIT(MODBUSR(A, 30019, Uint16), 0),
1, "OK",
2, "NG",
"Chyba pri komunikaci"
)
Flag úspěšného startu motoru
SWITCH (GETBIT(MODBUSR(A, 30019, Uint16), 1),
1, "OK",
2, "NG",
"Chyba pri komunikaci"
)
Napięcie wentylatora 2 Zmienna Tylko do odczytu

Aktualne napięcie wyjściowe wentylatora wywiewnego — wskazuje bieżącą prędkość

Rejestr: A:30020 Int16 Jednostka: V numeric
Atrybuty serwisowe
Stan wejścia tacho
Flaga rozruchu silnika

Napięcie wentylatora 2

Odczyt
MODBUSR(A, 30020, Int16)/100
Atrybuty serwisowe
Stav tacho vstupu
SWITCH (GETBIT(MODBUSR(A, 30021, Uint16), 0),
1, "OK",
2, "NG",
"Chyba pri komunikaci"
)
Flag úspěšného startu motoru
SWITCH (GETBIT(MODBUSR(A, 30021, Uint16), 1),
1, "OK",
2, "NG",
"Chyba pri komunikaci"
)
Tryb boost Przełącznik

Aktywuje tymczasową wentylację o wysokiej prędkości dla szybkiej wymiany powietrza

Rejestr: H:40000 UInt16 bit
Wartości / Stany: Aktivní · Neaktivní

Tryb boost

Odczyt stanu przełącznika
GETBIT(MODBUSR(H, 40000, Uint16), 4)
Zapis stanu przełącznika
var val := SETBIT(MODBUSR(H, 40000, Uint16), 4, St);
MODBUSW(H, 40000, Uint16, val);
Temperatura ochrony przeciwmrozowej Czujnik temperatury Tylko do odczytu

Czujnik temperatury po stronie wywiewu do ochrony przeciwmrozowej — uruchamia redukcję wentylatora przy spadku temperatury

Rejestr: A:30015 Int16 Jednostka: °C numeric
Atrybuty serwisowe
Stan czujnika

Temperatura ochrony przeciwmrozowej

Odczyt temperatury
GETBITS(MODBUSR(A, 30015, Int16),0, 14 )/10
Atrybuty serwisowe
Status čidla
SWITCH (GETBITS(MODBUSR(A, 30017, Uint16), 14, 2),
0, "OK",
1, "Čidlo rozpojeno",
2, "Čidlo skratováno",
"Komunikační chyba"
)
Próg aktywacji CO2 Zmienna

Poziom stężenia CO2 (600–1000 ppm), przy którym wentylatory aktywują się automatycznie w trybie AQS

Rejestr: H:40001 UInt16 Jednostka: ppm numeric
Akcje serwisowe
Ustaw wartość

Próg aktywacji CO2

Odczyt
MODBUSR(H, 40001, UInt16)
Akcje serwisowe
Nastavení hodnoty
Parametry: Value[600-1000] (600–1000 val)
MODBUSW(H, 40001, Uint16, val)
Próg aktywacji RH Zmienna

Poziom wilgotności względnej (50–75 %), przy którym wentylatory aktywują się automatycznie w trybie AQS

Rejestr: H:40002 UInt16 Jednostka: % RH numeric
Akcje serwisowe
Ustaw wartość

Próg aktywacji RH

Odczyt
MODBUSR(H, 40002, UInt16)/1000
Akcje serwisowe
Nastavení hodnoty
Parametry: Value [50-75%] (50–75 val)
MODBUSW(H, 4002,BigendianInt16, val*10);
Tryb letni Przełącznik

Aktywuje letni tryb bypass — działa przez konfigurowalny czas (domyślnie 8 godzin)

Rejestr: H:40000 UInt16 bit
Wartości / Stany: Aktivní · Neaktivní

Tryb letni

Odczyt stanu przełącznika
GETBIT(MODBUSR(H, 40000, Uint16), 2)
Zapis stanu przełącznika
var val := SETBIT(MODBUSR(H, 40000, Uint16), 2, St);
MODBUSW(H, 40000, Uint16, val);
Zasilanie Przełącznik
Rejestr: H:40000 UInt16 bit

Zasilanie

Odczyt stanu przełącznika
GETBIT(MODBUSR(H, 40000, Uint16), 0)
Zapis stanu przełącznika
var val := SETBIT(MODBUSR(H, 40000, Uint16), 0, St);

MODBUSW(H, 40000, Uint16, val);
Żądana temperatura Zmienna Tylko do odczytu

Aktualnie ustawiona żądana temperatura pokojowa — tylko do odczytu, ustawiana przez panel przedni

Rejestr: A:30012 Int16 Jednostka: °C numeric

Żądana temperatura

Odczyt
MODBUSR(A, 30012, Int16)/10
Przepływ powietrza Zmienna Tylko do odczytu

Aktualny przepływ powietrza z czujnika przepływu w m³/h

Rejestr: A:30015 UInt16 Jednostka: m³/h numeric

Przepływ powietrza

Odczyt
MODBUSR(A, 30015, Uint16)/10
Tryb wentylatora Przełącznik

Automatyczny (sterowanie AQS na podstawie CO2/wilgotności) lub ręczne sterowanie wentylatorem

Rejestr: H:40000 UInt16 bit
Wartości / Stany: Automatický · Manuální

Tryb wentylatora

Odczyt stanu przełącznika
GETBIT(MODBUSR(H, 40000, Uint16), 1)
Zapis stanu przełącznika
var val := SETBIT(MODBUSR(H, 40000, Uint16), 1, St);

MODBUSW(H, 40000, Uint16, val);
Stan wentylatora Przełącznik wielowartościowy Tylko do odczytu

Aktualny stan pracy wentylatora — Jednostka WYŁ, Aktywny normalny, Przeciwmrozowy, Tryb letni, Tryb boost lub stany błędów

Rejestr: A:30001 UInt16 multi-value
Wartości / Stany: Vypnutá jednotka · OFF - proces dochlazování · Chyba ventilátoru 1 · Chyba ventilátoru 2 · Běžný režim · Antifreeze Režim · Neaktivní ventilátory v běžném režimu · Neaktivní ventilátory v antifreeze režimu · Letní režim · Boost režim

Stan wentylatora

Odczyt stanu przełącznika
GETBITS(MODBUSR(A, 30001, Uint16),8,4 )
Atrybuty serwisowe
Predchozí stav ventilátorů
SWITCH(GETBITS( MODBUSR(A, 30001, Uint16),12,4 ), 
0, "Vypnutá jednotka",
1, "Jednotka je OFF, ventilátory dochlazují předehřev či dohřev",
2, "Chyba ventilátoru 1 ",
3, "Chyba ventilátoru 2 ",
4, "Aktivní ventilátory v běžném režimu",
5, "Aktivní ventilátory ventilátor v antifreeze režimu",
6, "Neaktivní ventilátory v běžném režimu ",
7, "Neaktivní ventilátory v antifreeze režimu ",
8, "Ventilátory v letním režimu",
9, "Ventilátory v Boost režimu ",
"Chyba"
)
Poziom prędkości wentylatora Przełącznik wielowartościowy

Poziom prędkości wentylatora 0–7 — napięcie na poziom zależy od modelu jednostki

Rejestr: H:40000 UInt16 multi-value
Wartości / Stany: Boost

Poziom prędkości wentylatora

Odczyt stanu przełącznika
GETBITS(MODBUSR(H, 40000, Uint16), 6, 4)
Zapis stanu przełącznika
var val := SETBITS(MODBUSR(H, 40000, Uint16), 6, 4,  Mu);
MODBUSW(H, 40000, Uint16, val);
Temperatura pokojowa i wilgotność Czujnik temperatury Tylko do odczytu

Temperatura pokojowa i wilgotność względna z czujnika kombinowanego

Rejestr: A:30016 Int16 Jednostka: °C numeric
Atrybuty serwisowe
Stan czujnika

Temperatura pokojowa i wilgotność

Odczyt wilgotności
MODBUSR(A, 30014, Int16)/10
Odczyt temperatury
GETBITS(MODBUSR(A, 30016, Int16), 0 , 14) / 10
Atrybuty serwisowe
Status čidla
SWITCH(GETBITS(MODBUSR(A, 30016, Int16), 14 , 2),
0,"Ok",
1,"Čidlo rozpojeno",
2,"Čidlo zkratováno",
"Chyba komunikace"
)
Blokada przycisków dotykowych Przełącznik

Blokada rodzicielska przycisków dotykowych panelu przedniego — zapobiega przypadkowym zmianom

Rejestr: H:40000 UInt16 bit
Wartości / Stany: Zamčeno · Odomčeno

Blokada przycisków dotykowych

Odczyt stanu przełącznika
GETBIT(MODBUSR(H, 40000, Uint16), 5)
Zapis stanu przełącznika
var val := SETBIT(MODBUSR(H, 40000, Uint16), 5, St);
MODBUSW(H, 40000, Uint16, val);
Połączenie: Modbus RTU • 19200 baud• 8E1 • Slave ID: $[SlaveId]
Możliwe ulepszenia (14)
  • A:30002 Status Register 2 (Preheat/Reheat) — Preheat status (bit 0–3), previous preheat (bit 4–7), last preheat with active fans (bit 8–11), fan modification stage (bit 12–15)
  • A:30003 Status Register 3 (Reheat/Filter) — Reheat status, filter status, various change flags. Module readscript checks bits 0–1 for CO2/RH sensor errors only
  • A:30004 AQS State — Air quality sensor status: CO2/RH sensor errors, AQS ventilation request, active CO2/RH levels, required fan speed. Partially covered by module readscript error checks
  • A:30005 AQS Required Flow — Required flow value according to AQS values (0.1 m3/h)
  • A:30006 Required Fan Flow — Required fan flow combining user and AQS settings (0.1 m3/h)
  • A:30011 Required Fan Speed — Required fan voltage combining user and AQS settings (0.01 V)
  • A:30013 CO2 Sensor Value — Current CO2 sensor reading (1 ppm). Key air quality measurement — surprisingly missing from template
  • A:30028 Filter Elapsed Time — Filter active time (1 h). Useful for filter replacement tracking
  • A:30033 Relay Status — Relay status: bit 0 = preheat relay, bit 1 = reheat relay
  • H:40016 DCFG Configuration — System configuration: auto shutdown flag, permanent min fan speed, Modbus baud rate/parity/address settings. WARNING: writing baud/parity/address takes effect immediately
  • H:40017 Room Temperature Correction — Room temperature sensor offset correction (0.1 degC, range -10.0 to +10.0°C)
  • H:40018 Summer Mode Duration — Duration of summer mode (1 s, range 3600–32400, default 28800 = 8 h)
  • H:40021 Boost Mode Duration — Duration of boost mode (1 s, range 30–3600, default 60)
  • H:40023 Filter Lifetime — Filter lifetime setting (1 h, range 2200–8800, default 4400)

Źródła