Embedded systems are evolving – that is blindingly obvious. But that does not just mean that we are finding more and more uses for smart devices. It also means that embedded applications, that have been around for some years, are becoming more sophisticated. A few examples: central heating controllers, intruder alarms, kitchen appliances, scientific and medical instruments … The list goes on.
The increased sophistication commonly occurs in two areas. The first is connectivity [networking]. The second, and often more challenging, one is the user interface [UI] …
In the past, typical embedded systems had a simple 1- or 2-line LCD display and few buttons. The software was based on a real time operating system. Certainly many Nucleus users have built systems that look just like this. The push to add connectivity has not been too big a problem, as most RTOS products have good networking support [including Nucleus, of course!].
Something odd happens when developers start thinking about a UI upgrade. I am not sure whether they are daunted by the challenges, blinded by the wonderfulness of smart phones or simply inflicted with temporary madness. But I often receive inquiries from designers who are ready throw everything away and are asking whether they should look at using Windows CE or Android to upgrade their device – simply because they want an up to date UI. Although there may be many good reasons to select these other operating systems, just to add a sophisticated UI is not one of them!
If your embedded design is based on an RTOS which satisfactorily addresses the real time requirements of your application, you should think long and hard before you consider changing it. Obviously, you need also to be satisfied with the tools that work with it and the support you receive from the vendor, but I will assume those are a given. Many of the popular RTOSes on the market support excellent UI options.
One possible UI development option is the open source Qt framework. Complete integration of Qt with Nucleus was announced last week. Full details of the product may be found here and here. An upcoming Web seminar looks at the topic in more detail – this will be available as a recording after the event. This video shows a typical application of Nucleus with Qt being used to implement the UI to a consumer appliance.
As high resolution LCD touch screens become increasingly economic for even quite low-end applications, it is good to know that developers do not need to go back to square one to make a state of the art UI.