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

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

Supporta il provisioning dei dati di fabbrica dei dispositivi al momento dell'avvio.

Riepilogo

La funzionalità di provisioning dei dati di fabbrica consente di inserire in un dispositivo le informazioni di provisioning fornite dallo sviluppatore o dalla fabbrica al momento dell'avvio e quindi archiviate automaticamente nello spazio di archiviazione permanente. Le informazioni di provisioning vengono scritte nella memoria del dispositivo (in genere la RAM) da uno strumento esterno, dove vengono selezionate dal codice di inizializzazione OpenWeave e archiviate nello spazio di archiviazione permanente all'inizio del processo di avvio.

La funzionalità di provisioning dei dati di fabbrica consente di impostare i seguenti valori:

  • Numero di serie del dispositivo
  • ID dispositivo assegnato dal produttore
  • Certificato del dispositivo assegnato dal produttore
  • Chiave dispositivo assegnata dal produttore
  • Codice di accoppiamento
  • Revisione prodotto
  • Data di produzione

Questa classe di modello fornisce un'implementazione di base predefinita della funzionalità di provisioning dei dispositivi, che può essere specializzata in base alle esigenze mediante la derivazione al momento della compilazione.

Funzioni pubbliche

ProvisionDeviceFromRAM(uint8_t *memRangeStart, uint8_t *memRangeEnd)

Funzioni protette

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)

Funzioni pubbliche

ProvisionDeviceFromRAM

WEAVE_ERROR ProvisionDeviceFromRAM(
  uint8_t *memRangeStart,
  uint8_t *memRangeEnd
)

Funzioni protette

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
)