GUI development effort: Visualization with an embedded controller

Do you need an attractive visualization? We assist you with our software development efforts on customized touch operation for your product.

Regardless of whether it is classic buttons or slide controllers, realistic renderings of actual switches or analog instruments – we offer you almost every visual illustration.  For example, even the swipe gestures known from smartphone usage can be implemented.

 

GUI

To create your user interface, we make use of an embedded system adapted to your needs. This system is based on a 32-bit controller such as the STM32F4xx. This controller needs only a little extra hardware such as external storage for your graphics and can be implemented economically and quickly with an embedded operating system such as FreeRTOS.

 

The software framework used for the GUI development effort is independent of the CPU and the selected operating system. In addition, it consumes particularly few resources and provides fast graphic performance without putting excessive demands on the hardware capabilities.

 

Hardware

A typical hardware architecture in this case consists of the 32-bit CPU with memory, a display having a typical size of 3.5” to 7” and customized interfaces. With this setup, you can choose whether to communicate with your system or your peripherals using SPI, I2C, Ethernet, etc.

 

Customized Assembly

GUI workflow

The graphical user interface is created using a PC-based development environment. This environment generates the GUI code from the GUI project (GUI logic) and the necessary resources (graphics and fonts).

 

This generated software controls the display and processes the user inputs in conjunction with the associated hardware-specific GUI runtime. These inputs are then relayed to the actual business logic by way of a product-specific API or interface. This logic generates the necessary control commands or provides the necessary data.

 

Framework

Once the development environment or toolchain has been set up, changes to the user interface can be made in a few minutes and transferred to the terminal device.

 

In addition, the graphical user interface can be exported as a Windows application. In this way, the implementation can be tested independent of the target system or it can be used for discussions with the customer or designer.

 

GUI implementation

The user interface is actually implemented using object-oriented methods in conjunction with resources. The resources involved are data such as color and font definitions or the graphics used for generating user elements (for example, buttons or sliders).

 

This is illustrated in the following application using an implementation of a customized button. The button has a specified background color when in an active or disabled state and an appropriate label using a defined font.

 

The necessary colors and font are stored as resources and used for creating a button class. The buttons can now be instantiated as often as necessary in the application.

 

GUI implementation

Advantages resulting from this:

 

  • A user element (for example, a button) must only be generated once and can be used as often as necessary.
  • Standard design and use or application
  • Changes in the representation or the function need only be made once and are automatically inherited by all instances.
  • Changes to the color or font need only be implemented by way of changes to the resources allowing the design to be changed with minimum effort.

Implementation examples

Demo
Demo
Demo

Picture source: https://www.embedded-wizard.de/demo | © Tara Systems GmbH

 

GUI development at TQ – your advantages

  • Everything from a single source – you tell us what functionality you want and we take care of the rest.
    Either completely or with the granularity you want.
    • Electronics development effort
    • GUI development effort
    • FW creation to support the GUI framework and the required interface
  • Using the embedded system as an intelligent user interface to supplement your own product or as the basis for a new development
  • You can also make in-house changes to the menu navigation yourself by providing an appropriate framework.
  • An equitable license model – with one-time costs and guaranteed annual quantities
  • License clearing – We check all licenses and tell you about the appropriate rights and obligations.
  • Complete control over the software and updates – software updates are not implemented based on the system (Apple OS, Windows) but rather only when they are needed. In this way, you have a defined, frozen software version and do not need to recertify your product after every OS update.
  • Custom-made software development – we do not see ourselves as service providers but rather as partners. That means we would like to support you directly in your team and develop your product together with you. As a result, you have complete control over the implementation at all times and can maintain and expand your product yourself after the development effort has finished.
  • Support even after development – if desired, we will assist you even during the product maintenance phase.
38