APX Nodes

An APX node declares the signals it publishes and the signals it subscribes to. APX carries two kinds of information:

  • Port definitions describe the names, data types, and initial values that form a component’s interface.

  • Port values contain the live signal data produced and consumed while the system is running.

The publish/subscribe relationship is implicit in the node definition. There is no separate subscription API or topic configuration. Because the definition travels with each participant, teams can develop and test components independently. If two definitions are compatible, the components can communicate without first updating a shared system configuration.

The node is the unit of integration

An APX application exposes one or more nodes. Each node represents a component that publishes and subscribes to a defined set of signals.

This model deliberately resembles an AUTOSAR Classic software component. An APX node can therefore represent an AUTOSAR SWC outside the ECU without copying the SWC’s internal implementation. APX calls a published signal a provide port and a subscription a require port.

Learn about components and ports

The APX virtual bus

APX uses a client-server topology. Nodes connect to an APX server and send their definitions. The server matches publishers with subscribers by signal name and data type, then creates the corresponding routes.

APX signal bus APX signal bus

After matching is complete, each published value is sent to the nodes that subscribe to it. Although the physical topology is a star, the result behaves like a signal bus from the application’s point of view.

APX definition files describe interfaces

Each node is described by an APX definition file with the .apx file extension. The file is written in APX IDL, a compact interface definition language that includes only the information needed to exchange port data.

APX/1.2
N"VehicleStatus"
P"VehicleSpeed"S:=0
R"AmbientTemperature"c:=0

The example declares a node named VehicleStatus. The P line publishes VehicleSpeed; the R line subscribes to AmbientTemperature. The type codes and value ranges give both peers enough information to agree on the binary representation of each value.

An APX definition file can be generated from an AUTOSAR model, produced by a tool, or written directly. During connection setup, the definition file is transferred as text. Live port values are then exchanged using compact binary data.

Next steps