← Back to Blogs
HN Story

Resurrecting the Griffin PowerMate: A Modern Driver for macOS

May 12, 2026

Resurrecting the Griffin PowerMate: A Modern Driver for macOS

For many long-time Mac users, the Griffin PowerMate represents a specific era of desktop peripherals. A simple, elegant aluminum knob that you could twist or press, it was originally designed to assist audio and video professionals with precise scrolling and value adjustments. While modern controllers offer far more complexity, the PowerMate's "quaint" simplicity made it a favorite for those who appreciated tactile feedback over a sea of buttons.

However, as macOS evolved, the original drivers faded into obsolescence, leaving many PowerMates to gather dust in "junk USB drawers." A new open-source project by James Lockman has changed that, providing a modern driver that enables the PowerMate to function seamlessly on macOS 13 and later.

How the PowerMate Works Today

The new driver transforms the PowerMate into a versatile system-wide controller. By default, the PowerMate Agent maps the device's physical inputs to common macOS interactions:

  • Rotation: Acts as a vertical scroll. When a menu or submenu is focused, the driver intelligently switches to sending Up/Down arrow keys.
  • Short Press: Functions as a left mouse click (at the current cursor position) or the Return key when navigating menus.
  • Long Press: Functions as a right mouse click.

To ensure these interactions work smoothly across the OS, the driver utilizes the macOS Accessibility API. This allows the agent to detect when a UI element is a menu, preventing the "sticking" sensation that can occur when scrolling through list-based interfaces.

Technical Deep Dive

From a technical perspective, the driver is a lightweight implementation that communicates with the PowerMate (VID 0x077d, PID 0x0410) over USB HID. The device sends 6-byte reports to the host, which the driver parses as follows:

  • Byte 0: Indicates the button state (0 for released, 1 for pressed).
  • Byte 1: A signed integer representing the rotation delta. Positive values indicate clockwise rotation, while negative values indicate counter-clockwise rotation.

Because the device does not report rotation speed directly, the driver calculates the rotation rate (deltas per second) based on the time elapsed between reports. This allows developers to implement speed-dependent mapping—for example, scrolling faster when the knob is spun more rapidly.

The Visual Feedback Loop

One of the most charming features of the PowerMate is the blue LED in its base. The new driver maintains this functionality, allowing for visual feedback based on system state. The LED can be set to a static brightness (0–255), or it can be configured to pulse in various modes (asleep, awake, or custom pulses) using USB vendor control requests.

Integration for Developers

For those looking to build their own custom tools, the driver is available as a Swift package. Developers can integrate PowerMateDriver into their apps and use closures or delegates to handle specific events:

  • onRotate: Provides the delta and the calculated rate.
  • onButtonDown / onButtonUp: Handles the physical press and release.
  • onClick / onLongPress: High-level events derived from the longPressThreshold (default 0.4 seconds).

Community Perspectives

The release of this driver has sparked a wave of nostalgia among the Hacker News community. For many, the PowerMate was more than a tool; it was the "ultimate fidget tool" when not actively editing.

While most users are excited to dig through their attics for their old hardware, some have raised questions about the utility of a simple knob in a world of high-precision mice. One user, @zdw, noted that the device would be even more powerful if mapped to volume control or media playback, suggesting that scrolling and clicking are already well-covered by existing peripherals.

Others have pointed out potential alternatives or complementary tools. For instance, some users mentioned that BetterTouchTool might offer similar support, while others have already developed drivers for the Bluetooth version of the device. There was even a cautionary tale from @mcphage, who recalled that in the past, pressing the PowerMate button while a Mac was asleep could trigger a kernel panic—though it remains to be seen if the modern driver resolves such stability issues.

Whether used for professional production or as a tactile desk accessory, the return of the PowerMate to modern macOS ensures that a piece of hardware design history remains functional and relevant.

References

HN Stories