openrazer

Open source driver and user-space daemon to control Razer lighting and other features on GNU/Linux

GPL-2.0 License

Stars
3.6K

Bot releases are hidden (Show)

openrazer - v3.8.0 Latest Release

Published by z3ntu 6 months ago

Changelog

New devices

  • Add support for Razer Cobra
  • Add support for Razer Basilisk V3 X HyperSpeed
  • Add support for Razer Cobra Pro (Wired)
  • Add support for Razer Blade 15 Advanced (Late 2019)
  • Add support for Razer BlackWidow V4
  • Add support for Razer Ornata V3

Bug fixes, improvements, cleanup, etc

  • Remove timestamp from manpages (reproducible builds fix)
  • Fix effects on Naga Epic Chroma
  • Remove "None" effect for Basilisk V3
  • Fix DPI_MAX for Basilisk V3 Pro
  • Mark functions as static where appropriate in driver
  • Fix warning messages for matrix_effect_blinking in razermouse driver
  • Fix low threshold support for DeathAdder V3 Pro
  • Add 8000 Hz polling rate support for HyperPolling Wireless Dongle

Thanks a lot to all contributors!

openrazer - v3.7.0

Published by z3ntu 12 months ago

Changelog

Breaking changes

For the devices mentioned below, nothing much should change if you're on the latest releases of either polychromatic and RazerGenie. If you're not, or are you using some other tools there might be some breakage where the tools need to be adjusted to be compatible with the new release. Please let us know if you have any questions regarding that.

  • Use "backlight" brightness and effect functions for some devices like Naga Hex V2, Naga Chroma, Mamba Chroma, Mamba TE Wired, Orochi Chroma, Diamondback Chroma
  • Use standard scroll brightness on Orochi Chroma
  • Use standard effect API for DeathAdder Chroma, DeathAdder 3500, Abyssus V2, DeathAdder 2013, Mamba 2012, Naga Epic Chroma
  • Move Naga 2012, Naga 2014, Abyssus, Imperator, Naga Hex, Naga Hex Red, Taipan, DeathAdder 3.5G, Orochi 2011, Abyssus 1800, DeathAdder 1800, Abyssus 2000, Ouroboros, Orochi 2013, Orochi Chroma and DeathAdder 2000 to none/off effect instead of having some weird led_effect and led_state API
  • Some extra keyboard keys will now map to KEY_MACRO* instead of e.g. KEY_F20 which should finally fix the conflict between microphone mute and the keyboard-brightness-down key
  • There's a new 'wheel' effect (somewhat similar to wave effect), used on BlackWidow V4
  • Some APIs (like in this release some setDPI functions) get stricter with releases to stop hiding bad arguments by callers and actually return an error instead of hiding the issue

New devices

  • Add support for Razer Laptop Stand Chroma V2
  • Add support for Razer DeathStalker (Essential)
  • Add support for Razer Blade 15 (2023)
  • Add support for Razer DeathAdder V3
  • Add support for Razer Blade 16 (2023)
  • Add support for Razer Blade 18 (2023)
  • Add support for Razer Ornata V3 (PID 0x02A2)
  • Add support for Razer Viper Mini SE
  • Add support for Razer Cobra Pro
  • Add support for Razer BlackWidow V4
  • Add support for Razer Naga V2 HyperSpeed (Receiver)
  • Add support for Razer Viper V3 HyperSpeed

Bug fixes, improvements, cleanup, etc

  • razermouse: many cleanups / function merges to improve code maintenance
  • daemon: Align classic backlight functions with others - should also fix some persistence bugs
  • Add various effect functions for "backlight" zone
  • razermouse: remove default case from matrix effect functions
  • driver: remove default transaction_id from various functions
  • razerkbd: fix missing transaction_id assignment for Tartarus V2
  • driver: remove default 0xff transaction id
  • razerkbd: add missing argument check for Tartarus V2 static effect
  • razerkbd: major big cleanup incl. mutex for packets etc
  • driver: simplify mutex for usb transfers
  • razeraccessory: remove firmware version caching
  • Remove unused arguments from razer_chroma_standard_matrix_* functions
  • driver: add missing device_remove_file for DeathAdder 2000
  • daemon: Add get_idle_time & get_low_battery_threshold to Viper Ultimate
  • Enable horizontal scroll feature on Razer Naga Chroma
  • daemon: restore keyboard driver mode on resume
  • Add install_requires to setup.py files
  • daemon: remove fallback in maxDPI
  • daemon: stop silently constraining DPI value to max
  • daemon: constrain DPI and poll rate in restore code
  • daemon: stop silently constraining DPI value to max
  • Add effect example based on CPU temperature
  • daemon: notify for new effect when calling setCustom/setKeyRow
  • daemon: deduplicate BatteryManager initialization
