Gateway Architecture and Identity
Identities
| Concept | Authority | Meaning |
|---|---|---|
gatewaySerial | AirNgin DeviceSerial | Physical Gateway DeviceSerial |
Child deviceSerial | AirNgin DeviceSerial | Independent Child identity |
MQTT ClientId | Server-issued | Complete opaque credential; firmware does not construct it |
| Native address | Driver-specific | e.g. slaveId, BLE address, CAN node; not AirNgin identity |
HTML sessionId | Server-issued temporary | Interactive HTML session only |
The canonical AirNgin DeviceSerial is exactly 14 characters: four-character ProducerCode + ten-digit UniqueNumber.
AIRN + 1234567890 = AIRN1234567890
Runtime boundaries
Cloud command
→ CommandRouter
→ GatewayConfigResolver
→ GatewayDriver
→ NativeBusExecutor
→ Child
Child observation
→ NativeBusExecutor
→ GatewayDriver
→ optional GatewayAnalyzer
→ LogicalObservationValidation
→ State / Telemetry / Event
Driver
Owns AirNgin logical-command to native-protocol translation and native response parsing.
Analyzer
Uplink-only. When required, it normalizes native/manufacturer observations into logical State, Telemetry, or Event records.
NativeBusExecutor
Owns bus-safe scheduled I/O. MQTT callbacks, HTML callbacks, and Analyzer code must not write directly to the native bus.
Association
Association is Device-level, not Operation-level. One Gateway may have many active Children; one Child has at most one active Gateway.
See Backend Association for details.