Neptune 3 UI - Configure

For maintainability, the UI configuration is split into several YAML files, as described in the following table:

FileDescription
am-config-neptune.yamlDefines the Center Console Display and Cluster-specific configurations. For example, built-in apps and their runtime (native or QML), import paths, UI-specific configurations (such as full-screen mode), and a main QML file (if it's a QML runtime). This YAML file configures Neptune 3 UI to use "neptune" style.
am-config-lucee.yamlSimilar to am-config-neptune.yaml, but this YAML file configures Neptune 3 UI to use "lucee" style.
info.yamlDefines the app-specific configuration, such as a main QML file and its imports. For more information, see Manifest Definition.

The following code is an example of a am-config-neptune.yaml file:

formatVersion: 1
formatType: am-configuration
---
# basic AM functionality - the builtin apps are in 'apps'.
# installations will go into the standard QStandardPath AppLocalDataLocation
# (e.g. ~/.local/share/Luxoft Sweden AB/Neptune UI) /am hierarchy

applications:
  builtinAppsManifestDir: "${CONFIG_PWD}/apps"
  installedAppsManifestDir: "${stdpath:AppLocalDataLocation}/neptune3-ui/manifests"
  installationDir: "${stdpath:AppLocalDataLocation}/neptune3-ui/apps"
  documentDir: "${stdpath:AppLocalDataLocation}/neptune3-ui/docs"

# QML apps will be able to import from modules...

runtimes:
qml:
    importPaths: [ "${CONFIG_PWD}/imports_shared" ]
    environmentVariables:
    QT_PLUGIN_PATH: ${CONFIG_PWD}
    SERVER_CONF_PATH: ${CONFIG_PWD}/server.conf
native:
    importPaths: [ "${CONFIG_PWD}/imports_shared" ]
    environmentVariables:
    QT_PLUGIN_PATH: ${CONFIG_PWD}
    SERVER_CONF_PATH: ${CONFIG_PWD}/server.conf

# ... as well as the SystemUI

ui:
    fullscreen: no
    style: "${CONFIG_PWD}/styles/neptune"
    iconThemeName: "neptune"
    iconThemeSearchPaths: [ "${CONFIG_PWD}/imports_shared/assets/icons" ]
    mainQml: "${CONFIG_PWD}/Main.qml"
    importPaths: [ "${CONFIG_PWD}/imports_shared", "${CONFIG_PWD}/imports_system", "${CONFIG_PWD}/sysui" ]
    windowIcon: "${CONFIG_PWD}/imports_shared/assets/icons/neptune/sysui/ic-menu-home.png"

systemProperties:
    public:
        showCluster: yes
        showHUD: yes
        devMode: yes
        hardwareVariant: 'high'
        #Qt Safe Renderer settings
        qsrEnabled: no
        qsrServerAddress: '127.0.0.1'
        qsrServerPort: '1111'
        showSystemAppsInLauncher: no
    private:
        appStoreServerUrl: 'http://demoappsdeploy.qt.io:8514'
        orientation: 'Portrait'
        adjustSizesForScreen: yes

# development setup: no security
flags:
    noSecurity: yes
    noUiWatchdog: yes

The YAML file contains options for system properties to show screens other than the Center Console, such as the Instrument Cluster or the HUD. These screens are enabled by default. Set showCluster or showHUD to no, to let Neptune 3 UI know that these screens should not be shown.

You can also set the devMode option to yes or no, to enable or disable Development Mode in Neptune 3 UI. When enabled, the Sheets app is included in the Application Launcher and developers can see all of the components that Neptune 3 UI supports, to develop an app.

The enableCursorManagement option can be set to yes or no, to enable or disable the Cursor Support in Neptune 3 UI's Center Console only. When enabled, it's possible to navigate the Center Console with input methods other than touch, such as a keyboard or a gamepad.

The hardwareVariant parameter can be used to specify the type of hardware used. According to the variant, features are enabled or disabled depending on whether the hardware supports them. Currently, this parameter accepts two values: high or low. If set to low, some performance-intensive graphical effects, which lead to bad frame rates on low-end devices like Raspberry Pi, are disabled.

To enable Qt Safe Renderer, you can set qsrEnabled to yes, which allows you to load Safe telltales inside the Cluster app. For more information, see Neptune 3 UI - Qt Safe Renderer Integration.

The showSystemAppsInLauncher parameter lets you display or hide system apps such as the Cluster, HUD, or Climate apps in the Launcher.

The adjustSizesForScreen parameter is used to modify the size of the Center Console Window and the Instrument Cluster Window. This adjustment is usually necessary when the target platform is a desktop and the fullscreen mode is not in use.

If you'd like to use the Qt Automotive Suite Deployment Server, set the appStoreServerUrl parameter to contain your server's base URL together with its port. Currently, the default value is http://demoappsdeploy.qt.io:8514.

All of these options are also configurable from the command line as a parameter to the appman utility. For more information, see Qt Application Manager Configuration.

appman --option 'ui: { fullscreen: no }'

Note: After you have changed the YAML files, you must regenerate the Yocto image for your target. For more details, see Building Your Own Embedded Linux Image.

© 2019 Luxoft Sweden AB. Documentation contributions included herein are the copyrights of their respective owners.
The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation.
Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.