Logo250

První nastavení NCP (koordinátora)

Po úvodním resetu a dohodnutí verze komunikačního protokolu je potřeba definovat základní nastavení NCP. NCP má dva typy konfigurovatelných paměťových buněk.

  • EZSP Configuration value; Instrukce 0052 / 0053
  • EZSP Value; Instrukce 00AA / 00AB

Adresy těchto paměťových buněk se označují jako EzspConfigId a EzspValueId. Mají velikost 1 bajt, takže jejich maximální hodnota je 0xFF. Pochopitelně lze jejich obsah nejen číst, ale i přepisovat. U instrukce 0053 je ale časové omezení jen do chvíle připojení k síti. Později už pokus o zápis vrátí chybu EZSP_ERROR_INVALID_CALL. U instrukce 00AB dokumentace podobné omezení neuvádí. Právě tyto buňky se úvodním resetem vrátí do továrního nastavení. Význam uložených hodnot si můžete nastudovat v dokumentu EZSP Reference Guide

  • Instrukce 0052 - GetConfigurationValue; Přečte obsah paměťové buňky EZSP Configuration value. Hodnota má velikost 1 Word
  • Instrukce 0053 - SetConfigurationValue; Zapíše novou hodnotu paměťové buňky EZSP Configuration value na adresu EzspConfigId
  • Instrukce 00AA - GetValue; Přečte obsah paměťové buňky EZSP Value. Hodnota je pole bajtů
  • Instrukce 00AB - SetValue; Zapíše novou hodnotu paměťové buňky EZSP Value na adresu EzspValueId

Jaké konkrétní úpravy se obvykle provádějí po příkazu Reset zjistíte ve výpisu komunikace. Přehled uvádím i v následující tabulce v pořadí, jak jsem je nalogoval. 

Úvodní nastavení konfigurační paměti EZSP Configuration value
Adresa (EzspConfigId) Původní hodnota Nová hodnota Orientační popis (google překlad)
 1A  00C8  - Velikost zdrojové směrovací tabulky.
 13  0008  0008 Maximální doba, po kterou může potomek koncového zařízení čekat mezi dotazy.
 38  012C  005A Doba v sekundách, po kterou trust center umožní opětovné připojení pro zařízení, které používá známý klíč link.
 12  0BB8   1E00  Maximální doba, po kterou MAC podrží zprávu pro nepřímý přenos k potomkovi.
 0C  0000   0002  Určuje profil zásobníku.
 2D   0001   - Počet podporovaných sítí.
 06  0010   -  Maximální počet skupin vícesměrového vysílání, kterých může být zařízení členem.
 19   0000   0002  Maximální počet přidružení EUI64 k síťové adrese, které může trust center udržovat.
 0D   0005   0005  Úroveň zabezpečení použitá pro zabezpečení na MAC a síťové vrstvě.
 05   0010   -  Maximální počet přidružení EUI64 k síťové adrese, který může zásobník pro aplikaci udržovat.
 22   0002   0002  Počet zpráv o konfliktu ID PAN, které musí správce sítě obdržet do jedné minuty, aby vyvolal změnu ID PAN.
 1E   000C   -  Velikost tabulky klíčů používané pro ukládání jednotlivých klíčů link (pokud je zařízením Trust Center) nebo klíčů Application Link (pokud je zařízením běžný node).
 11   0020   -  Maximální počet potomků koncových zařízení, které bude router podporovat.
 2A  0000   0003  Toto je bitová maska, která řídí, které příchozí zprávy požadavku ZDO jsou předány aplikaci.
 01   00FF   00FF  NCP již nepodporuje konfiguraci počtu vyrovnávací paměti paketů za běhu pomocí tohoto parametru.

 

Zatím netuším, proč se uvedené hodnoty takto mění, tedy jaké mají praktické důsledky pro činnost NCP. Ani proč se na některé adresy zapisují ty stejné hodnoty, které tam už jsou. Možná test zapisovatelnosti?

Úvodní změna obsahu buněk typu EZSP Value je jen jedna. Adresa EzspValueId = 3A obsahuje hodnotu 00. Ve výpisu se mění na hodnotu 01. Google překládá popis takto: Počet neúspěšných pokusů CSMA z důvodu selhání CCA provedených MAC před pokračováním v přenosu s deaktivovaným CCA. Hodnota 00 funkci vypíná. :-) Budiž.

Žádné komentáře

Zanechat komentář

Odpověď na Some User