Rotary controller

A rotary controller is a knob and surrounding buttons in the center console of an automobile used to control the head unit. A rotary controller must support these functions:

  • Nudge in four directions (up, down, left, and right)
  • Rotate clockwise and counterclockwise
  • Center button
  • Back button

A rotary controller might support diagonal nudges. Rotation must be limitless with detents (clicks). There can either be a button in the center or the rotary knob itself can act as a button. There are typically additional buttons surrounding the rotary knob, for example, Home, Media, Phone, and navigation (map).

A rotary controller works like this:

  • Nudging is used for coarse navigation in the user interface. The screen is partitioned into several rectangular regions, referred to as FocusAreas. Nudging navigates between these FocusAreas.
  • Rotation is used for fine navigation. Rotation navigates through the focusable views in a FocusArea in the same order as the Tab key.
  • Center button takes action on the focused view, for example to press a button.
  • Back button typically functions as usual in Android, an exception being direct manipulation, described below.

Nudge history ensures that nudging right and then left takes you back where you were. This can be configured by the OEM.

When configured by the OEM, attempting to nudge off the edge of the screen triggers a system-wide action, for example Back.

If the most recent interaction took place through touch rather than the rotary controller, any nudge, rotate, or press of the Center button starts rotary mode by focusing a view, but is typically ignored. Subsequent actions function as described above, moving focus or taking action.

If a SeekBar is focused when the Center button is pressed, direct manipulation (DM) mode starts. In this mode, rotation manipulates the SeekBar rather than navigating. The Back button is used to exit DM mode. Other views that support DM mode can use nudging as well as rotation to manipulate the view. For example, a map view can use rotation to zoom and nudging to pan (scroll) the map.

To learn more, see: