production-deployment
The v1.0 integration flagship — a field-deployable IoT product that exercises factory provisioning → secure boot → OTA → remote attestation in one app. Every other example covers one library surface; this one covers the production lifecycle that ties them all together.
Source: examples/production-deployment/.
Lifecycle stages
- Factory provisioning read-back. On boot,
<alp/hw_info.h>reads the EEPROM manifest programmed at factory test. Production firmware treats this as the authoritative per-unit identity (SKU, serial, HW revision, factory date). - Secure-boot attestation. MCUboot chain is verified by the bootloader; the application reports back the slot it's running from and the signature key ID.
- Application work. Runs whatever the device actually does — for the example, a small connected sensor reporting over MQTT with TLS.
- OTA receive + verify. Updates are pulled via Mender (Yocto) or signed MCUboot images (Zephyr); both paths go through
<alp/security.h>for signature verification before slot swap. - Remote attestation. Periodically signs a freshness nonce with the on-module OPTIGA Trust M and publishes the signature alongside the EEPROM manifest data so a back-end can prove the running firmware matches the provisioned identity.
board.yaml
schema_version: 2
som:
sku: E1M-AEN701
carrier:
name: E1M-EVK
cores:
m55_hp:
os: zephyr
app: ./src
peripherals: [i2c, gpio]
iot: { wifi: true, mqtt: true, tls: true }
chips:
- optiga_trust_m
- eeprom_24c128
diagnostics:
log_level: info
For V2N targets, switch som.sku, carrier.name, and os: yocto; the application surfaces are identical.
Build
west alp-build -b alp_e1m_evk_aen alp-sdk/examples/production-deployment
west flash
What it ties together
| SDK surface | Stage |
|---|---|
<alp/hw_info.h> | Stage 1 — factory manifest read |
MCUboot + <alp/security.h> | Stage 2 — boot attestation |
<alp/iot.h> + <alp/security.h> | Stage 3 — application traffic |
| MCUboot signed slot swap / Mender | Stage 4 — OTA |
<alp/chips/optiga_trust_m.h> | Stage 5 — attestation signing |
See also
Questions about this page? Discuss in Community Forum