Skip to content

AUTOSAR nm

Theia edited this page Jun 19, 2026 · 1 revision

nm — Network Management

← back to AUTOSAR

What ARA defines

ara::nm coordinates the network state of an ECU — keeping a communication bus awake while any participant needs it and allowing a coordinated transition to low-power/sleep when none do. It's about network readiness and lifecycle, not moving payload.

Our adaptation

Theia's nm is a network-readiness state machine over real Linux networking, extended to cover the modern compute-box reality of WiFi + VPN, not just a classic bus.

  • A readiness ladder (GenStateM): NETWORK_OFF → LINK_AVAILABLE → WIFI_ASSOCIATED → IP_ACQUIRED → VPN_ESTABLISHED → NETWORK_OPERATIONAL (+ DEGRADED).
  • Buildroot-portable by design: the WiFi connect path uses wpa_cli (add_network/select/save_config + udhcpc/dhclient), not nmcli (most rigs have no NetworkManager). WiFi is observed via iw (read-only scan + association).
  • VPN readiness via vpn_observe() — reads tailscale status --json (Running + Self IP), falling back to wg show; tailnet-agnostic.
  • The FC only observes and drives readiness; key custody (Crypto), policy (FW), health (PHM) and timing (SM) stay in their own clusters — an AUTOSAR-style split.

We keep ARA's "own the network lifecycle" intent and stretch it to WiFi/VPN, which the spec's bus-centric model doesn't cover but our rigs need.

Clone this wiki locally