A good user interface is as important as proper functionality
My last column addressed the conflicting issues of complexity and usability. This month
I'm going to expand on the topic to show how to apply some of the new technology to make
your design friendly, intuitive, and easy to use.
A couple of years ago I purchased my first digital oscilloscope which was going to
solve all my analog design problems by allowing me to store one-shot events and actually
use the controls to analyze the waveform. I unpacked it, finally found the power switch,
and turned it on. It just sat there. All those buttons and not a trace on the screen. I'm
an experienced scope user but this oscilloscope just didn't function like the others I'd
used before. The choices were to read the manual or to figure out the controls. I chose
the latter. During my hunting I found the magic button that I've since started calling
"become a scope." Pressing this button switched the scope from digital mode to
analog mode. I was now home free, I had a trace on the screen, and I could now learn how
to use the new fangled digital features. The moral of this is that people, users,
customers are all accustomed to doing things in particular ways. To tighten a screw, turn
it clockwise. To turn on a light, flip the switch up (at least in the US). Why shouldn't
your embedded design take into account this previously learned, everyday knowledge? Should
the end-user have to fit into your preconceived notions of what's best for them?
Most embedded systems today have some type of display and, together with an input
device (keypad, keyboard, rotary switch, touch panel, etc.), these are how the customer is
going to interact with your design more than 90% of the time. These areas are where most
of your design time should be spent. Is a keyboard needed? Can a keypad work instead? Does
there need to be any input device for the customer to use? Keys and switches are
intimidating to most users (remember the oscilloscope from before?). A good, clean design
minimizes the number of switches or keys on the front panel, but don't minimize too far.
Keep one key representing one function as much as you can. The minute a key has multiple
meanings is when confusion will start. Also, keep the key functions consistent.
A way to minimize keys is to place some of them in what are called soft keys. These are
keys whose legends can be changed. The legend can be embedded in the switch itself, on a
display screen, or in annunciators next to the switch. These soft keys can easily lead an
end-user through the instrument's operations. Be careful though with these soft keys. Too
often I've seen where the soft keys are used to lead the unwary user down a long menu path
into confusion and frustration. I saw one medical monitor from a large company that, if
the user got lost in the menu structure, pressing a special key would always pop the user
back to the top of the menu structure. That key sure seemed like an afterthought to me.
Instead, with the judicious use of a few hard keys (permanently labeled keys) together
with the soft keys, the menu level nesting nightmare can be eliminated.
Alphanumerics can kill any simple user input interface. Most of my customers nowadays
want the ability to enter some type of alphanumeric data, for example, the site name or
the parameter being analyzed. The simplest way of course is to use a full keyboard but
this will probably go against minimizing the keys on the front panel. You can enter
alphanumeric characters like a video game, scrolling each letter in place on a line. I've
seen two digit codes used for each letter (and not even ASCII), optical encoders used to
position a cursor on the desired letter, a system similar to the letter codes on a
telephone requiring one or two digits per character, and even having a port on the design
for a standard keyboard to be plugged into when needed. The method chosen for entries
boils down to how often is alphanumeric information really needed to be entered into your
system. If it only happens on the initial instrument configuration then it doesn't have to
be as easy to use as if it was used daily. Maybe the best way to make the decision is to
talk to the customer directly. Give him what he needs; he'll reward you with sales.
The display technology over the past decade has changed tremendously compared to input
technology. You have choices now of numeric, alphanumeric, graphic, or combinations of any
of these. The display can be LED, LCD, CRT, gas plasma, electroluminescent (EL), or vacuum
fluorescent. The hardware interfaces to these technologies has also simplified; it's now
possible for $30 of hardware to implement a VGA inside your embedded system. Now that all
the choices exist, what's the best for your customer and your design?
Ten years ago most embedded systems used numeric displays utilizing LEDs with some
instruments sporting LCDs. If a CRT was needed, most of the interface electronics to the
monitor was custom designed. Now with the easy availability of interface chips and display
devices, numerics seem to have become passé. But are full-blown graphics displays the
The primary purpose of the display is to convey information. For the information to be
useful it must be easy to see, easy to understand, and easy to find the right information
Numeric displays are unsurpassed in delivering a clear meaning to measurement results
but lots of numbers can also be overwhelming to most users. Alphanumerics can also deliver
the results but if a segmented display is used then most of the characters can look
clunky, and a matrix arrangement has to be at least 5 x 7 to deliver easily readable
Graphic displays are relatively new in the embedded system's field. Cheap PC hardware
has made it possible now for most designs to afford the "luxury" of a graphic
display. The real problem though is what do you do with all this power? With numeric and
alphanumeric displays the contents are pretty well defined. With a graphic display, the
possibilities are limitless. And because of this, the ways to screw up the display also
tremendously increase. Pretty screens are nice but do they convey the information clearly
and logically? Are you more in love with the graphics than with the information content?
The human brain can only process up to seven different ideas at any one time; does your
graphic display tax someone's mental process? How's your grammar and spelling? The secret
to a good graphic screen is to keep it simple and uncluttered. Keep the number of words
down to a minimum; remember how many words a picture's worth?
The toughest part of designing the graphic screens is being the artist. Graphics design
and artistry are intertwined. How else are those fancy little icons going to be developed
for your design? Don't underestimate the effort required to design a graphic screen or
icon; after almost two years of designing a graphic screen application, each icon (about
40 x 70 pixels) still takes me a couple hours to get right. Additionally, graphics eats
memory and processing time. Make sure you have an abundance of both of these before you
decide that you need those fancy graphics.
When deciding on the display type, you must also consider the viewing distance, the
display's color, and the amount of time the display will be on. Table 1 lists the minimum
sizes characters should be in order to be readable at various distances. I designed a
monitor for use in an intensive care unit. The unit I visited was designed so that the
nurses station was at the center of the hub and the beds were radially arranged around the
hub. From the nurses station they had to be able to read the monitor's results. The
distance from the hub to each bed head was 30 feet so I made the readings 0.75" high
and that solved the readability concern. Remember it's not just size that counts but
contrast is also important.
Sometimes the display's color can convey unexpected information. In some fields, red
displays are reserved for error displays. Green displays must be used to convey acceptable
data. Also remember that some people (like myself) are color weak or color blind and might
miss that important message being flashed on your green display versus the yellow display.
CRTs are relatively inexpensive and a known quantity but they're not suitable to all
applications. If your screen has to be left on all the time and the image being displayed
is also quite constant, the CRT screen will have the image burned into it. The screen will
have to be replaced every year. I also have experienced burn-in problems with EL panels
though not with the same severity as CRTs. Again, make sure the display type matches the
application and its environment.
The whole point here is that there has to be a lot of thought as to how the customer,
user, whomever, is going to interact with your design. Just to say that it's good enough
because the guy in the next cubicle said so isn't enough. Look around you at the designs
that work, that are easy to use, and then find the ones that you just can't stand to use,
the ones that tie your stomach in knots. Borrow the good ideas for your designs and stay
away from the ones that are offbeat. The greatest praise that you as a designer can get is
that your design works and it's easy to use.
A critical factor in determining the readability of text is the
size of the characters. This graph shows the relationship between
viewing distance and character size.