nl::Weave::DeviceLayer::Internal::FactoryProvisioningBase

#include <src/adaptations/device-layer/include/Weave/DeviceLayer/internal/FactoryProvisioning.h>

Unterstützt die Bereitstellung der Werkseinstellungen für Geräte beim Booten.

Zusammenfassung

Die Funktion zur werkseitigen Bereitstellung ermöglicht es, vom Werk oder Entwickler bereitgestellte Bereitstellungsinformationen beim Booten in ein Gerät einzufügen und automatisch im nichtflüchtigen Speicher zu speichern. Bereitstellungsinformationen werden von einem externen Tool in den Gerätespeicher (in der Regel RAM) geschrieben, wo sie vom OpenWeave-Initialisierungscode abgerufen und zu Beginn des Bootvorgangs im nichtflüchtigen Speicher gespeichert werden.

Mit der Funktion für die werkseitige Bereitstellung können die folgenden Werte festgelegt werden:

  • Seriennummer des Geräts
  • Vom Hersteller zugewiesene Geräte-ID
  • Vom Hersteller zugewiesenes Gerätezertifikat
  • Vom Hersteller zugewiesener Geräteschlüssel
  • Pairing-Code
  • Produktüberarbeitung
  • Herstellungsdatum

Diese Vorlagenklasse stellt eine Standard-Basisimplementierung der Gerätebereitstellungsfunktion bereit, die bei Bedarf durch die Ableitung der Kompilierungszeit spezifiziert werden kann.

Öffentliche Funktionen

ProvisionDeviceFromRAM(uint8_t *memRangeStart, uint8_t *memRangeEnd)

Geschützte Funktionen

LocateProvisioningData(uint8_t *memRangeStart, uint8_t *memRangeEnd, uint8_t *& dataStart, size_t & dataLen)
bool
StoreProvisioningData(TLV::TLVReader & reader)
StoreProvisioningValue(uint8_t tagNum, TLV::TLVReader & reader)

Öffentliche Funktionen

ProvisionDeviceFromRAM

WEAVE_ERROR ProvisionDeviceFromRAM(
  uint8_t *memRangeStart,
  uint8_t *memRangeEnd
)

Geschützte Funktionen

LocateProvisioningData

bool LocateProvisioningData(
  uint8_t *memRangeStart,
  uint8_t *memRangeEnd,
  uint8_t *& dataStart,
  size_t & dataLen
)

StoreProvisioningData

WEAVE_ERROR StoreProvisioningData(
  TLV::TLVReader & reader
)

StoreProvisioningValue

WEAVE_ERROR StoreProvisioningValue(
  uint8_t tagNum,
  TLV::TLVReader & reader
)