Integrace Modbus TCP
Zapnutí Modbus TCP v aplikaci MyBox, port 502, byte order LBF_LWF a mapy registrů pro Home, Plus, Profi i Post včetně řízení nabíjecího proudu.
Úvod
MyBox stanice podporují komunikaci přes Modbus TCP v režimu Slave. To umožňuje externím systémům (Loxone, Siemens, PLC, BMS apod.) číst stav stanice a řídit nabíjecí výkon.
Tato dokumentace je rozdělena dle typu jednotky:
| Sekce | Jednotka | Produkty |
|---|---|---|
| MS | SaM / MS | MyBox Plus, MyBox PlusLAN |
| MSS | MSS | MyBox Profi, MyBox Post |
| SaM | SaM | MyBox Home |
Obecné nastavení
Požadavky
- Stanice musí být napárována v cloudu a online
- Modbus TCP se nastavuje přes mobilní aplikaci MyBox
- Po aktivaci / jakékoliv změně Modbus konfigurace je nutný restart stanice
Parametry připojení
| Parametr | Hodnota |
|---|---|
| Port | 502 |
| Protokol | Modbus TCP |
| Režim | Slave |
| Výchozí slave address | 10 (konfigurovatelné) |
| Byte order | LBF_LWF (Little Byte First, Little Word First) |
Konfigurace přes mobilní aplikaci
Nastavení Modbus TCP se provádí v mobilní aplikaci MyBox. Sekce Modbus je skrytá v pokročilém nastavení a je nutné ji nejprve odemknout.
Krok za krokem
-
Otevřete aplikaci MyBox a přejděte na záložku Devices ve spodní navigaci.
-
Vyberte svou stanici — klikněte na dlaždici stanice (musí být ve stavu Online).

-
Přejděte na záložku System — v horní navigaci detailu stanice klikněte na System.
-
Odemkněte pokročilé nastavení — sjeďte na konec stránky k položce Set password. Do textového pole zadejte heslo
myboxa potvrďte. Tím se odemknou pokročilé sekce včetně záložky Modbus.
-
Přejděte na záložku Modbus — po odemknutí se v horní navigaci zobrazí záložka Modbus. Klikněte na ni.
-
Nastavte parametry Modbus — na záložce Modbus nakonfigurujte:
- Modbus settings → přepněte na ON
- Protocol type → TCP
- Slave address → výchozí 10 (lze změnit)
- Baudrate, Parity, Byteorder — ponechte výchozí hodnoty, pokud integrátor nevyžaduje jinak

