Top Level Design

The QNX CAR platform architecture consists of three layers: Platform, Middleware, and Human-Machine Interface (HMI).

The Platform layer includes the QNX Neutrino RTOS, the Board Support Package (BSP) appropriate for the hardware platform, and the Software Update component for managing system upgrades.

The Middleware layer provides infotainment-related services to applications. Examples include multimedia, Bluetooth, navigation, and radio. The Automatic Speech Recognition (ASR) component provides services not only to the layer above but to the other middleware components as well. For example, ASR can be used to turn on the radio, initiate a Bluetooth phone call, or play a video track managed by the multimedia component. The Mobile Device Gateway provides interfaces to external components through Bluetooth, DLNA, Wi-Fi, and other mechanisms.

The HMI layer consists of HTML5-related technologies, but the architecture allows other UI technologies, including native (OpenGL ES), QT, and others. The HTML5 HMI layer provides a browser engine based on the Torch browser. Plugins based on the Netscape Plugin Application Programming Interface (NPAPI) provide HTML5 apps with access to services from the Middleware layer. For example, an SQL plugin provides access to navigation and media databases. A plugin for the Persistent Publish/Subscribe (PPS) service supports persistent object storage and change notification. Finally, WebWorks provides a mechanism for packaging HTML5 apps and executing them in a safe, sandboxed environment. WebWorks extensions implemented in JavaScript provide HTML5 apps with access to the NPAPI plugins and middleware services such as navigation and multimedia.