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.
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.
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¶
Components and Ports explains provide and require ports, port signatures, and type matching in detail.
Return to Introduction for the high-level architecture and principles.
APX IDL Specifications describes the formal syntax for
.apxdefinition files.