
§ Smart infrastructure
City sensing, privacy-first.
People counting, traffic flow and acoustic events at the sensor — metadata out, not raw video.
§ Why edge AI
The case for running it on the asset.
Smart-city deployments live or die on privacy and bandwidth. Streaming raw video to a central server is a privacy risk, a bandwidth bill and a single point of failure. Running inference at the sensor changes what leaves the device: counts, classes and events instead of frames. E1M-X V2N runs camera inference at the lamppost; E1M-AEN covers microphone and low-power camera nodes.
§ The constraint
GDPR Article 5(1)(c) asks for data minimisation. Sending pre-aggregated counts instead of raw streams is a direct way to design for it — and it scales to thousands of sensors without scaling the backhaul.
Cloud round trip
sensor → uplink → inference → downlink → action
On-module
sensor → on-module inference → action
Sensor
Camera at the lamppost
On-module inference
E1M-X V2N
Action
People-count metadata, no raw pixels
01 · Capture
Camera through the on-module ISP, or a MEMS microphone on an AEN node.
02 · Infer
Person and vehicle detection or sound-event classification, on the module.
03 · Reduce
Counts, classes and timestamps are kept; frames and audio are discarded on the device.
04 · Publish
Metadata over MQTT to the city platform; signed firmware for the fleet.
§ Where it fits
What teams build with it.
01
People and traffic counting
Detection at the lamppost; counts and classes leave the device as metadata, raw frames do not.
02
Acoustic safety
Glass break and alarm detection on a microphone node, classified locally instead of streaming audio.
03
Rail and transit assets
Train-mounted surveys that geotag every rail-condition verdict to a track position for the maintenance GIS.
04
Fleet-managed sensors
Thousands of nodes on signed firmware, reporting over MQTT and updated through one OTA pipeline.
§ Recommended modules
Pick the AI compute that fits.

E1M-AEN
Microphone and low-power camera nodes: acoustic events, person detection on the Ethos-U85.
- CPU
- 0 / 1 / 2× Arm Cortex-A32 @ 800 MHz (per SoC: E3/E4 none, E5/E6 single, E7/E8 dual)
- NPU
- 2× Arm Ethos-U55; E4/E6/E8 add 1× Arm Ethos-U85 (250 GOPS · E3/E5/E7, 454 GOPS · E4/E6/E8)
- Temp
- −40 °C to +75 °C
Full specs →

E1M-X V2N
A camera at the lamppost: detection on DRP-AI3, metadata out.
- CPU
- Quad Cortex-A55 @ 1.8 GHz
- NPU
- DRP-AI3 4 TOPS (dense), 15 TOPS (sparse)
- Temp
- −40 °C to +85 °C
Full specs →

E1M-X V2N-M1
Multi-camera junctions: 29 TOPS across two NPUs.
- CPU
- Quad Cortex-A55 @ 1.8 GHz
- NPU
- DRP-AI3 4 TOPS + DeepX DX-M1 25 TOPS
- Temp
- −40 °C to +85 °C
Full specs →
§ Inside the E1M-X V2N
The module this vertical leads with.

