EB GUIDE Architecture

EB GUIDE consists of an authoring environment on your desktop, and a framework that runs on your target devices.

Here are the key components and steps required to run your EB GUIDE model HMI on a target device:

  1. The HMI model is the UX built through EB GUIDE Studio. The HMI model encompasses the entire user interface and its operation and contains:
    • Views such as screens and speech segments
    • States that the UI can be in.
    • Data needed by the UI.
    • System events.
    • Script to perform calculations, process inputs or outputs, implement complex business logic to control state transitions, etc.
  2. Extend the functionality of EB GUIDE Studio and EB GUIDE Monitor by using the appropriate API. For example, create your own model checker with EB GUIDE Studio API.

  3. The Graphics Target Framework (GTF) is the runtime framework installed on the target device. It runs the HMI model created in EB GUIDE Studio. For example, if you’ve built a user interface for a tablet device, the GTF is installed on the tablet device and runs the interface you’ve built.
  4. Third-party applications are the applications associated with devices, sensors, or other hardware being used by your user interface. For example, a speed sensor or a volume control. The application evaluates the sensor and uses the API (from [4]) to provide the data to the HMI (5) or to communicate with the HMI (6).
  5. Third-party applications must use EB GUIDE SDK to be able to use the API functions that allow communication between the application and the Graphics Target Framework (GTF). For example, if your HMI model says to take the value from a speed sensor and display it as a bar, the application must use the API to write the sensor data so the HMI can use it.

The application and the HMI are decoupled and run independently of one another. The 3rd party applications communicate with the:

  1. Datapool – Which stores data written by the application and used by the HMI.
  2. Event system – Which allows the application and the HMI to communicate asynchronously.

To run your EB GUIDE model on a target device, such as a navigation console or an Android phone, you must first install the GTF on the target device. Then:

  1. Use the EB GUIDE Exporter to generate:
  1. .h header files – which translate the application’s data into the values recognized by the GTF data model so the HMI can recognize the data. This will be used by the 3rd party application developer as input for his/her application
  2. .bin model – which is the binary that gets loaded and run by the target framework installed on the device.
  3. .json configuration files – which are the configuration for the target framework and can also be used by third-party applications that are built using the EB GUIDE SDK.
  4. You put the .bin file and the .json configuration files in the appropriate location on the Target hardware running the Target OS.

If your app uses a third-party application, such as a sensor, servo, motor, etc., the application developer also uses the .bin file, the header files, and the code and libraries from the EB GUIDE SDK (4) to compile the final third-party application. You can also reuse our .json configuration mechanism to configure your application.