openrazer - v3.6.1

Published by z3ntu over 1 year ago

Changelog

Improvements

  • Fix driver build with upcoming kernel version v6.4

Bug fixes

  • daemon: Handle missing values in persistence.conf

Thanks a lot to all contributors!

openrazer - v3.6.0

Published by z3ntu over 1 year ago

Changelog

New device support

  • Razer Laptop Stand Chroma
  • Razer Blade 14 (2022)
  • Razer Core X Chroma
  • Razer Basilisk V3 Pro
  • Razer DeathStalker V2 Pro
  • Razer Blade 15 Base (2022)
  • Razer HyperPolling Wireless Dongle
  • Razer Pro Click Mini (Receiver)
  • Razer DeathStalker V2 Pro TKL (Wired and Wireless)
  • Razer Ornata V3 X
  • Razer DeathAdder V2 Lite

Improvements

  • Plenty of cleanup in the daemon around the screensaver suspend/resume functions
  • Prepare for better error handling in the kernel driver
  • daemon: sanity check set_dpi_xy call for AVAILABLE_DPI devices
  • daemon: clean up custom mouse get methods
  • daemon: add effect_methods also for backlight zone
  • pylib: don't init _matrix_dimensions when there's no matrix
  • daemon: throw exception in get_matrix_dims when not available
  • daemon: initialize self.POLL_RATES for all devices with poll rate
  • pylib: deprecate poll rate constants
  • Makefile: remove uninstall targets
  • Makefile: Remove ubuntu_udev_install rule
  • debian: replace python packaging hacks
  • fake driver: ensure daemon cannot create new files

Bug fixes

  • Fix volume wheel on Razer DeathStalker V2
  • Fix macro LED not turning off on some devices
  • Fix persistence for lighting on/off state
  • daemon: Add missing methods to some devices
  • daemon: fix Basilisk V2 matrix dimensions

Thanks a lot to all contributors!

openrazer - v3.5.1

Published by z3ntu almost 2 years ago

Changelog

This release contains a fix for a moderate security issue.

Please upgrade as soon as possible!

See https://github.com/openrazer/openrazer/security/advisories/GHSA-39hg-jvc9-fg7h

Bug fixes

  • driver: Sanitize data_size value returned from devices
openrazer - v3.5.0

Published by z3ntu almost 2 years ago

Changelog

New device support

  • Razer Naga X
  • Razer Huntsman V2 Tenkeyless
  • Razer DeathAdder V3 Pro
  • Razer Blade 17 Pro (Early 2021)
  • Razer DeathStalker V2
  • Razer Chroma Addressable RGB Controller

Improvements

  • Add DPI stages feature to more mice
  • Add key-related functionality to BlackWidow V3
  • Introduce new capabilities in pylib

Bug fixes

  • pylib: Add 250 Hz poll rate to value check
  • Clean up a bunch of inconsistencies between driver & daemon (if you see any new problems or missing effect on these devices, please let us know!)
    • Add macro & game methods to Huntsman Mini Analog
    • Add low_battery_threshold to some mice
    • Add missing methods to various keyboard
    • Add reactive trigger to Razer Core
    • Add reactive to several Blades
    • Add reactive effects to mouse mats
    • Add missing effects to BlackWidow Essential
    • Add {scroll,logo}_active to DeathAdder 3500
    • Fix typo in Basilisk Ultimate methods
    • Add poll rate methods to Orochi
    • Adjust base class of Naga mice
    • Remove unsupported effects from Blade Early 2021 Base
    • Configure missing matrix on mice
    • Remove wave and starlight function from Blade 2020 Base
    • Remove logo_led_state from Diamondback Chroma
    • Remove unusable ripple for Blade Early 2020/2021 Base

Thanks a lot to all contributors!

openrazer - v3.4.0

Published by z3ntu about 2 years ago

Changelog

New device support

  • Razer DeathAdder V2 X HyperSpeed
  • Razer Viper V2 Pro
  • Razer Huntsman Mini Analog
  • Razer DeathAdder 3.5G Black

