2018-08-31 05:57:34 +02:00
# Changelog
All notable changes to this project are documented in this file.
2019-09-19 00:48:12 +02:00
The format is based on [Keep a Changelog ](http://keepachangelog.com/en/1.0.0/ ) and this project adheres to [Semantic Versioning ](http://semver.org/spec/v2.0.0.html ) and [PEP 404 ](https://www.python.org/dev/peps/pep-0440/#semantic-versioning ).
2019-11-19 07:55:35 +01:00
2020-02-18 06:28:32 +01:00
## [1.3.3] – 2020-02-18
_Summary for the 1.3.3 release: fix possibly stale data with HIDs and other minor issues._
Changelog since 1.3.2:
### Fixed
- [HUE 2] Add missing identifiers for HUE+ accessories
- Forward hid option from UsbHidDriver.find_supported_devices
- Prevent reporting stale data during long lived connections to HIDs (#87)
2019-12-11 13:27:26 +01:00
## [1.3.2] – 2019-12-11
_Summary for the 1.3.2 release: fix fan status reporting from Smart Device V2._
2019-12-11 12:13:29 +01:00
Changelog since 1.3.1:
### Fixed
- [Smart Device V2] Parse fan info from correct status message
2020-02-18 06:28:32 +01:00
### Checksums
```
acf44a491567703c109c03f446c3c0761e5f9b97098613f8ecb4366a1d2afd50 liquidctl-1.3.2-bin-windows-x86_64.zip
bb742947c15f4a3987685641c0dd73184c4a40add5ad818ced68e5ace3631b6b liquidctl-1.3.2.tar.gz
```
2019-12-11 12:13:29 +01:00
2019-11-23 08:32:29 +01:00
## [1.3.1] – 2019-11-23
2019-11-23 08:56:39 +01:00
_Summary for the 1.3.1 release: fix parsing of `--verbose` and documentation improvements._
2019-11-20 19:08:45 +01:00
Changelog since 1.3.0:
2019-11-23 08:03:33 +01:00
### Changed
- List included dependencies and versions in Windows' bundle
- Improve the documentation
2019-11-20 19:08:45 +01:00
### Fixed
- Fix parsing of `--verbose` in commands other than `list`
2019-11-23 08:56:39 +01:00
### Checksums
```
de272dad305dc6651265640a280bedb21bc680a62117e625004c6aad2104da63 liquidctl-1.3.1-bin-windows-x86_64.zip
6092a6fae477908c80adc825b290e39f0b26e604593884da23d40e892e553309 liquidctl-1.3.1.tar.gz
```
2019-11-20 19:08:45 +01:00
2019-11-17 07:29:18 +01:00
## [1.3.0] – 2019-11-17
2019-11-19 07:55:35 +01:00
_Summary for the 1.3.0 release: man page, Corsair RXi/HXi and NZXT E power supplies, Smart Device V2 and HUE 2 family, improved device discovery and selection._
2019-11-19 07:52:06 +01:00
Changelog since 1.3.0rc1:
2019-11-10 11:16:19 +01:00
### Added
- Enable **experimental support for the NZXT HUE 2** with the Smart Device V2 driver
2019-11-10 12:43:55 +01:00
- Enable **experimental support for the NZXT HUE 2 Ambient** with the Smart Device V2 driver
2019-11-16 23:27:43 +01:00
- Add `-m, --match <substring>` to allow filtering devices by description
- Add `-n` short alias for `--pick`
2019-11-10 11:16:19 +01:00
### Changed
- [API] Allow initialize methods to optionally return status tuples
2019-11-14 23:52:21 +01:00
- [Legacy 690LC] Conform to XDG basedir spec and prefer XDG_RUNTIME_DIR
- [Legacy 690LC] Improve directory names for internal data
2019-11-17 17:52:37 +01:00
- [Windows] Ship patched PyUSB and libusb 1.0.22
2019-11-13 09:53:57 +01:00
- Improve the documentation
2019-11-17 07:23:40 +01:00
### Fixed
2019-11-13 12:41:16 +01:00
- [NZXT E] Release the device once done
2019-11-10 11:16:19 +01:00
- [NZXT E] Fix assertion of valid responses in retry loops
2019-11-10 13:58:54 +01:00
- [HUE 2] Fix LED blinking during `status`
- [HUE 2] Add missing identifier for 250 mm HUE 2 LED strips
Restore experimental tag for the NZXT Kraken X31/X41/X61 family
Commit bf27bfb81b4d ("Mark old drivers that are stable as such") stated:
> NZXT Kraken X31, X41, X61: know to work *with limitations,* but no
> recent *bug* reports. The limitations are minor and allow for a very
> resilient driver, that should even work with other devices.
However since then an issue was opened that qualifies to me as
significant: #66 ("Kraken X61 pump makes grinding noises with
liquidctl/libusbK").
While I'm not sure that's really a bug, and the user doesn't seem
interested in providing any additional details, I think it's wise to
keep these devices marked as experimental for at least one more release.
Still regarding this issue:
- the user failed to notice that the recommended driver was WinUSB;
while that could absolutely be my fault, and I've since patched the
README to make it more clear, I'm not conviced the rest of the issue
isn't just about (following) the documentation
- we don't really know the legacy Krakens behave with the libusbK
driver, and it seems that the issue persisted reboots but went away
when the Asetek driver was restored, suggesting a possible connection
Related: #67 ("Keep track of --legacy-690lc")
2019-11-13 10:04:19 +01:00
- Restore experimental tag for the NZXT Kraken X31/X41/X61 family
2019-11-17 07:23:40 +01:00
### Removed
- Remove dependency on appdirs
2019-11-17 22:09:40 +01:00
### Checksums
```
ff935fd3d57dead4d5218e02f834a825893bc6716f96fc9566a8e3989a7c19fe liquidctl-1.3.0-bin-windows-x86_64.zip
ce0483b0a7f9cf2618cb30bdf3ff4195e20d9df6c615f69afe127f54956e42ce liquidctl-1.3.0.tar.gz
```
2019-11-10 11:16:19 +01:00
2019-11-19 07:55:35 +01:00
2019-11-03 05:41:02 +01:00
## [1.3.0rc1] – 2019-11-03
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.2.0:
2019-10-20 11:01:23 +02:00
### Added
- **Add experimental support for Corsair HX750i, HX850i, HX1000i and HX1200i power supplies**
- **Add experimental support for Corsair RM650i, RM750i, RM850i and RM1000i power supplies**
- **Add experimental support for NZXT E500, E650 and E850 power supplies**
2019-10-20 15:39:11 +02:00
- **Add experimental support for the NZXT Smart Device V2**
2019-10-20 11:01:23 +02:00
- Add liquidctl(8) man page
2019-10-28 08:46:23 +01:00
- Add `--single-12v-ocp` option to `initialize` (Corsair HXi/RMi PSUs)
- Add `--pick <result>` device selection option
- Add `initialize all` variant/helper
2019-10-23 07:26:22 +02:00
### Changed
- Reduce the number of libusb and hidapi calls during device discovery
2019-10-26 21:41:22 +02:00
- Improve the visual hierarchy of the output `list` and `status`
- Allow `list --verbose` to run without root privileges (Linux) or special drivers (Windows)
2019-10-28 08:46:23 +01:00
- Change the default API for HIDs on Linux to hidraw
2019-10-31 12:02:47 +01:00
- Consider stable: Corsair H80i v2, H100i v2, H115i; NZXT Kraken X31, X41, X61; NZXT Grid+ V3
2019-11-02 04:40:56 +01:00
### Fixed
2019-11-03 05:28:19 +01:00
- Don't try to reattach the kernel driver more than once
2019-11-02 04:40:56 +01:00
- [Corsair H80i GT] Fixed device name throughout
2019-11-02 04:43:37 +01:00
- [Corsair H110i GT] Fixed device name in listing
2019-11-02 04:44:01 +01:00
### Deprecated
- [API] Use `liquidctl.driver.find_liquidctl_devices` instead of `liquidctl.cli.find_all_supported_devices`
2019-11-03 07:21:05 +01:00
### Checksums
```
$ sha256sum liquidctl-1.3.0rc1*
7a16a511baf5090c34cd3dfc5c21068a298515f31315be63e9b991ea17654671 liquidctl-1.3.0rc1-bin-windows-x86_64.zip
1ef517ba33e366167f9a225c6a6afcc4899d01cbd7853bd5852ac15ae81d5005 liquidctl-1.3.0rc1-py3-none-any.whl
15583d6ebecad722e1562164cef7097a358d6a57aa33a1a5e25741690548dbfa liquidctl-1.3.0rc1.tar.gz
```
2019-10-20 11:01:23 +02:00
2019-11-19 07:55:35 +01:00
2019-09-27 21:13:45 +02:00
## [1.2.0] – 2019-09-27
2019-11-19 07:55:35 +01:00
_Summary for the 1.2.0 release: support for Asetek "5-th gen." 690LC coolers and improvements for HIDs and Mac OS._
2019-11-19 07:52:06 +01:00
Changelog since 1.2.0rc4:
2019-09-19 18:24:29 +02:00
### Changed
- Include extended version information in pre-built executables for Windows
2019-09-24 19:55:24 +02:00
### Fixed
2019-09-27 21:13:45 +02:00
- Improve handling of USB devices with no active configuration
2019-09-19 18:24:29 +02:00
2019-11-19 07:55:35 +01:00
2019-09-19 00:48:12 +02:00
## [1.2.0rc4] – 2019-09-18
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.2.0rc3:
2019-09-19 00:48:12 +02:00
### Added
2019-10-23 07:28:05 +02:00
- Add support for adding git commit and tree cleanliness information to `--version`
- Add support for adding distribution name and package information to `--version`
2019-09-19 00:48:12 +02:00
### Changed
- [Corsair Asetek 690LC] Enable modern features for all Corsair coolers
2019-10-23 07:28:05 +02:00
- Include version information in `--debug`
2019-09-19 00:48:12 +02:00
- Make docs and code consistent on which devices are only experimentally supported
- Revert "Mark Kraken X31, X41, X51 and X61 as no longer experimental"
- Improve the documentation
2018-08-31 05:57:34 +02:00
2019-11-19 07:55:35 +01:00
2019-09-15 15:44:29 +02:00
## [1.2.0rc3] – 2019-09-15
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.2.0rc2:
2019-09-15 15:44:29 +02:00
### Added
2019-09-15 16:48:24 +02:00
- Add experimental extra/liquiddump script
2019-09-15 15:44:29 +02:00
### Changed
- Copy documentation for EVGA and Corsair 690LC coolers into the tree
- [Corsair H115i] Use modern driver with fan profiles (see #41 )
- [All Asetek 690LC] Claim the interface proactively when starting a transaction (see #42 )
### Fixed
- [All Asetek 690LC] Rework USBXPRESS flow control to allow simultaneous reads from multiple processes (see #42 )
- [Legacy Asetek 690LC] Fix missing argument forwarding
- Fix broken link to Mac OS example configuration
2019-11-19 07:55:35 +01:00
2019-09-12 12:54:39 +02:00
## [1.2.0rc2] – 2019-09-12
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.2.0rc1:
2019-09-12 12:54:39 +02:00
### Added
- Support the EVGA CLC 360
2019-10-23 07:28:05 +02:00
- Add `--alert-threshold` and `--alert-color`
2019-09-12 12:54:39 +02:00
### Changed
- Mark Kraken X31, X41, X51 and X61 as no longer experimental
- Improve supported devices list and links to documentation
2019-10-23 07:28:05 +02:00
- Don't enable PyUSB tracing automatically with `--debug`
2019-09-12 12:54:39 +02:00
- [Legacy Asetek 690LC] Cache values read from or stored on the filesystem
- [Legacy Asetek 690LC] Prefer to save driver data in /run when OS is Linux
2019-04-14 09:36:27 +02:00
### Fixes
- Force bundling of 'hid' module in Windows executable
2019-10-23 07:28:05 +02:00
- [Legacy Asetek 690LC] Change default fading `--time-per-color` (see #29 )
2019-04-14 09:36:27 +02:00
2019-11-19 07:55:35 +01:00
2019-04-14 08:19:06 +02:00
## [1.2.0rc1] – 2019-04-14
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.1.0:
2019-02-25 03:13:06 +01:00
### Added
2019-03-11 06:30:18 +01:00
- Make automatic bundled builds for Windows with AppVeyor
2019-02-28 12:35:55 +01:00
- [Smart Device/Grid+ V3] Add option to set all fans at once with virtual 'sync' channel
2019-03-11 06:30:18 +01:00
- Add support for hidapi for HIDs
- Support HIDs on Mac OS with hidapi
- Add `--hid <module>` override for HID API selection
- Add release number, bus and address listing
- Add `--release` , `--bus` , `--address` device filters
2019-04-08 05:25:52 +02:00
- Add `--time-per-color` and `--time-off` animation options
2019-04-08 21:58:02 +02:00
- **Add driver for EVGA CLC 120 CL12, 240 and 280 coolers**
2019-04-09 08:15:55 +02:00
- Add `--legacy-690lc` option for Asetek 690LC devices
- **Add experimental legacy driver for NZXT Kraken X31, X41 and X61 coolers**
- **Add experimental support of Corsair H80i v2, H100i v2 and H115i**
2019-11-02 04:40:56 +01:00
- **Add experimental support of Corsair H80i GT, H100i GTX and H110i GTX**
2019-04-09 08:15:55 +02:00
- Document possible support of NZXT Kraken X40 and X60 coolers
2019-03-11 06:30:18 +01:00
### Changed
- [internal] Revamp driver and device model in `base.py` and `usb.py`
2019-03-02 03:49:12 +01:00
### Removed
- Remove `--dry-run`
2019-02-25 03:13:06 +01:00
2019-11-19 07:55:35 +01:00
2018-12-15 22:06:46 +01:00
## [1.1.0] – 2018-12-15
2019-11-19 07:55:35 +01:00
_Summary for the 1.1.0 release: support for NZXT Smart Device, Grid+ V3 and Kraken M22._
2019-11-19 07:52:06 +01:00
Changelog since 1.1.0rc1:
2018-12-15 22:06:46 +01:00
### Added
- Add proof of concept of software-based speed control
2018-11-14 08:45:49 +01:00
### Changed
- Change Kraken M22 from experimental to implemented
2018-11-20 09:20:09 +01:00
- Only show exception tracebacks if -g has been set
2018-12-15 22:06:46 +01:00
- Improve the documentation
2018-12-08 03:54:17 +01:00
### Fixes
- Fix: use correct exception (NotImplementedError)
2018-11-14 08:45:49 +01:00
2019-11-19 07:55:35 +01:00
2018-11-14 06:40:55 +01:00
## [1.1.0rc1] - 2018-11-14
2019-11-19 07:55:35 +01:00
2019-11-19 07:52:06 +01:00
Changelog since 1.0.0:
2018-09-02 12:47:30 +02:00
### Added
2018-11-09 04:24:40 +01:00
- [Kraken] Add `super-breathing` , `super-wave` and `backwards-super-wave`
2018-09-24 10:26:50 +02:00
- **Add driver for the NZXT Smart Device**
2018-11-09 04:24:40 +01:00
- Add `initialize` command for the NZXT Smart Device, NZXT Grid+ V3 and similar products
2018-10-06 15:20:43 +02:00
- Add device filtering options: `--vendor` , `--product` , `--usb-port` and `--serial`
2018-09-24 10:26:50 +02:00
- Add `--debug` to complement `--verbose`
2018-11-09 04:24:40 +01:00
- **Add experimental support for the NZXT Grid+ V3**
- **Add experimental support for the NZXT Kraken M22**
- [Kraken][API] Add `set_instantaneous_speed(channel, speed)`
- [Kraken][API] Expose `supports_lighting` , `supports_cooling` and `supports_cooling_profiles` properties
2018-12-15 22:06:46 +01:00
- Add proof of concept of status-duty translation
2018-09-23 14:08:50 +02:00
### Changed
2018-11-09 04:24:40 +01:00
- [API] Improve the API for external code that uses our drivers
- [API] Switch to the standard Python `logging` module
2018-10-06 15:20:43 +02:00
- No longer imply `--verbose` from `--dry-run`
Lower the minimum pump duty to 50%
This has been an ongoing discussion in krakenx and it took me a long
time to decide what my stance is.
The main issue is that while allowed by the firmware, such low speeds
are not (currently) exposed in CAM. This probably means that there are
scenarios where correlation has been observed between pump speeds lower
than 60% and increased failure rates.
However, no public statement has been made, and there should also be
plenty of scenarios where they are perfectly harmless, for the following
reasons:
- they are allowed by the firmware
- the pump would still run well above its minimum specified speed (i.e.
1900+ rpm, when the specification lists 1600 ± 300 rpm)[1]
- the performance differences between 1900 rpm (50%), 2100 rpm (60%) and
even 2800 rpm (100%) are very small, both on liquid and component
temperatures[2][3]
- while DC controlled devices might stall at low voltages, these pumps
are controlled with (high-frequency) PWM, thus greatly reducing the
likelihood of this issue[4]
For these reasons, my position is (finally) that we should educate the
users, instead of limiting them.
[1] https://web.archive.org/web/20180918051402/https://www.nzxt.com/products/kraken-x62
[2] According to my own testing with Kraken X62 + i7 8700K + 170+ W
[3] https://youtu.be/3B7ou8fOFfE?t=1m35s
[4] https://youtu.be/Kc07JtDerUw
2018-09-25 08:54:42 +02:00
- [Kraken] Lower the minimum pump duty to 50%
2018-11-14 06:40:55 +01:00
- Improve the documentation
2018-11-09 04:24:40 +01:00
### Fixes
- Fix standalone module entry point for the CLI
- [Kraken] Fix fan and pump speed configuration on firmware v2.1.8 or older
2018-09-02 12:47:30 +02:00
### Deprecated
2018-09-20 03:08:15 +02:00
- [Kraken] Deprecate `super` ; use `super-fixed` instead
2018-10-06 15:20:43 +02:00
- [Kraken] Deprecate undocumented API behavior of `initialize()` and `finalize()` ; use `connect()` and `disconnect()` instead
2018-09-23 14:08:50 +02:00
### Removed
2018-11-09 04:24:40 +01:00
- Remove unused symbols in `liquidctl.util`
2018-09-02 12:47:30 +02:00
2019-11-19 07:55:35 +01:00
2018-08-31 05:57:34 +02:00
## [1.0.0] - 2018-08-31
2019-11-19 07:55:35 +01:00
_Summary for the 1.0.0 release: support for NZXT Kraken X42/X52/X62/X72 coolers._
2019-11-19 07:52:06 +01:00
Changelog since 1.0.0rc1:
2018-08-31 05:57:34 +02:00
### Added
2018-09-02 12:47:30 +02:00
- [Kraken] Add helper color mode: `off`
- [Kraken] Add backward variant of `moving-alternating` color mode
2018-08-31 05:57:34 +02:00
### Changed
- Improve the documentation
- [Kraken] Allow covering marquees with only one color
### Fixes
- Fix mentions to incorrect Kraken generation
2018-09-02 12:47:30 +02:00
- [Kraken] Correct the modifier byte for the `moving-alternating` mode
2018-08-31 05:57:34 +02:00
2019-11-19 07:55:35 +01:00
2018-08-31 05:57:34 +02:00
## [1.0.0rc1] - 2018-08-26
2019-11-19 07:55:35 +01:00
2018-08-31 05:57:34 +02:00
### Added
2018-09-20 03:08:15 +02:00
- **Add driver for NZXT Kraken X42, X52, X62 and X72 coolers**