You should use vibrating alerts and tactile feedback to help assure perception and emphasize the nature of UI mechanisms.
Haptic vibration is available on many devices, and can be activated by most any application. The use of sound to simulate vibration is a viable alternative. Future technology will improve many aspects, and may broaden the base of devices with this feature.
Haptics refers to receiving information by touch. Practically, with current generally-available technology, this refers to the use of vibration to communicate with the user. In much the same way that mobiles have evolved to contain a variety of sensors, they also have a broad range of output devices; most mobiles have some sort of vibration, or an external speaker, which can be used for at least basic Haptic Output.
These vibrations are generally propagated through the entire device, but can be localized, or placed only in specific components, such as the pen in a Pen Input device.
Most vibration is very coarse, and accomplished by a simple off-center weighted motor. Control is only by intensity and switching the motor on and off. Transducer-based vibration is more rare but also available, using tools typically employed for audio output to make more nuanced vibrations. This may simply involve the bone conduction transducer (BCT) included for use of hearing impaired users being re-purposed for general Haptic Output. Use of the BCT for general audio output is not part of this pattern, and is otherwise beyond the scope of this book.
In addition, the device speaker can generate tones that vibrate more than they are emitted as audio, and thereby fall more into the Haptic Output range than that of Tones despite the output device being used.
Additional methods of haptic output are being developed in the laboratory, and may appear in production soon. These include the ability to sense objects that are not physically present, enabling tactile virtual keyboards, for example.
For mobile devices, Haptic Output is currently used in two ways, both of which are dynamic output methods.
Response -- When the user makes an action, the device confirms it has received and understood the action, and makes it seem more real by adding a response. Most typical is a "click" when virtual buttons are used, but any action may use this, including scrolling, gestures (the system indicates when a complete gesture is accepted) and even for the use of physical buttons.
Notification -- Alert lights and tones, used to notify of events when out-of-context, may be emphasized or replaced with haptics. Vibrate is heavily used for this, for so long it has become a well-understood pattern by the general population. Vibration also helps users detect alerts when the sound is off or muffled, and can help to localize the device when in a pocket or purse. For additional details, especially on display in other channels, see Notifications and Tones.
As discussed above, haptics may soon also be used for other types of tactile output. Especially useful will be the ability to detect shape and texture -- to allow feeling virtual, on-screen elements. This will form a third variation, of output perceived by the user to be passive, and representing static, physical spaces and objects. It may even enable new interactions, where users may turn dials around a resisting axis, or being able to pinch and grab UI elements as though they are physical objects.
Use Haptic Output to emphasize that an action happened or to communicate in another channel, when users may not notice audio or visual cues. You should never use haptics alone, and must only use vibration to reinforce actions by the user, reactions on screen or displays on screen, by LED or by audio.
Phenomena like the McGurk effect -- where speech comprehension is related to the visual component -- appear to exist for other types of perception. Vibration should support interaction with the visual portions of the interface, by being related to the physical area interacted with whenever possible, and by having a corresponding visual or physical component.
If an alert is expressed as Haptic Output, you should always have a clear, actionable on-screen element. These should always appear in the expected manner for the type of event, as described in the Notifications pattern.
Haptics resulting from keypresses or other actions the user takes should may be the only response aside from the intended action (e.g. typing the character). You can also use it to support Wait Indicators, or replace them for very short timeframes (under 1/4 second), when indicating that the input has been received and understood by the device.
Consider Haptic Output for Notifications, including ring tones, to be contiguous with the volume control system. Vibrate is either the setting between off and the lowest level, or can be enabled as a switch so it is on (or off) at all volume levels. While being used, vibration will be silenced in the same manner and at the same moment as Tones or Voice Notifications are. The same mute, cancel or silence functions will be presented when only vibration is enabled, and there is no audio output.
When used as response items, you should not use haptic vibration generically but have the signal carry meaning in much the same way audio does. Clicks should feel like clicks, errors should be harsh as though being rejected, and so on.
When emulating real objects, the tactile characteristics of those objects can be measured, and codified for the simulation. Tricks of audio playback sometimes work for vibration; this is in fact why vibration can be used to simulate tactile perception at all. However, touch is different from audio, so different guidelines must be used and specialists in the design of vibration should be employed.
For devices without haptic or vibration hardware, audio can serve this need in a limited manner. Short, sharp tones, or very low frequency tones, output through the device speaker can provide a tactile response greater that their audio response.
Very low bass tones can provide some of the best response, and most speakers can actually generate tones below the threshold of human hearing. However, devices are generally not designed in this manner, so the amplifier hardware may not go this low, the software to access the hardware may not accept output this low, or the tones can generate distractingly improper resonance in the case, ruining the effect. Test on targeted devices before use.
Also use care generating tones at the edge of human hearing with the intent of using them purely as haptics. Younger populations, and certain individuals, have wider ranges of hearing and may be able to detect it audibly. This may be an acceptable side effect, but assure it is not distracting or interferes with the use of audio in other frequencies for those users.
Vibration and sound are closely coupled behaviors and can influence each other in undesirable ways. When both are needed, they generally must be alternating to avoid conflicting with or modifying each other. Vibration devices can cause unintended buzzing or other distorting resonance in audio devices. Alerts, for example, generally vibrate briefly, then sound a brief Tone, and repeat this until the notification alert time expires or the user cancels or mutes the output.
Do not over-use haptic output without a good understanding of all effects of the device hardware. Besides the audio conflicts described above, if traditional motor-driven vibration is used, it may consume the battery excessively quickly.
Do not play multiple vibrations at one time. Even if the device supports this, they cannot generally be perceived accurately by the user, and may end up as noise, even if in multiple localized areas.
Make sure haptic alerts send vibrations repeatedly. Phantom ringer behaviors are known to exist for vibration as well as audio; single vibrations may be written off as an accident of perception by the user, and the alert will be missed.
When employing an audio output device for haptic vibration (either the device speaker or the BCT), audio has priority, especially when used for playback of media or for ongoing communications. Never interrupt the voice channel of a call to play a haptic alert.
Haptic output can easily induce "Alarm fatigue" in the same manner as for alert Tones. If the alert method is too generic, too common or too similar to other tones in the environment (whether similar to natural sounds or electronic tones from other devices) they can be discounted by the user. Use as few different sounds as possible, but avoid using simple "vibrate" for every alert. Note that disregarding alerts is not always a deliberate conscious action; the tone or vibration is eventually considered noise by their brain, such that it will not longer be noticed.
Discuss & Add
Please do not change content above this line, as it's a perfect match with the printed book. Everything else you want to add goes down here.
If you want to add examples (and we occasionally do also) add them here.
Make a new section
Just like this. If, for example, you want to argue about the differences between, say, Tidwell's Vertical Stack, and our general concept of the List, then add a section to discuss. If we're successful, we'll get to make a new edition and will take all these discussions into account.