Improvements

  • Improve error handling in all drivers
  • Clean up driver code
  • Add additional support for Razer Huntsman V2 functionality

Bug fixes

  • Remove non-existent scroll wheel options from DeathAdder Essential (2021)
  • Fix media buttons for Huntsman V2
  • Fix missing device_remove_file for Pro Click
  • Fix persistence saving for DPI X-only devices, like DeathAdder 3.5G
  • udev: Check 'razer' as well as 'hid-generic'

Thanks a lot to all contributors!

openrazer - v3.3.0

Published by z3ntu over 2 years ago

Changelog

New device support

  • Razer Orochi V2
  • Razer Basilisk V3
  • Razer Huntsman Mini (JP)
  • Razer Blade 17 (2022)
  • Razer Naga Epic Chroma
  • Razer Raptor 27
  • Razer Naga Pro (Wired/Wireless)
  • Razer Huntsman V2
  • Razer Blade 15 Advanced (Early 2022)
  • Razer Pro Click (Wired/Wireless)

Improvements

  • Add config option to set battery % condition
  • Improve battery notifer presentation
  • Fix missing battery notifications for some devices
  • Add support for scroll wheel settings on Basilisk V3

Bug fixes

  • Fix possible oob memcpy in matrix_custom_frame methods
  • Fix key translations on Ornata V2
  • Fix sysfs create/remove inconsistencies
  • Fix crash when persistence.conf is corrupt
  • Fix media keys and volume wheel on BlackWidow V3 Pro

Thanks a lot to all contributors!

openrazer - v3.2.0

Published by z3ntu almost 3 years ago

Changelog

New device support

  • Razer Blade 14 (2021)
  • Razer BlackWidow V3 Mini Hyperspeed
  • Razer Blade Pro 17 (Early 2020)
  • Razer Blade 17 Pro (Mid 2021)
  • Razer BlackWidow V3
  • Razer Thunderbolt 4 Dock Chroma
  • Razer Viper 8KHz
  • Razer Blade 15 Base (Early 2021)
  • Razer BlackWidow V3 Pro (Wired)
  • Razer DeathAdder Essential (2021)

Improvements

  • Replace dbus-user-session dependency with dbus-session-bus for compatibility with Devuan
  • Add REL_HWHEEL support for the Razer Naga 2014
  • Remove mouse reference from battery notifier config
  • Add tilt wheel support for Mamba Elite
  • Add REL_HWHEEL_HI_RES event support
  • Add configrable PREFIX and UDEV_PREFIX to Makefile
  • Add capabilities for idle_time & low_battery_threshold in pylib

Bug fixes

  • Don't use VARSTORE for custom frames in razerkbd driver
  • Add missing brightness controls for Razer Naga Chroma
  • Pass Y=0 for DPI X only devices in daemon
  • Add is_charging to BlackWidow V3 Mini Wireless
  • Fix Razer Diamondback Chroma matrix dimensions
  • Add starlight_random effect to Razer Ornata - blind change, if someone has the device please validate and report back in our issue tracker!

Thanks a lot to all contributors!

openrazer - v3.1.0

Published by z3ntu about 3 years ago

Changelog

New device support

  • Razer Blade Advanced (Early 2021)
  • Razer BlackWidow V3 Tenkeyless
  • Razer BlackWidow Tournament Edition 2014
  • Razer Basilisk Essential
  • Razer Blade 15 Advanced (Mid 2021)
  • Razer Huntsman V2 Analog

Improvements

  • Add more effects for Kraken Kitty Edition
  • Add volume scroll support for Ornata V2
  • Refactor some daemon internals
  • Remove unused statistics/heatmaps feature

Bug fixes

  • pylib: Prevent DPI array error for DeathAdder mice
  • pylib: Fix UnknownMethodException for charging zones
  • Fix Razer DeathStalker Chroma matrix dimensions
  • Add check for battery value of 0.0
  • daemon: Only save DPI persistence above zero

Thanks a lot to all contributors!

openrazer - v3.0.1

Published by z3ntu over 3 years ago

Changelog

Improvements

  • Add config option to disable a new feature in v3.0.0 that restores the lighting effects. See razer.conf(5) option "restore_persistence"

