The Importance of Usability When Designing Hardware: Lessons Learned from Developing ProtoBricks
Joe Broms just designed, prototyped, and crowdfunded a hardware product designed to teach kids about digital logic. Here's what he learned about the importance of usability during the design process.
Engineer and entrepreneur Joe Broms just designed and prototyped a hardware product designed to teach kids about digital logic. Here's what he learned about the importance of usability during the design process.
Currently, I’m in the middle of crowdfunding my invention, ProtoBricks. It’s a unique circuit-building toy in a LEGO form factor. The circuits focus on digital logic building blocks, which is something that I haven't seen much of before. The premise is that there’s no reason kids shouldn’t be able to build and learn about digital logic, as long as we make it accessible … and fun!
The current state of the art is the solderless breadboard and dual inline chips, not exactly the world’s easiest-to-use learning platform. I saw a market opportunity and I took it.
In this article, I'll lay out some of the lessons I've learned when it comes to designing hardware
What's Important to Your Audience?
Let me share with you some of the user interface design decisions we made and why we made them, starting with the problem. How do you design a set of modular logic gates and make it approachable to our audience, girls and boys ages 8 to 12+?
I started by focusing on what was most important to this audience in particular. This largely meant clearing out all the parts of building a digital circuit that have nothing to do with the core goal of connecting together digital logic.
I could see from the very beginning that there were many things we didn't need to cover in this design:
- Explicitly wiring power and ground
- Reversing polarity
- Pull up or pull down resistors
- Bypass capacitors
- Trying to read various random chip marking and chip naming conventions.
- Looking up schematics in datasheets. Checking voltage ratings, power ratings, timings, etc.
- Negative logic (active low), open collectors
- Finding bad or broken chips and wires using a multimeter
- Adding LEDs in the correct polarity with a series resistors
- Building clock signals from 555 timers, resistors and capacitors, algebraic formulas
- Accidentally shorting outputs together
- Power regulation
This is not to say there aren't very good and historical reasons each of these are important—but why should our audience care? In the end, build the product for your audience, not the other way around.
Supersize the Circuit
Next up is the biggest issue of all – size.
Solderless breadboards are built around a standard 100 mil spacing (2.54mm). That’s really small for kids who are just getting started. I know because my second prototype of ProtoBricks was designed for solderless breadboards and, once I built it, I knew in my heart it was too darn small. You could barely read the word AND for the AND gate, let alone see the symbolic representation of it.
But it was so tempting to use that size anyway because the entire industry is built around prototyping on breadboards and 100 mil pitch. Connectors, plastic, headers, shields, use 100 mil pitch connectors—why not me? I could have had a product out in three months!
Herein lies one secret to building a unique (and hopefully much better) product: be willing to do the right thing in your design, even if you scrap the easy thing.
Fun pi-a-la-mode fact: LEGO stud pitch is exactly 3.14 times larger than solderless breadboard pitch. Coincidence?
Wanted: Yet Another PCB Enclosure
Ok, based on the size conversation above, LEGO was it. Now I needed to fit my circuits inside plastic enclosures.
That part is a familiar story. Design some awesome new hardware on a PCB...and now we need to enclose it in plastic. ProtoBricks is no different except we needed to create an entire family of enclosures and fit in with the brick look and feel.
Whatever your application, you likely will need a functional enclosure or bare interface that projects the style or mood you want to express. Here, the battle starts with form versus function discussions heating up fast. I want to point out some of the functional aspects for you to consider when designing how your hardware will be used, and then let you take some time to figure out how to make it stand out from the crowd.
No One Reads the Instructions
As a builder of a product, assume completely and wholeheartedly that no one will ever read the instructions.
Yes, engineers like us actually skim datasheets from time to time but we wouldn’t if we could somehow limp by without doing so. The rest of the world seems to have the luxury of ignoring any and all instructions to your product, even when they paid good money for it. In addition, your product will be dropped, immersed in coffee, plugged in backwards, and abused starting on day one. No one will ever give your product a proper explanation and if it breaks from immediate misuse, it’s your fault, lawyers be damned.
So, basically, it needs to just work out of the box with no instructions by trial and error. As long as you can prevent users from damaging it in the first five minutes, it’s got a fighting chance to live a useful life and not get the dreaded 1-star review. We took this to heart at ProtoBricks with the following design principle: miswiring will never damage the circuit. This is actually a huge improvement from the current state of the art in solderless breadboards, so maybe it has a chance surviving a non-electrical engineer using it. We shall see.
"Cheating" Is Sometimes Your Best Option
When I tell my engineer friends about how ProtoBricks works, I get back the same response – that’s cheating! The reason? Internally, the hub runs a simulation of the circuit.
There is no 7400 series AND gate in the AND brick—just a 1% resistor of 2550 ohms. The microcontroller detects this and emulates of the circuit at 1KHz. The inputs/outputs from the hub are real 3.3V IO from the microcontroller, just nothing internally.
For my audience, that was by far the best design decision I could make. I also get so many positives for this “cheating.” Check out the pros and cons:
- Lower cost ·
- Fewer pins
- More durable
- The hub knows what is an input and output and can visualize that (see below)
- I can add extra bricks to modify the interpretation of the logic.
- It runs at 1 KHz
I know what you're thinking—KHz!!! How can you do anything cool at such a slow rate?!
My defense is this: Kids learning about AND gates for the first time don’t care if the circuit runs at 50 Mhz. To them, showing a binary counter running at 50 Hz seems very fast and exciting! I’ll break it to them later that they can run everything 1 MILLION times faster (and much more with some extra care—thanks, AAC!)
The moral of the story is this—think about the objective first and being a purist second. There are many great products waiting to be made by breaking some unnecessary assumptions. This applies to your user-facing design as well as your internal circuit.
Labeling and Symbols Best Practices
Symbols are important in labeling but, unless they are near universal, they get in the way of quickly understanding the product. Avoid too many iconic symbols as no one will remember yours, anyway.
Some companies just skip labeling altogether to keep the product cool and trendy—but be careful with this. Unless it’s a device your audience uses constantly, there really is no excuse to not label your buttons, knobs, and switches properly. You can make it look cool, you can make it look consistent—but make sure you actually respect your audience. I could probably write a whole article on when to and when not to follow Apple’s product design decisions, but I’ll just leave it at that.
One reason I hear for using symbols versus words is when you have an international audience. Maybe it saves money, but more likely they just want to be done with fewer parts, fewer SKU numbers, and less hassle. Many companies choose convenience and compromise over building the best product. Look for areas where companies compromise and build a product that doesn’t. This applies to small and big companies, too. As a matter of fact, in a large company, all those labeling/design decisions probably went through 10 committees and have a far greater chance of making a mediocre design. This is an opportunity for you to build a better product.
Color plays an important role in projecting a clean and well thought out interface. More important than anything is using colors consistently and purposefully. Make your blue blue and your red red and stick with it.
Another important aspect is respecting a color’s meaning to your audience. I can’t speak for anyone outside the US, but RED means stop and GREEN means go and YELLOW means caution. This might seem small or minor, but at several of my previous jobs relating the medical devices, this was very important in both software and hardware. I’m sure industrial and other safety-regulated markets have similar standards or guidelines. Your mileage might vary.
With ProtoBricks, our hubs each have one LED per IO pin to represent its state (on/off, input/output).
We only had a few visual cues, but color is one of the most important. We chose to use blue to represent inputs and red to represent outputs. This follows with our knobs and buttons where the touchable parts are blue. Our seven segment display is red because it's an output. We had other areas that are considered inputs and outputs what we didn’t choose to color, however. That’s the trick with usability design: you need to be clear, subtle, and tasteful all at the same time – not always easy and often demands tradeoffs.
I hope this article helps you see just a few of the areas you need to think about when putting together an actual product you want to show to the world. There are many other areas to think about that I didn’t cover:
- Getting a person’s attention
- Making common or easy tasks fast
- Shapes, lines, positioning: product geometry
With increasing access to ever-more-capable 3D printing and modeling tools, even electrical engineers can start to see and produce new and innovative interfaces for our awesome boards.
In an increasingly competitive world of crowdfunding, you need every advantage you can get. Good luck! And come check out ProtoBricks, yourself!
To see these fundamentals in action, check out ProtoBricks on IndieGoGo. Stand by for more lessons on crowdfunding your design!