Restart po změně konfigurace
Po jakékoliv změně Modbus nastavení (aktivace, slave address, byte order) je nutný restart stanice. Restart provedete na záložce System tlačítkem REBOOT. Bez restartu komunikace nefunguje.
Doporučení pro síť
- IP adresu stanice doporučujeme zafixovat na DHCP serveru (statická rezervace), aby se po restartu nezměnila
- Stanice získává IP přes DHCP — aktuální IP je viditelná v cloudu
Byte order (Endianness)
Všechny 32-bitové hodnoty (integer i float) používají kódování LBF_LWF (Low Byte First, Low Word First = little-endian).
Příklad — hodnota 0x00000003 (integer 3):
| Low Word | High Word | |||
|---|---|---|---|---|
| Low Byte | High Byte | Low Byte | High Byte | |
| Pořadí přenosu | 1 | 2 | 3 | 4 |
| Hodnota (hex) | 03 | 00 | 00 | 00 |
Doporučené Function Codes
| FC | Název | Použití |
|---|---|---|
| 02 | Read Discrete Inputs | Čtení bool registrů (CABLE_LOCK, PWM_ON) |
| 03 | Read Holding Registers | Čtení R/W registrů (MAX_CHARGE_CURRENT) |
| 04 | Read Input Registers | Čtení stavových registrů (CAR_STATE, proudy, energie) |
| 05 | Write Single Coil | Zápis bool (STOP_CHARGING, UNLOCK_CONNECTOR) |
| 06 | Write Single Holding Register | Zápis 16-bit hodnoty |
| 16 | Write Multiple Holding Registers | Zápis 32-bit hodnoty (2 registry) |
:::warning 32-bitový zápis — použijte FC 16
Hodnoty jako MAX_CHARGE_CURRENT jsou 32-bitové a zabírají 2 registry. Pro zápis je nutné použít FC 16 (Write Multiple Holding Registers). Při použití FC 06 (Write Single Register) se zapíše jen polovina hodnoty a stanice na změnu nereaguje — to je nejčastější příčina problémů s Modbus zápisem.
:::
MS — MyBox Plus
Platí pro: MyBox Plus, MyBox PlusLAN
Stanice s jedním nabíjecím bodem (1 konektor).
Discrete registry (read-only, bool)
| Adresa | Registr | Popis |
|---|---|---|
| 0 | CABLE_LOCK_STATE_KEY | Stav zámku kabelu (0 = odemčeno / zámek není nainstalován) |
| 1 | PWM_ON_KEY | PWM signál aktivní |
Coil registry (R/W, bool)
| Adresa | Registr | Popis |
|---|---|---|
| 0 | STOP_CHARGING | Ukončení nabíjecí relace (zápis nenulové hodnoty) |
| 1 | UNLOCK_CONNECTOR | Odemknutí konektoru (od FW 1.6.0) |
Input registry (read-only, 32-bit = 2 registry)
| Adresa | Registr | Typ | Jednotka / Enum |
|---|---|---|---|
| 0 | CAR_STATE_KEY | integer (enum) | STATE_A(0), STATE_B(1), STATE_C(2), FAIL(3), UNKNOWN(4) |
| 2 | EVSE_STATE_KEY | integer (enum) | Unplugged(0), Plugged(1), Ready(2), Charging(3), Paused(4), Error(5), Locked(6) |
| 4 | NLB_NODE_CURRENT | float | A |
| 6 | EV_METER_CURRENT_L1 | float | A |
| 8 | EV_METER_CURRENT_L2 | float | A |
| 10 | EV_METER_CURRENT_L3 | float | A |
| 12 | EV_METER_TOTAL_ENERGY | float | kWh |
| 14 | EV_METER_TOTAL_ACTIVE_POWER | float | kW |
Holding registry (R/W, 32-bit = 2 registry)
| Adresa | Registr | Typ | Jednotka |
|---|---|---|---|
| 0 | MAX_CHARGE_CURRENT | integer | A |
Řízení výkonu
Registr MAX_CHARGE_CURRENT slouží k omezení maximálního nabíjecího proudu:
- Minimum: 0 A (nabíjení se pozastaví)
- Pod 6 A: nabíjení se automaticky pozastaví (pauza)
- 6–32 A: aktivní nabíjení s daným limitem
- Maximum: závisí na konfiguraci stanice (typicky 16 A nebo 32 A na nabíjecí bod)
MSS — MyBox Profi, MyBox Post
Platí pro: MyBox Profi, MyBox Post
Stanice se dvěma nabíjecími body (2 konektory). Registry jsou zdvojené — konektor 1 začíná na nižších adresách, konektor 2 na adresách + 10 (discrete/coil) resp. + 20 (input/holding).
Discrete registry (read-only, bool)
| Adresa | Konektor | Registr |
|---|---|---|
| 0 | 1 | CABLE_LOCK_STATE_KEY |
| 1 | 1 | PWM_ON_KEY |
| 10 | 2 | CABLE_LOCK_STATE_KEY |
| 11 | 2 | PWM_ON_KEY |
Coil registry (R/W, bool)
| Adresa | Konektor | Registr |
|---|---|---|
| 0 | 1 | STOP_CHARGING |
| 1 | 1 | UNLOCK_CONNECTOR (od FW 1.6.0) |
| 10 | 2 | STOP_CHARGING |
| 11 | 2 | UNLOCK_CONNECTOR (od FW 1.6.0) |
Input registry (read-only, 32-bit = 2 registry)
| Adresa | Konektor | Registr | Typ | Jednotka / Enum |
|---|---|---|---|---|
| 0 | 1 | CAR_STATE_KEY | integer (enum) | STATE_A(0), STATE_B(1), STATE_C(2), FAIL(3), UNKNOWN(4) |
| 2 | 1 | EVSE_STATE_KEY | integer (enum) | Unplugged(0), Plugged(1), Ready(2), Charging(3), Paused(4), Error(5), Locked(6) |
| 4 | 1 | NLB_NODE_CURRENT | float | A |
| 6 | 1 | EV_METER_CURRENT_L1 | float | A |
| 8 | 1 | EV_METER_CURRENT_L2 | float | A |
| 10 | 1 | EV_METER_CURRENT_L3 | float | A |
| 12 | 1 | EV_METER_TOTAL_ENERGY | float | kWh |
| 14 | 1 | EV_METER_TOTAL_ACTIVE_POWER | float | kW |
| 20 | 2 | CAR_STATE_KEY | integer (enum) | STATE_A(0), STATE_B(1), STATE_C(2), FAIL(3), UNKNOWN(4) |
| 22 | 2 | EVSE_STATE_KEY | integer (enum) | Unplugged(0), Plugged(1), Ready(2), Charging(3), Paused(4), Error(5), Locked(6) |
| 24 | 2 | NLB_NODE_CURRENT | float | A |
| 26 | 2 | EV_METER_CURRENT_L1 | float | A |
| 28 | 2 | EV_METER_CURRENT_L2 | float | A |
| 30 | 2 | EV_METER_CURRENT_L3 | float | A |
| 32 | 2 | EV_METER_TOTAL_ENERGY | float | kWh |
| 34 | 2 | EV_METER_TOTAL_ACTIVE_POWER | float | kW |
Holding registry (R/W, 32-bit = 2 registry)
| Adresa | Konektor | Registr | Typ | Jednotka |
|---|---|---|---|---|
| 0 | 1 | MAX_CHARGE_CURRENT | integer | A |
| 20 | 2 | MAX_CHARGE_CURRENT | integer | A |
Řízení výkonu
Každý konektor se řídí nezávisle přes vlastní MAX_CHARGE_CURRENT registr. Pravidla jsou stejná jako u MS sekce (0 A = pauza, pod 6 A = pauza, max. dle konfigurace).
SaM — MyBox Home
Platí pro: MyBox Home
Stanice s jedním nabíjecím bodem. Mapa registrů je shodná s MyBox Plus (MS).
Discrete registry (read-only, bool)
| Adresa | Registr | Popis |
|---|---|---|
| 0 | CABLE_LOCK_STATE_KEY | Stav zámku kabelu |
| 1 | PWM_ON_KEY | PWM signál aktivní |
Coil registry (R/W, bool)
| Adresa | Registr | Popis |
|---|---|---|
| 0 | STOP_CHARGING | Ukončení nabíjecí relace |
| 1 | UNLOCK_CONNECTOR | Odemknutí konektoru (od FW 1.6.0) |
Input registry (read-only, 32-bit = 2 registry)
| Adresa | Registr | Typ | Jednotka / Enum |
|---|---|---|---|
| 0 | CAR_STATE_KEY | integer (enum) | STATE_A(0), STATE_B(1), STATE_C(2), FAIL(3), UNKNOWN(4) |
| 2 | EVSE_STATE_KEY | integer (enum) | Unplugged(0), Plugged(1), Ready(2), Charging(3), Paused(4), Error(5), Locked(6) |
| 4 | NLB_NODE_CURRENT | float | A |
| 6 | EV_METER_CURRENT_L1 | float | A |
| 8 | EV_METER_CURRENT_L2 | float | A |
| 10 | EV_METER_CURRENT_L3 | float | A |
| 12 | EV_METER_TOTAL_ENERGY | float | kWh |
| 14 | EV_METER_TOTAL_ACTIVE_POWER | float | kW |
Holding registry (R/W, 32-bit = 2 registry)
| Adresa | Registr | Typ | Jednotka |
|---|---|---|---|
| 0 | MAX_CHARGE_CURRENT | integer | A |
Příklady komunikace (Modbus TCP)
Všechny příklady používají výchozí byte order LBF_LWF.
Čtení stavu stanice (EVSE_STATE_KEY)
Čtení Input registru na adrese 2, délka 2 registry (FC 04):
TX: 00 34 00 00 00 06 01 04 00 02 00 02
RX: 00 34 00 00 00 07 01 04 04 01 00 00 00Výsledek: 0x00000001 = Plugged (1)
Čtení všech Input registrů konektoru 1
Čtení 16 registrů od adresy 0 (FC 04):
TX: 00 3D 00 00 00 06 01 04 00 00 00 10
RX: 00 3D 00 00 00 23 01 04 20 02 00 00 00 03 00 00 00
00 00 50 41 52 B8 DE 3F 00 00 00 00 00 00 00 00
B8 1E A5 3F 3D 0A D7 3EDekódování:
| Adresa | Hex | Typ | Hodnota |
|---|---|---|---|
| 0–1 | 0x00000002 | enum | STATE_C (2) |
| 2–3 | 0x00000003 | enum | Charging (3) |
| 4–5 | 0x41500000 | float | 13.0 A |
| 6–7 | 0x3FDEB852 | float | 1.74 A |
| 12–13 | 0x3FA51EB8 | float | 1.29 kWh |
| 14–15 | 0x3ED70A3D | float | 0.42 kW |
Čtení MAX_CHARGE_CURRENT
Čtení Holding registru na adrese 0, délka 2 (FC 03):
TX: 00 44 00 00 00 06 01 03 00 00 00 02
RX: 00 44 00 00 00 07 01 03 04 11 00 00 00Výsledek: 0x00000011 = 17 A
Zápis MAX_CHARGE_CURRENT (FC 16 — doporučeno)
Zápis hodnoty 9 A do 2 registrů od adresy 0 (FC 16):
TX: 00 4A 00 00 00 0B 01 10 00 00 00 02 04 09 00 00 00
RX: 00 4A 00 00 00 06 01 10 00 00 00 02Zápis MAX_CHARGE_CURRENT (FC 06 — alternativa pro 16-bit)
Zápis hodnoty 18 A na adresu 0 (FC 06):
TX: 00 4E 00 00 00 06 01 06 00 00 12 00
RX: 00 4E 00 00 00 06 01 06 00 00 12 00:::info Poznámka k FC 06 FC 06 zapíše pouze 16-bit (1 registr). Pro spolehlivý zápis 32-bitových hodnot vždy preferujte FC 16. :::
Čtení PWM_ON_KEY
Čtení Discrete registru na adrese 1 (FC 02):
TX: 00 6A 00 00 00 06 01 02 00 01 00 01
RX: 00 6A 00 00 00 04 01 02 01 01Výsledek: PWM je ON (1)
STOP_CHARGING
Zápis Coil na adrese 0, nenulová hodnota (FC 05):
TX: 00 72 00 00 00 06 01 05 00 00 FF 00
RX: 00 72 00 00 00 06 01 05 00 00 FF 00Nejčastější problémy
Nemohu navázat spojení
- Ověřte, že je v mobilní aplikaci na záložce Modbus zapnuto Modbus settings → ON a Protocol type → TCP
- Ověřte IP adresu stanice (viditelná v aplikaci na záložce LAN nebo v cloudu)
- Port musí být 502
- Restartovali jste stanici po změně konfigurace? Bez restartu komunikace nefunguje
Zápis MAX_CHARGE_CURRENT nereaguje
Nejčastější příčina: použití FC 06 místo FC 16. Registr je 32-bitový (2× 16-bit). Modbus vrátí ACK, ale stanice hodnotu ignoruje. Řešení: použijte FC 16 (Write Multiple Holding Registers) se zápisem do 2 registrů v kódování LBF_LWF.
CABLE_LOCK_STATE_KEY je stále 0
Pokud stanice nemá fyzicky nainstalovaný zámek kabelu (cable-lock = Disable), registr vrací vždy 0. To není chyba.
Po restartu se změnila IP adresa
IP adresu stanice doporučujeme zafixovat statickou DHCP rezervací na routeru/DHCP serveru.
Nabíjení se pozastaví při snížení proudu
Při nastavení MAX_CHARGE_CURRENT pod 6 A se nabíjení automaticky pozastaví (pauza). Pro obnovení zvyšte hodnotu nad 6 A.