Memfault State of IoT Report

More than just a pretty face - a good UI is essential

Colin WallsNovember 30, 20231 comment

With almost any kind of software, the user interface (UI) is very important. With embedded devices this may be a critical issue for a wide selection of reasons, some of which may be unexpected.

We are all used to devices that have slick UIs. In the past buttons and lights seemed enough. Now we expect high-resolution touch screens at least, with virtual or augmented reality increasingly becoming an option. Designing a really good UI is no mean undertaking. The developer - or more likely the development team - needs a wide variety of skills, from the basic coding through to human psychology. Even nowadays, the UI can be something of an afterthought, but there are many reasons why its development should not be sidelined. A good or bad UI can make or break a product almost regardless of the rest of the functionality of the device.

The Apple iPhone is ubiquitous. Many people would not consider any other device. (Hand up: that includes me!) When the iPhone was launched it was immediately very successful, to the extent that many people now think in terms of it being the first smartphone; Apple are often attributed with inventing the smartphone. There were very capable devices around for a few years before the iPhone (Blackberry, Nokia Communicator, Treo, Android …). The first iPhone lacked a lot of functionality that these other devices had offered for some time - it did not even have a copy/paste facility! So, why was it so successful so quickly? The answer was the slick UI.

This article is available in PDF format for easy printing

I resisted the iPhone for a few years, but then the iPad came along. As soon as I saw the initial promotion, I wanted an iPad and I bought one at the first opportunity. That was 13 years ago. I am now using my fourth iPad and there has not been a single day since my first purchase that I have not used an iPad. I had no idea what I would use the device for when I first got it, but something about it seduced me and sparked the decision. That was the UI - it was fast (by the standards of the time) and fairly intuitive. Of course, this was also the beginning of my move to becoming an iPhone user too.

It would be easy to dismiss “flashy” UIs as just a gimmick. And, indeed, sometimes that is exactly what they are. But, with careful design, a good UI makes a device easier and more pleasurable to use and helps the user apply the device more efficiently. There are situations when this attraction is far from just being a marketing tool. We have all experienced the frustration of trying to figure out how to operate quite simple devices where the UI has not been thought through. I had a clock stuck on winter time way after daylight savings started, because the adjustment was beyond me. I have never been able to use a Bluetooth headset without the instructions to hand – lots of “hold the button down for 4 seconds”!

An area where electronics of increasing sophistication is becoming ubiquitous is medical. I am particularly interested in this application area, as I have spent a fair amount of time in hospitals and marvel at all the technology. I picture an over-worked, tired doctor, at the end of a long shift, trying to set up complex instrument to best care for his patient. He has probably used a dozen different devices in the course of the day and not read the manuals for any of them. I do not blame him – life is too short to read badly written manuals for devices that should be smart enough to help you operate them. This is where a really slick UI could do some good.

There is one further aspect of UI implementation that should be considered. It is common to create an embedded device, where the first version has a specific set of functionality, which, over time, is augmented in future versions. This is fairly normal engineering practice and gives the marketing guys a way to promote the sale of upgrades. However, the development of the UI in this context is an opportunity to really affect future sales in a positive or negative way. Imagine that you have developed a device with a nice slick UI and it has sold quite well. When version 2.0 is being developed, it would be natural to enhance the UI, hopefully incorporating user feedback. This can go two ways. You can replace some of the functionality with new (better) ways to do things; this upsets existing users, as their experience is no use and they have to relearn how to use the device. Alternatively, you can add a selection of ways to do things in the UI, leaving the old ways there too; this upsets new users, as the UI has become complex and cluttered. You cannot win. The only way to avoid this bind is to design the UI very carefully on Day 1, so that it really works efficiently and intuitively and has the capacity to incorporate new functionality in a consistent way.

I never said it would be easy …

Memfault State of IoT Report
[ - ]
Comment by nmccDecember 9, 2023

Revising the GUI - we're blessed with so much Flash these days that providing the old GUI, the old GUI with access to the extras in the old style and the new GUI is work for us but with careful planning on day 1 can be implemented so the users can incrementally upgrade their use as they need.

That and good docs (printable, online & video) to show what's changed with the benefits outlined of the features - as it's all about benefits, not about features.

To post reply to a comment, click on the 'reply' button attached to each comment. To post a new comment (not a reply to a comment) check out the 'Write a Comment' tab at the top of the comments.

Please login (on the right) if you already have an account on this platform.

Otherwise, please use this form to register (free) an join one of the largest online community for Electrical/Embedded/DSP/FPGA/ML engineers: