Přeskočit na hlavní obsah

Příkazy přes downlink a správa na dálku (fPort 85)

Zařízení STICKER přijímá příkazy jako downlinky LoRaWAN na fPort 85 a odpovídá na ně zprávami na fPort 85.

Příkazy lze posílat ve dvou formátech:

  • Jako JSON (doporučeno): Pokud má síťový server kodek payloadu STICKER (ttn.js) přiřazený jako formátovač downlinků, můžete příkazy zařazovat jako strukturované objekty JSON.
  • Jako surový hex: Předem zakódované binární bajty payloadu lze poslat přímo na fPort 85, aniž by procházely kodérem LNS.

Ve všech ukázkách JSON níže je seq pořadové ID transakce, které volíte sami (například 1); zařízení ho vrátí v odpovědi uplinkem.

Ovládání na dálku ve firmwaru v1.4.0

Firmware v1.4.0 přináší úplnou správu na dálku přes LoRaWAN na fPort 85. Zařízení lze bezdrátově přenastavit, zjistit jeho stav, synchronizovat ho nebo si vyžádat opětovné odeslání historie, a to bez fyzického připojení přes SWD i bez NFC.

Uložení změn konfigurace

Parametry změněné na dálku pomocí set_param se okamžitě projeví v RAM. Změny se ale neuloží do flash paměti, dokud nepošlete příkaz settings_save (který vyvolá restart zařízení). Neuložené změny se při dalším vypnutí a zapnutí zahodí.


Akční příkazy (bez parametrů)​

Akční příkazy spouštějí systémové operace, vyžádají si diagnostická hlášení nebo vynutí reset stavu hardwaru.

AkcePříkaz JSONHex (fPort 85)Popis
Vyžádat informace o zařízení{"command":"get_info","seq":1}08012200Zařízení okamžitě odešle payload Device Info on Join (sériové číslo, verze FW, příčina resetu, claim token, stav baterie).
Odeslat hlášení ihned{"command":"force_send","seq":1}08014a00Vynutí okamžité vzorkování senzorů a odeslání uplinku na fPort 2.
Získat konfiguraci{"command":"get_config","seq":1}08012a00Vrátí úplný výpis aktivních parametrů zařízení.
Prohledat sběrnici 1-Wire{"command":"w1_scan","seq":1}08017200Prohledá sběrnici 1-Wire a najde připojené senzory Dallas / Machine Probe.
Synchronizovat hodiny RTC{"command":"clock_sync","seq":1}08016200Odešle požadavek MAC DeviceTimeReq a synchronizuje hodiny reálného času se síťovým časem.
Uložit připravenou konfiguraci{"command":"settings_save","seq":1}08013200Zapíše čekající konfiguraci z RAM do flash paměti NVS a restartuje zařízení.
Restartovat systém{"command":"reboot","seq":1}08013a00Vyvolá okamžitý restart systému.
Factory reset{"command":"factory_reset","seq":1}08014200Vrátí konfiguraci na výchozí hodnoty z výroby a zachová sériové číslo, secret key a claim token.
Resetovat stack LoRaWAN{"command":"lrw_reset","seq":1}0801820100Vynuluje čítače rámců LoRaWAN a hodnoty DevNonce (restartuje MCU).
Vynutit opětovné připojení{"command":"lrw_join","seq":1}08018a0100Stack LoRaWAN zahájí nové připojení OTAA (Join).
Vstoupit do kalibrace{"command":"enter_calibration","seq":1}0801920100Přepne zařízení do kalibračního režimu pro Hallovy senzory a analogové vstupy.

Konfigurace na dálku (set_param a get_param)​

Systémové parametry jsou uspořádané do konfiguračních skupin lorawan, application a sensors.

Příklady​

Nastavení intervalu hlášení na 10 minut (600 sekund):

{ "command": "set_param", "seq": 1, "set_param": { "application": { "interval_report": 600 } } }

Hex (fPort 85): 08011205120318d804

Zapnutí vysílání (radio_mode):

{ "command": "set_param", "seq": 1, "set_param": { "lorawan": { "radio_mode": true } } }

Hex (fPort 85): 080112040a022801

Zapnutí adaptivní datové rychlosti (ADR):

{ "command": "set_param", "seq": 1, "set_param": { "lorawan": { "adr": true } } }

Hex (fPort 85): 080112040a022001

Dotaz na konkrétní parametr (například interval hlášení):

{ "command": "get_param", "seq": 1, "get_param": { "application_field": [3] } }

Hex (fPort 85): 08011a03120103

Vynulování čítačů impulzů (levý Hallův spínač a externí vstup A):

{ "command": "reset_counters", "seq": 1, "reset_counters": { "hall_left": true, "input_a": true } }

Hex (fPort 85): 0801520408011801


Dynamická pravidla alarmů (alarms)​

Pravidla alarmů pro teplotu, vlhkost, digitální vstupy nebo prahy počtu impulzů lze měnit na dálku. Obsadit lze až 16 slotů pravidel (alarm_0 až alarm_15). Aktivní alarmy posílají okamžitá hlášení uplinkem na fPort 3.

Nastavení slotu 0 (prah teploty na desce: alarm pod 5 °C nebo nad 30 °C):

{ "command": "set_param", "seq": 1, "set_param": { "alarms": { "alarm_0": "03000000000000a0400000f04100000000" } } }

Hex (fPort 85): 080112152a131a1103000000000000a0400000f04100000000

Smazání pravidla alarmu ve slotu 0:

{ "command": "set_param", "seq": 1, "set_param": { "alarms": { "alarm_0": "0000000000000000000000000000000000" } } }

Hex (fPort 85): 080112152a131a110000000000000000000000000000000000


Vyžádání historie na dálku (req_history)​

Záznamy ze senzorů, které se během výpadků sítě uložily do flash paměti, získáte downlinkem req_history s požadovaným časovým oknem (unixové časové značky). Zařízení STICKER pak uložená měření pošle zpět jako sérii paketů history_frame na fPort 85.

Vyžádání historie senzorů:

{ "command": "req_history", "seq": 1, "req_history": { "from_unix": 1780000000, "to_unix": 1780003600 } }

Hex (fPort 85): 08015a0c0880cae2d0061090e6e2d006


  • ChirpStack v4: Přejděte na Device → Queue a zvolte fPort 85. Zařaďte buď surový hexadecimální payload, nebo strukturovaný objekt JSON (pokud používáte kodek v profilu zařízení).
  • The Things Stack (TTS): Přejděte na Device → Messaging → Downlink a nastavte fPort 85. Vložte přímo hexadecimální bajty, nebo payload JSON, pokud je kodek přiřazený jako formátovač payloadu downlinku.