When I bought a couple of Internet of Things devices recently, I had a simple goal: to save some money. The two Koogeek WiFi Smart Plugs I purchased would help me lower my electricity bill by automatically managing my vampire devices.
The typical user experience from a non-IoT device like a power strip is that you plug it into the wall, plug your devices into it and then never think of it again. But my smart plugs ran into a problem that so many connected devices face: while IoT is exciting and loaded with promise, a lot of work still needs to be done to ensure the setup process is efficient and intuitive.
One particular issue stands out: firmware updates. While setting up these devices, I ran into the common scenario of needing to update it before I could use the device.
A firmware update fixes the actual hardware so the device can operate as intended. If not updated in a timely fashion, chances are the device may cease to function. In addition, they often fix security issues, an emergent and pressing industry problem.
IoT devices sit inert on the warehouse or store shelf, preloaded with the firmware version that was the most recent when shipped from the factory. Typically, the manufacturer has released a newer version by the time the device is purchased and activated.
UX designers (ideally) obsess over the onboarding process—walking the user through features that they have lovingly developed. Firmware version drift is usually an afterthought, dumping the user into a simple default system prompt that pops up after the demo has concluded. This turns the delight of using the new device immediately into a chore.
Most people probably aren’t familiar with the concept of firmware or care why it is important to update—they just want to use the device. The alert message is usually written to help engineers by listing version numbers and patch notes. Non-technical people will read this as scary nonsense jargon. Thanks to 20 years of bad software, people tend to immediately click “no” on prompts they don’t understand. And then sometimes, Bad Things happen.
Tapping “yes” on a firmware update leads to an even worse experience: The device shuts off and becomes unresponsive for an indeterminate amount of time. The app is left in update purgatory, or worse, freezes or crashes as it attempts to communicate. Confusion over the update process is now fear that an expensive piece of hardware might have just accidentally been destroyed.
Avoiding this fear is simply a matter of heading a potential negative experience off at the pass. Embrace the fact that firmware needs to be updated and work it into the overall experience of owning the device.
For most consumer IoT devices, the owner ideally does not have to think about this. An intelligent, automated update cycle that can detect and predict when the person isn’t using the device (at work, overnight, weekends, etc.) could go a long way.
Unfortunately, this kind of sophistication requires a large investment of dedicated design and development resources to implement properly (to say nothing of security concerns). The simple fact is a company producing a service artifact will have other, more pressing priorities in the rush to get to market.
Until things have calmed down enough to where the company can build this automated system, the next choice is to add this initial update as a natural extension of the process. Give the person onboarding clear, easy to understand information they need to know in order to make an informed decision.
When the onboarding reaches the update firmware step, a considered application of copywriting should inform users about these important points:
- This update is important to keep the device working properly.
- What will be changed and why that’s important.
- This update will turn the device off for an approximate amount of time.
- This depowering is expected and won’t occur during normal operation.
- If you skip this update step, you can perform it later. Ideally, also communicate where in the UI this option is located and provide the option to schedule a reminder.
- Links to supplementary support information, including how to undo the update if it breaks the device.
It’s also worth considering that there aren’t a lot of reasons to open the controlling app if the user has created “set and forget” automation rules. A simple push notification on a regular update schedule can bring the user back into the controlling app.
Sweeten the deal by providing tangible benefits in exchange for a little bit of patience—provide incentives for saying yes to updating the firmware. Examples could include things like badges, if your device has a gamified component, or more practically, discounts on recurring subscription fees or coupons for future products—a great way to help retain customer loyalty all while keeping the devices and the entire IoT ecosystem safe, healthy, and a pleasure to use.
A final consideration is the initial period of time when the device has powered down to update itself. Instead of a fretful waiting period, this time could be used to reinforce positive feelings about the new purchase.
It could be a perfect opportunity to walk the user through the rest of the onboarding process—any rules or settings that require communication with the device could be set up, automatically downloaded when the device has come back online. Other possible ways of keeping the user’s attention from wandering during this downtime could include interactive simulations, trivia, ideas for possible use, shortcuts, or my favorite, a small minigame.
If you would like this kind of thinking applied to your IoT project, Cantina is here to help. We can help you unlock the value of your IoT technology by ensuring it is complemented with an amazing user experience.