Bug fixes

  • Add Fn key translation for Razer Huntsman Mini
  • Remove unused Gdk dependency, this fixes an obscure Python(?) bug that caused polychromatic to crash
  • Replace dead image URLs
  • Fix resume of DeathAdder V2 Mini
  • Fix effect sync with left/right zones on mice
  • Fix inconsistent brightness checks
openrazer - v3.0.0

Published by z3ntu over 3 years ago

Changelog

Improvements

  • Add persistent storage of effects in daemon, previously frontends had no way of reliably getting the effect that a device had set (a huge thanks to @tildearrow who worked on this for a long time!)
  • Add support for DPI Stages for mice (contributed by @bno1)

New device support

  • Razer Blade Stealth Late 2020
  • Razer DeathAdder V2 Pro
  • Razer Mouse Bungee V3 Chroma
  • Razer Ornata Chroma V2
  • Razer DeathAdder V2 Mini
  • Razer Base Station V2 Chroma
  • Razer Firefly V2
  • Razer Naga Left-Handed Edition
  • Razer Book 13 2020
  • Razer Basilisk V2
  • Razer Cynosa Chroma Pro
  • Razer Basilisk Ultimate
  • Razer Mouse Dock
  • Razer Charging Pad Chroma
  • Razer Huntsman Mini

Bug fixes

  • Add missing HAS_MATRIX attribute for Tartarus V2
  • Fix volume control buttons on Razer Cynosa V2
  • Fix Fn button while the daemon is running for some devices
  • Remove/fix missing daemon methods for some devices

Thanks a lot to all contributors!

openrazer - v2.9.0

Published by z3ntu almost 4 years ago

Changelog

Breaking changes

  • The DBus method getRazerUrls has been deprecated (pylib: razer_urls). It will be kept for the foreseeable future but will no longer serve multiple device pictures for a device. It has been replaced by getDeviceImage (pylib: device_image) which returns a single URL to a picture of the device.

New device support

  • Razer Atheris
  • Razer Basilisk X HyperSpeed
  • Razer Blade 15 Advanced (2020)
  • Razer Blade 15 Base (Early 2020)
  • Razer Blade Stealth (Early 2020)
  • Razer Cynosa Lite
  • Razer Cynosa V2
  • Razer DeathAdder 2000
  • Razer Kraken Kitty Edition
  • Razer Kraken Ultimate
  • Razer Viper Mini

Improvements

  • Add read support for idle_time and low_battery_threshold
  • It's now possible to configure the battery notification frequency
  • Combine razercore & razermousemat driver into the razeraccessory driver
  • The Razer Viper & Viper Ultimate devices have been cleaned up and support more effects now
  • The screensaver monitor now supports Xfce
  • The fake driver support has been improved

Bugfixes

  • Fix incorrect matrix dimensions for Huntsman Tournament Edition
  • The suspend/resume support in the daemon was fixed for multiple mice
  • A misplaced 0.1s sleep was corrected in the device init improving the init speed with multiple devices attached
  • Several devices with misconfigured matrix capabilities have been fixed

Thanks a lot to all contributors!

openrazer - v2.8.0

Published by z3ntu over 4 years ago

Changelog

New device support

  • Razer Abyssus Elite (D.Va Edition)
  • Razer Abyssus Essential
  • Razer Base Station Chroma
  • Razer Basilisk
  • Razer Blackwidow Essential
  • Razer Blade 15 Studio Edition
  • Razer Blade Pro (Late 2019)
  • Razer Blade Pro 2019
  • Razer Chroma HDK (Hardware Development Kit)
  • Razer DeathAdder Essential (White Edition)
  • Razer DeathAdder V2
  • Razer Huntsman Tournament Edition
  • Razer Lancehead
  • Razer Lancehead Wireless (2019)
  • Razer Mamba Elite
  • Razer Mamba Wireless
  • Razer Nommo Chroma
  • Razer Nommo Pro
  • Razer Tartarus V2
  • Razer Viper
  • Razer Viper Ultimate

Improvements

  • Add support for toggling logo light on Razer Blade Mid 2019
  • Add id for the Turkish keyboard layout
  • Starlight now works on Blade Stealth Late 2017
  • Razer Orbweaver Chroma has support for custom frame effects and ripple
  • The python library gained support for battery and keypad leds
  • The screensaver monitor now works with the Cinnamon DE
  • Polling rate is now configurable on the Razer Abyssus 2014
  • The daemon is now un-verbose by default

Bugfixes

  • Sending partial rows with the custom frame methods is now more reliable (but still discouraged)
  • Resume of Razer Ouroboros works now
  • The ripple effect works now on the Razer BlackWidow 2019
  • Some keypads now have matching profile LEDs as the name would suggest

Thanks a lot to all contributors!

openrazer - v2.7.0

Published by z3ntu almost 5 years ago

Changelog

Features

  • Add support for Razer Naga Trinity
  • Add support for Razer DeathAdder 1800
  • Add support for Razer Naga 2012
  • Add support for Razer Huntsman
  • Add support for Razer Firefly Hyperflux
  • Add support for Razer Blade 15 (Mid 2019) Base
  • Add support for Razer Blade Stealth Late 2019
  • Add wave support for Razer Orbweaver Chroma

Bugfixes

  • Fix max DPI for Orochi 2011
  • Fix starlight single and dual effects

Thanks a lot to all contributors!

openrazer - v2.6.0

Published by z3ntu about 5 years ago

Changelog

Features

  • Add support for Razer BlackWidow Lite
  • Add support for Razer Blade Advanced Mercury White Mid 2019 (#835)
  • Add support for Razer DeathAdder Essential (#869)
  • Add support for Razer BlackWidow 2019
  • Add support for Razer BlackWindow Elite
  • Add support for Razer DeathAdder 3.5G
  • Add support for Razer Lancehead Tournament Edition
  • Add underglow support on Razer Huntsman Elite
  • Add starlight effects (random, single, dual) to some Blade laptops
  • Add Russian layout (ru_RU)
  • Add Japanese layout (ja_JP)

Bugfixes

  • General fixes and cleanups

Thanks a lot to all contributors!

openrazer - v2.5.0

Published by z3ntu over 5 years ago

Changelog

Features

  • Add support for Razer Blade 15 (2018) Mercury (#715)
  • Add support for another variant of the Razer Kraken 7.1
  • Add support for Razer DeathAdder 2013 (#195)
  • Add support for Razer DeathAdder 3500 (#743)
  • Add support for Razer Blade 2018 Base Model (#750)
  • Add support for Razer Blade Stealth (2019) (#762)
  • Add support for Razer Blade 2019 Advanced (#773)
  • Add support for Razer Abyssus 2000 (#789)
  • Add support for Razer Huntsman Elite (#758)
  • Add support for Goliathus mouse mats (#796)
  • Keyboard brightness up & down uses smaller steps now
  • Add Spanish and Nordic layout to getKeyboardLayout()
  • Update images for all Razer devices (see below for details)

New device images

All devices have had their images updated. They're PNGs and consistent.

DEVICE_IMAGE is the new variable for apps to use.

RAZER_URLS will be phased out in future. Some apps (like Polychromatic)
still depend on the 'perspective' URL, so this will be removed entirely
at a later date.

Bugfixes

  • Some fixes regarding the Ripple effect (#726)
  • Some other small fixes and cleanups
openrazer - v2.4.0

Published by z3ntu almost 6 years ago

Changelog

Features

  • Add Italian layout to getKeyboardLayout() (#636)
  • Add Razer Blade 2018 support (#641)
  • Respect config option when installing the config file (#680)
  • The man pages are now prettier (and generated with scdoc)

Bugfixes

  • Fix an issue with the Razer Blade Stealth where custom effects wouldn't work
openrazer - v2.3.1

Published by z3ntu over 6 years ago

Changelog

Features

  • Add Cynosa Chroma support (#586)
  • Add new keyboard layouts to the getKeyboardLayout() method

Bugfixes

  • Add the version info to the kernel modules
  • Use the OpenRazer version number for the dkms modules
  • Change shebang of files to /usr/bin/python3 instead of /usr/bin/env python3 to fix issues with custom python installations
  • Handle UnicodeDecodeError in get_serial which can get thrown due to malformed serials
  • Increase size of serial_string variable in razerkbd and use strncpy to fix a buffer overflow
  • Fix chroma key translation on 0x010e
openrazer - v2.3.0

Published by z3ntu over 6 years ago

Changelog

Features

  • Add way of detecting the physical keyboard layout (#452)

Bugfixes

  • Disabled gamemanager class for gamepads
  • Re-add get_device_type_keypad for the Razer Nostromo
  • Fix some bugs in effect sync
  • Work around race condition when hotplugging