Open Source

Wacom CTL-490 macOS Driver

A lightweight, open-source userspace driver that brings full pressure sensitivity to your Intuos S tablet on modern macOS.

Pressure Sensitivity

2048 levels of pressure delivered through native macOS tablet events. Works with Krita, Photoshop, and other drawing apps.

No Kernel Extension

Runs entirely in userspace via HID. No kexts, no SIP workarounds, no reboot required.

🔎

Reverse-Engineered

Protocol decoded from the Linux kernel wacom driver. Fully documented bit-level report parsing.

🛠

Diagnostic Mode

Built-in test mode to inspect raw HID data, coordinates, pressure values, and button states in real time.

Quick Start

# Install the HID library
pip install hidapi

# Clone the driver
git clone https://github.com/lababidi/wacom.git
cd wacom

# Run the driver
python wacom_driver.py

# Or run in diagnostic mode
python wacom_driver.py --test

How It Works

The driver reads raw HID reports from the tablet and translates them into native macOS tablet events.

1

Open HID Device

Connects to the Wacom CTL-490 using its vendor/product ID on the proprietary digitizer usage page 0xFF0D.

2

Decode Pen Reports

Parses 10-byte reports to extract X/Y coordinates, pressure, distance, button states, and eraser mode.

3

Post CGEvents

Maps tablet coordinates to screen space and posts CGEvent tablet pointer events with full pressure data.

Compatibility

RequirementDetails
DeviceWacom CTL-490 (Intuos S 2)
macOS10.15 Catalina and later
ConnectionUSB
Python3.8+
Dependencieshidapi, pyobjc (Quartz)

Permissions

The driver needs Accessibility access to post cursor events.

1

Open System Settings

Navigate to Privacy & Security → Accessibility.

2

Add Your Terminal

Click + and add Terminal.app (or iTerm, or your Python binary).

3

Run the Driver

Restart the driver. The permission prompt may appear automatically on first run.