- CPU
- Quad Cortex-A55 @ 1.8 GHz
- MCU (SoC)
- Cortex-M33 @ 200 MHz
- MCU (I/O)
- Cortex-M33 @ 216 MHz — standalone, not in the SoC
- NPU
- DRP-AI3 4 TOPS (dense), 15 TOPS (sparse)
- RAM
- up to 8 GB LPDDR4X
- ROM
- up to 16 GB eMMC
- MIPI CSI-2
- 2× 4-lane; up to 8 cameras via MIPI virtual channels (4 per port) with an aggregator / deserializer on the carrier
- MIPI DSI
- 1× (display out)
- Ethernet
- 2× 1 GbE
- USB
- USB 3.2 + USB 2.0
- PCIe
- Gen3 x2
- CAN-FD
- 2 channels
- Connectivity
- 2.4 / 5 / 6 GHz Wi-Fi (802.11 a/b/g/n/ac/ax, 143 Mbps) + Bluetooth 5.4 (BR/EDR/LE, 3 Mbps)
§ Reference examples from the Alp SDK
Code you can fork, with its evidence on the label.
Every example is real C/C++ in the open-source alp-sdk repo. Clone it, change the SKU in board.yaml, build. Each card says how far it has been proven (on silicon, partly, or not yet on hardware) as recorded in the example's own README and the SDK's verification ledger.
1 Run on silicon · 1 Partly on silicon · 4 Not yet on hardware
ai-object-detection-realtime
Not yet on hardwarePeople + traffic counting
The portable YOLOv8-tiny detection skeleton as the starting point for count, classify, and ship metadata only.
E1M-V2M101 · Skeleton today: the checked-in M33 slice runs TFLM on the CPU. A DX-M1 run needs an A55/Yocto app, a compiled YOLOv8-tiny model and V2N-M1 hardware validation.
View on GitHub ↗
aen-npu-inference-person-mram
Run on siliconPerson detection on the Ethos-U85
The real person_detect MobileNet (int8) running end to end on the E8 Ethos-U85, with the model resident in MRAM.
E1M-AEN801 · Bench-verified on E8 (2026-06-17): all 44 operators on the NPU, inference completes with RESULT PASS.
View on GitHub ↗
acoustic-safety-events
Not yet on hardwareAcoustic safety events
Always-listening node: microphone features → small NPU model classifying glass break, alarm beeps and screams against ambient sound.
E1M-AEN801 · Not a certified security or life-safety sensor. Runs end to end on native_sim; a run with a real mic and a trained model is bench-gated.
View on GitHub ↗
rail-predictive-maintenance
Not yet on hardwareRail-condition survey
Train-mounted vibration features → rail-defect class, geotagged to GNSS position and chainage. One record per 25 m segment for a GIS or MQTT gateway.
E1M-AEN801 · Runs end to end on native_sim with a canned GNSS track; a run on a real bogie with a trained model is bench-gated.
View on GitHub ↗
mqtt-telemetry
Partly on siliconWi-Fi MQTT telemetry
Bring up Wi-Fi, open a TLS MQTT client and publish readings on a cadence — all on the portable <alp/iot.h> surface.
E1M-AEN801 · The Wi-Fi transport (CC3501E bridge) is silicon-validated (2026-06-24); TLS is preview. E1M-AEN801 only — Wi-Fi on V2N is not supported yet.
View on GitHub ↗
iot-fleet-ota
Not yet on hardwareFleet OTA verification
Signed firmware updates for a fleet: MCUboot plus ECDSA-P256 signature verification, declared in board.yaml.
E1M-AEN801 · Verify-only on E1M-AEN801 — the image-apply step is deferred (#1069). native_sim build verified; hardware run gates on a staged Mender server.
View on GitHub ↗
Portable SDK headers for this vertical
These are the SDK's portable surfaces across E1M families; what each family supports underneath them is on the SDK page.
§ Getting started
From example to your board.
- 01First, scaffold a project from the reference example:
tan init --from-example aen/aen-npu-inference-person-mram - 02Then set
som.skuin board.yaml to your module (the example ships targetingE1M-AEN801). - 03Build with the
tanCLI or the Alp IDE extension for VS Code, and run it on an E1M EVK. - 04Before relying on a result, read the status block at the top of the example README — it says what has run on hardware and what has not.
§ Proven today, and what is ahead
On silicon today: person detection on the E8 Ethos-U85 and the Wi-Fi transport behind MQTT telemetry on E1M-AEN801. Still ahead: TLS out of preview, the camera counting skeleton on V2N hardware, and the acoustic and rail examples with trained models.
SDK verification ledger ↗§ Built for this vertical
Why E1M wins here.
- →
Inference at the sensor: the application decides what leaves the device, and it can be metadata only
- →
On-module ISP on E1M-X V2N / V2N-M1 for the camera pipeline
- →
At least 10 years of production availability from volume-production start, subject to silicon supply (LCS-E1M-001)