Skip to main content

System Architecture

The NE503 software platform has four layers: application containers → platform services → HAL → hardware. This page covers their relationships and three data flows. See the source links for APIs, configuration, sockets, and startup dependencies.

1. Four-Layer Platform Architecture

LayerResponsibilityRelationship
Application ContainersRun business applications and inference pipelinesCall device capabilities through SDKs or platform interfaces; no direct hardware access
Platform Services · Data Planecamera-daemon outputs raw frames and encoded streams; ai-runtime schedules NPU inferenceOrchestrate video and inference flows
Platform Services · Control Planeplatform-api, app-manager, event-bus, device-control, and device-discoveryHandle control, lifecycle, and events; do not move video frames directly
HAL v2Provide interfaces for video, inference, codecs, peripherals, and buffersAbstract SoC and vendor-runtime differences
Hardware & RuntimesExecute capture, encoding, inference, and MCU peripheral controlDriven by the platform HAL implementation

2. End-to-End Data Flow

Platform data flows are divided into video, AI inference, and peripheral control paths.

Video and Media Path

  • camera-daemon manages the imaging pipeline through HAL, outputs DMA-BUF raw frames to ai-runtime, and provides encoded RTSP streams.

AI Inference and Event Path

  • ai-runtime schedules NPU inference and post-processing through HAL. When event publishing is enabled, it publishes results to event-bus; business/model containers subscribe, and the Web Console accesses them through platform-api.

Peripheral Control Path

  • Requests flow through platform-apidevice-controlHAL.IO/MCU to control lights, PTZ, GPIO, and lenses; status returns through the same path.

3. Source References

Related page:

  • Developer Guide — development environment, build, and deployment entry points