awesome-reverse-engineering
Curated reverse-engineering tools and learning resources for binaries, apps, firmware, formats, and protocols.
Free, open-source app for Razer and Windows Dynamic Lighting keyboards and mice: per-key RGB lighting, DPI tuning, per-app keymaps and macros, and a typing trainer.
OtherTypeScript · RustGitHub @Brokenwatch24OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Open-source RGB lighting, macros & DPI software for keyboards and mice — a free Razer Synapse alternative for Windows. Per-key effects, per-app keymaps, typing trainer, test bench, automations (Home Assistant, CS2, Bambu Lab) and a community gallery.
Taken from the repository README
Loading the full README.
Read the full README ↗Open-source RGB lighting, macros, per-app keymaps, DPI tuning and a typing trainer for keyboards and mice — a lightweight Razer Synapse alternative for Windows.
Website · Download · Community gallery · Docs
KeyHalo is a fast, privacy-first desktop app (Tauri 2 + Rust + React) that replaces heavy vendor suites for everyday tasks: per-key RGB lighting, mouse DPI and polling rate, per-app keyboard shortcuts and macros, a typing trainer, and a community gallery of profiles, keymaps and device definitions shared on GitHub. It supports Razer keyboards and mice natively and any Windows Dynamic Lighting (LampArray) device, with an OpenRGB bridge for more hardware.
| Device | Type | Connection | USB ID | Status |
|---|---|---|---|---|
| Razer Basilisk V3 | Mouse | Razer HID | 1532:0099 | ⚠️ Experimental |
| Razer BlackWidow V3 | Keyboard | Razer HID | 1532:024E | ⚠️ Experimental |
| Razer BlackWidow V3 Tenkeyless | Keyboard | Razer HID | 1532:0A24 | ⚠️ Experimental |
| Razer DeathAdder V2 | Mouse | Razer HID | 1532:0084 | ⚠️ Experimental |
| Razer DeathAdder V2 Mini | Mouse | Razer HID | 1532:008C | ⚠️ Experimental |
| Razer DeathAdder V2 Pro | Mouse | Razer HID | 1532:007C 1532:007D | ✅ Verified |
| Razer Huntsman Mini | Keyboard | Razer HID | 1532:0257 | ✅ Verified |
| Razer Huntsman Mini Analog | Keyboard | Razer HID | 1532:0282 | ⚠️ Experimental |
| Razer Viper Ultimate | Mouse | Razer HID | 1532:007A 1532:007B | ⚠️ Experimental |
Any keyboard or mouse that supports Windows Dynamic Lighting (LampArray) works generically, with no definition needed. Missing your device? Add it with the in-app Device Wizard or open a device support request. Tested it? Send a "Works on my device" report.
KeyHalo 1.0 is a public beta. What has been verified on real hardware (Razer Huntsman Mini fw 1.12 + DeathAdder V2 Pro fw 2.02 on Windows 11):
Implemented and unit-tested but not yet verified on real hardware/services — reports welcome: the OpenRGB bridge, LampArray colour writes, Bambu Lab MQTT, Home Assistant discovery, CS2/Dota 2 GSI and the LoL client API, DPI-stage writes and the remap engine in long sessions. The other Razer definitions in the table are marked Experimental for the same reason.
Download the latest KeyHalo_x.y.z_x64-setup.exe (NSIS, recommended) or .msi from
Releases and run it.
Windows 11 is recommended (Windows Dynamic Lighting devices require Windows 11).
From 1.1.0 on, KeyHalo updates itself: new versions download in the background and install
with one click (signed updates, Settings → General → Check for updates).
# Requirements: Node.js 22, Rust (rustup), MSVC Build Tools, WebView2
git clone https://github.com/Brokenwatch24/keyhalo.git
cd keyhalo
npm install
npm run app:dev # run the desktop app
npm run app:build # build installers into src-tauri/target/release/bundle
Just want to look around? npm run dev starts a browser demo with simulated devices at
http://localhost:1420.
Profiles, keymap packs, effects, typing packs and device definitions live in
community/ as plain JSON (effects are small sandboxed JS modules).
keyhalo://import?gist=<id> link.See CONTRIBUTING.md for the formats.
KeyHalo exposes a local REST/WebSocket API on 127.0.0.1 (optional token) and a small CLI,
so scripts, Stream Deck buttons and other tools can switch profiles, flash keys or read
device status. See docs/LOCAL_API.md.
Ideas welcome in Discussions.
Is it safe? Yes. KeyHalo never flashes firmware; it only sends the same documented runtime commands vendor software uses. It captures a snapshot of your device before the first change (Restore original), and Safe mode turns off every hardware write. Community effects run sandboxed, and keymap content that launches programs, types text or makes HTTP calls must be approved by you. See SECURITY.md.
Will it trigger anti-cheat? KeyHalo doesn't inject into games or install kernel drivers. Remapping and macros pause automatically while games on the pause list (Rainbow Six Siege, Valorant, Fortnite, Apex, Tarkov… editable) are focused. Still, games with kernel anti-cheat have their own rules: use macros in competitive games at your own risk.
Does it replace Razer Synapse? For supported devices, yes for lighting, DPI, polling rate and battery. You can uninstall Synapse, or keep both installed, but don't let both control the lighting at the same time.
Can it update my device's firmware? No, by design. Use the vendor's tool for firmware updates.
Does it work without an internet connection? Yes. The network is only used for the community gallery, GitHub publishing, update checks and the integrations you enable.
Contributions of all sizes are welcome, from a new device definition to a keymap pack for your favourite app. Start with CONTRIBUTING.md and the Code of Conduct.
MIT © 2026 Brokenwatch24 and KeyHalo contributors.
KeyHalo is not affiliated with or endorsed by Razer, Microsoft or any other hardware vendor. All trademarks belong to their respective owners.