Offer Case Studies Expertises About us Contact Blog
FR EN

Best IoT Solutions for Your Embedded GUIs

blog image Best IoT Solutions for Your Embedded GUIs

Which GUI technology to use for your embedded IoT system? Advantages and disadvantages of different IoT solutions on the market.

10/09/2021

Nathanaël Landais

There are now many library options available for developing embedded IoT GUIs. In this article, I'll review some of the technologies that seem most relevant today. We'll look at their advantages and disadvantages.

I'm Nathanaël Landais, an architect in IoT embedded software development. I've designed and developed embedded systems relying on open source components now distributed in hundreds of thousands of units around the world. Their common thread: modern and fluid user interfaces.


1. Qt – From Connected Toaster to Car Dashboard

It needs no introduction—Qt dominates the embedded user interface market and didn't get there by chance. Available in two versions: the full version of Qt for Linux systems and Qt MCU which also works on bare metal, this framework can run fluid user interfaces on just about any imaginable system. While it can take advantage of a GPU module, it also works without one.

So what are the advantages and disadvantages of Qt for your IoT system?

Advantages

Disadvantages


2. TouchGFX – STMicroelectronics' Proprietary GUI Solution

If you're considering using a board equipped with an STM32 microcontroller, the manufacturer's solution might suit you very well. TouchGFX is a rather easy-to-use tool for designing user interfaces with no-code.

Advantages

Disadvantages


3. uGFX – A Simple and Affordable GUI Solution

uGFX is designed with a clear objective: to be as lightweight and fast as possible. Very modular, it can run on less powerful systems as well as more equipped ones, taking advantage, like Qt, of hardware acceleration. No special version for bare metal development—it's designed to work equally well with or without an OS.

Advantages

Disadvantages


4. Sciter – The Web on a Diet

Sciter is a web engine designed from scratch for embedded systems. Where alternatives start from major consumer web engines to create lightened versions for embedded systems, Sciter is designed from the ground up for lightness, making it a good candidate for those wanting a fluid web interface on IoT projects with limited resources.

Advantages

Disadvantages


5. WPE – The Web Without Compromise

I mentioned for Sciter the general-purpose web engines lightened for use with connected objects—WPE is one of them. WPE stands for Web Platform for Embedded; it's a web engine based on WebKit. It's been lightened for this purpose but retains all important features.

Advantages

Disadvantages


And in the Future?

I've mentioned several times the possibility of sharing user interface code between the embedded system and a remote screen. This is a capability that can, in my opinion, be very useful for many projects. Allowing remote control of an IoT system, benefiting from a more comfortable screen to control a connected object, or enabling touchless control of an ordering terminal or coffee machine (useful and necessary during a health crisis). I therefore think the future of embedded GUI technologies is cross-platform.

For my part, I'm watching Flutter, this Google technology that already allows generating GUIs with the same code for different mobile systems, but also for web engines. There are already some experiments, notably from Sony, aiming to compile Flutter natively for embedded systems. Nothing official for now unfortunately, but nothing stops us from dreaming!

If you want to develop a product equipped with a modern and fluid user interface, you can contact me to discuss the solution adapted to your project. It's non-binding, so contact me directly!

Previous article

Compiling the Linux Kernel for Embedded Systems

Next article

Integrate Open Source into Your Commercial IoT Product