Távoli P1 mérő (bridge)

Az ADA P1 Meter képes egy másik eszköz P1 adatait is felhasználni saját adatforrásként. Így anélkül tudsz második telephelyet vagy több eszközt egymásba integrálni, hogy mindegyikhez külön P1 kábel kellene.

Mire jó?

Néhány tipikus forgatókönyv:

  • Távoli telephely – egy másik épület mérőjének adatait behozod a főépület rendszerébe
  • Két darab ADA közös dashboard – az egyik olvassa a P1 portot, a másik megjeleníti
  • Tesztelés – fejlesztés alatt egy másik gép által publikált mérésekkel dolgozol
  • Redundancia – az egyik offline, a másik automatikusan átvesz

Hogyan működik

Az ADA képes feliratkozni egy MQTT topicra, és onnan olvasni a JSON-t, úgy, mintha saját P1 portja lenne. Az MQTT üzenetek ugyanabban a formátumban vannak, mint amit a /json végpont ad – így egyik ADA publishe egy brókerre, a másik subscribe-ol ott.

Beállítás

A forrás-eszköznek (annak, amelyik a valódi P1 porthoz csatlakozik) publish-elnie kell a saját JSON-jét egy MQTT topicra – ezt automatikusan megteszi az MQTT beállítás után.

A cél-eszközön (annak, amelyik a távoli adatokat akarja használni) engedélyezned kell a Remote P1 funkciót.

MQTT parancs:

{
  "m": "SET_REMOTE_P1",
  "topic": "ada/data/myuser_ABC123",
  "mode": 2,
  "interval": 10,
  "id": "set1"
}

Paraméterek

MezőJelentés
topicA forrás MQTT topicja, amire fel akarsz iratkozni
modeA keverési stratégia (lásd lent)
intervalMennyire sűrűn használja fel (másodperc, min. 1)

Módok

modeJelentés
0KI – távoli P1 inaktív
1Teljes felülírás – a teljes lokális JSON helyett a távoli érkezik
2Felülírás az azonosítókon kívül – a saját username, client_id, local_ip megmarad, minden más a távoliból jön
3Csak hiányzó kulcsok – a lokális P1 marad, de ha onnan hiányzik egy mező, beírja a távoliból

A leggyakrabban használt a mode 2, mert így a készülék megtartja a saját azonosságát, de az energiaadatok a másikéból jönnek.

Lekérdezés

A beállítás ellenőrzése:

curl -X POST http://okosvillanyora.local:8989/restart
# majd nézd meg a logokat vagy státusz választ

Vagy MQTT-n:

mosquitto_pub -t 'ada/cmd/<topicKey>' \
  -m '{"m":"STATUS_GET","id":"s1"}'

A status objektumban visszajön a remote P1 konfiguráció is.

Kikapcsolás

{
  "m": "SET_REMOTE_P1",
  "topic": "",
  "mode": 0,
  "interval": 10,
  "id": "off"
}

Gyakoriság és ráta-korlát

Az interval mező szabályozza, milyen sűrűn használod fel a távoli adatokat. Alapértelmezett 10 mp – ha gyakrabban érkeznek üzenetek, a köztesek kihagyásra kerülnek. Ez véd az üzenet-floodtól, ha a forrás-eszköz túl gyakran publikál.

Fontos tudnivalók

  • A távoli P1 nem helyettesíti a saját P1 csatlakozást – fizikailag csatlakoztathatsz P1 kábelt is, és akkor mindkettő elérhető (mode 3-nál)
  • Az adatok ugyanolyan struktúrájúak, mint a saját /json – a dashboard, JSON API, szabályok, MQTT, minden működik
  • A forrás- és cél-eszköznek ugyanarra az MQTT brókerre kell csatlakoznia
  • A forrás-eszköznek publisha kell a topicot, amire a cél feliratkozik – ez alapértelmezetten megtörténik, ha az ADA MQTT-re van állítva
  • Biztonsági megfontolás: csak megbízható topicot használj forrásként, mert a beérkező adatok kerülnek a saját JSON-odba, és szabályaid azokon alapulnak