Firmware and hardwareWorksSource available
Target: Razer Tarantula (USB 1532:0102)

Reverse-engineered Razer Tarantula (1532:0102) Linux support with Claude

Platform
Linux
Outcome
Works

Evidence at a glance

Loading source evidence…

What was done

This project provides Linux support for the Razer Tarantula keyboard by reverse-engineering the official Windows driver. It includes a kernel module for full profile access, a CLI tool for key remapping and macros, and a GTK 4 GUI for configuration.

The Razer Tarantula (USB 1532:0102) Linux support project provides tools to manage keyboard profiles, key remapping, and macros on Linux. The project was reverse-engineered from the official Windows driver package Tarantula_v2.10_070509.zip. The author documented the HID-based protocol, including report IDs and the 472-byte profile block structure. A DKMS kernel module, tarantula_ctl, enables access to profiles 2-5 and the SET_PROFILEID command by allowing the profile number to be passed in wIndex. The provided tools include a CLI for profile management and a GTK 4 GUI for visual configuration. Both tools implement auto-backup and read-back verification for all write operations. A systemd user unit manages a daemon that monitors the profile key and provides notifications for profile switches. The author reports that on-board profile switching works on hardware without active software. Claude Opus 5.5 co-authored the implementation of the GUI, daemon notifications, and macro parsing logic. Limitations include unknown 8-byte commands 7/8 and the inability to access profiles 2-5 without the kernel module. The project is documented at https://raw.githubusercontent.com/rckmcnll/tarantula-linux/HEAD/README.md.

Reproduce it

setup

Clone the repository to ~/tarantula-re, run install-udev.sh for hidraw access, and install the kernel module via kmod/install.sh for full profile support. Enable the systemd user unit tarantula-mapd for profile-switch notifications.

Community

Ask a question, share what worked, or follow the next milestone.

Your library