All Projects → T-Troll → alienfx-tools

T-Troll / alienfx-tools

Licence: MIT license
Alienware systems lights, fans, and power control tools and apps

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to alienfx-tools

Queries
SQLite queries
Stars: ✭ 57 (-43%)
Mutual labels:  windows-10
winsys
STATUS: DEVELOPMENT PAUSED ⏸️ - Configure your Windows
Stars: ✭ 56 (-44%)
Mutual labels:  windows-10
WindowsMediaController
Allows developers to more easily get information from and interact with the Windows 10/11 OS media interface.
Stars: ✭ 41 (-59%)
Mutual labels:  windows-10
Light-Switch
Easily switch from light to dark theme, or the other way around, in Windows 10/11.
Stars: ✭ 25 (-75%)
Mutual labels:  windows-10
WindowsAppSDK
The Windows App SDK empowers all Windows desktop apps with modern Windows UI, APIs, and platform features, including back-compat support, shipped via NuGet.
Stars: ✭ 3,089 (+2989%)
Mutual labels:  windows-10
gacpass
a password management software using GacUI.
Stars: ✭ 22 (-78%)
Mutual labels:  windows-10
hue-lights
Gnome Shell extension for Philips Hue compatible lights controlled by the Philips Hue Bridge and for controlling Philips Hue HDMI sync box.
Stars: ✭ 157 (+57%)
Mutual labels:  light-control
ghostly
Ghostly is a GitHub notification client for Windows 10/11
Stars: ✭ 252 (+152%)
Mutual labels:  windows-10
WindowsSimplify
Windows 系統優化精簡 / Windows Simplify Project
Stars: ✭ 234 (+134%)
Mutual labels:  windows-10
Textylic
A note taking app developed for the 22nd century
Stars: ✭ 34 (-66%)
Mutual labels:  windows-10
asus-fan
Kernel module to get/set (both) fan speed(s) on ASUS Zenbooks
Stars: ✭ 92 (-8%)
Mutual labels:  fan-control
kiosk-demo-electron
Package and distribute Electron Apps and run them in Kiosk mode on Windows 10
Stars: ✭ 68 (-32%)
Mutual labels:  windows-10
ArtixWSL
Install Artix Linux as a WSL Instance.
Stars: ✭ 45 (-55%)
Mutual labels:  windows-10
xbox360-controller-manager
Turn OFF your wireless xbox 360 controller on PC and see the battery status of the connected controllers.
Stars: ✭ 38 (-62%)
Mutual labels:  windows-10
EnvSetup
Choco script for setting up my dev box.
Stars: ✭ 122 (+22%)
Mutual labels:  windows-10
x1
A Windows taskbar replacement in C# .NET
Stars: ✭ 25 (-75%)
Mutual labels:  windows-10
Start-Menu-Manager
App to add websites/software/files/folders/scripts to the Windows 10 Start Menu and Taskbar, and priority shortcuts to Windows 10 Search.
Stars: ✭ 126 (+26%)
Mutual labels:  windows-10
minecraft-worldedit-bedrock
World Edit for Minecraft bedrock
Stars: ✭ 48 (-52%)
Mutual labels:  windows-10
set-default-browser
Silently sets the default web browser in Windows 10
Stars: ✭ 37 (-63%)
Mutual labels:  windows-10
tor-rootkit
A Python 3 standalone Windows 10 / Linux Rootkit using Tor.
Stars: ✭ 142 (+42%)
Mutual labels:  windows-10

AlienFx tools

AWCC is not needed anymore - here are light weighted tools for Alienware systems lights, fans, power profile control:

  • AlienFX Control - AWCC alternative in 500kb. You can control your system lights (including hardware and software effects such as system parameters monitoring, ambient lights, sound haptic), fans, temperatures, power settings, and a lot more.
  • AlienFX Monitor - System monitoring tool - you can check system health and put important parameters into tray.
  • AlienFX-CLI - Make changes and check status of your AlienFX lights from the CLI (command-line interface).
  • LightFX - Dell LightFX library emulator. Supports all Dell's API functions using my low-level SDK. It can be used for any LightFX/AlienFX-compatible game.
  • AlienFan GUI control - simple fan and power control utility. Set your fan parameters according to any system temperature sensor, switch system power modes, etc.
  • AlienFan-CLI - Command-line interface tool for control fans (and lights for some systems) as well as some power settings from the command line.

How does it work?

Light control tools work with USB/ACPI hardware devices directly, not requiring the installation of other tools/drivers.

  • It's way faster. For older systems, the change rate can be up to 20cps. For modern, up to 120cps.
  • It's flexible. I can use uncommon calls to set a broader range of effects and modes.
  • Group lights, create light/fan Profiles for different situations, switch them by running games/applications.

For fan/power controls, instead of many other fan control tools, like SpeedFan, HWINFO or Dell Fan Control, this tool does not use direct EC (Embed controller) access and data modification.
It utilizes proprietary Alienware function calls inside ACPI BIOS (the same used by AWCC) trough the hole into Windows WMI.

  • It's safer - BIOS still monitors fans and has no risk fans will stop under full load.
  • It's universal - Most Alienware systems have the same interface.
  • In some cases, this is the only way - for example, Alienware m15/m17R1 does not have EC control at all.

Disclaimer

Starting from the release 4.2.1, Anti-viruses can detect virus into project package.
Please add application folder into anti-virus exception list.
You can read why it happened here.

From release 7.0.0 anti-virus do not complain anymore (ACPI access method was changed).

Requirements

  • Alienware light device/Alienware ACPI BIOS (for fan control) present into the system and have USB HID driver active (alienfx-cli can work even with missing devices, Dell LightFX needs to be present in the system).
  • Windows 10 v1903 or later (64-bit only). Windows 11 not officially supported by fan control due to instability, use at you own risk!
  • If you plan to use fan control, "Memory integrity" (Settings->Update&Security->Security->Device Security->Core isolation) should be disabled.
  • If you plan to use fan control (especially into Windows 11), "Fast startup" (Control panel->Power options->Power buttons) should be disabled.
  • alienfan-gui and -cli always require Administrator rights to work (for communication with hardware).
  • alienfx-gui require Administrator rights in some cases:
    • "Disable AWCC" selected in Settings (stopping AWCC service require Administrator privileges)
    • "Esif temperature" selected (access to ESIF values blocked from user account)
    • "Enable Fan control" selected (the same reason as for alienfan-gui)
  • alienfx-mon require Administrator rights in case ESIF or BIOS monitoring enabled (the same reason as for alienfx-gui)
  • alienfx-cli does not require Administrator privilege and can be run at any level.
  • All the tools don't require an Internet connection, but alienfan-gui, alienfx-mon and alienfx-gui will connect to GitHub to check for updates if a connection is available.
  • All the tools does not collect and share any personal data. Some hardware data collected (but not shared) during hardware detection process.

Installation

  • Download the latest release archive or installer package from here.
  • (Optional) Ambient effect mode uses DirectX for screen capturing, so you need to download and install it from here. Other modes don't require it, so you need it if you plan to use Ambient effects only.
  • (Optional) For LightFX-enabled games/applications, copy LightFx.dll into game/application folder.
  • (Optional) For alienfx-cli high-level support, both of my emulated (see above) or Alienware LightFX DLLs should be installed on your computer. These are installed automatically with Alienware Command Center, and the program should pick them up. You also should enable Alienfx API into AWCC to utilize high-level access: Settings-Misc at Metro version (new), right button context menu, then "Allow 3rd-party applications" in older Desktop version.
  • Unpack the archive to any directory of your choice or just run the installer.
  • (Optional) For the fan control, it's highly recommended to set correct overboost values and maximal fans RPM. You can do it at GUI apps first start or by running alienfx-cli setover command.
  • (Optional) You can install and run Open Hardware Monitor before running fan control apps - this provide more sensors to control.
  • Run alienfx-gui or alienfx-cli probe to check and set light names (all tools will have limited functionality without this step).

Please read How to start guide first!

Supported hardware:

Light control: Virtually any Alienware/Dell G-series notebook and desktop, some Alienware mouses, Alienware keyboards, Alienware monitors. Fan control: Modern Alienware/Dell G-Series notebooks (any m-series, x-series, Area51m), Aurora R7 (and later model) desktops.

Project Wiki has more details and the list of tested devices.
If your device is not supported, you can help me support it.
For fan control - Send me the ACPI dump from RW Everything for analysis.

Known issues

  • Hardware light effects like breathing, spectrum, rainbow only supported at APIv4 (Tron) lights.
  • Hardware light effects and global effect didn't work with software effects at the same time for APIv4-v5 (hardware bug, "Update" command stop all effects). Disable monitoring in alienfx-gui to use it.
  • DirectX12 games didn't allow access to GPU or frame, so Ambient effect will not work, and alienfx-gui can't handle GPU load for it correctly.
  • Setting a hardware power button light, especially for events, can provide hardware light system acting slow right after color update! alienfx-gui will switch to the "Devices" tab or quit with visible delay.
  • WARNING! I strongly recommend stopping AWCCService if you plan to use alienfx-gui application with "Power Button" related features. Keeping it working can provide unexpected results up to light system freeze (for APIv4).
  • WARNING! There is a well-known bug in DirectX at the Hybrid graphics (Intel+Nvidia) notebooks, preventing the Ambient effect from capturing the screen. If you have only one screen (notebook panel) connected but set Nvidia as a "Preferred GPU" in the Nvidia panel, please add alienfx-gui with "integrated GPU" setting at "Program settings" for the same monitor. It will not work at the default setting in this case.
  • WARNING! In rare case light system freeze, shutdown or hibernate your notebook (some lights can stay on after shutdown), disconnect power adapter and wait about 15 seconds (or until all lights turn off), then start it back.

Support

Join Discord support server

How to build from source code

Prerequisites:

  • Visual Studio Community 2019
  • Microsoft Windows Driver Development Kit (WDK) v10.0 or higher (optional, for Fan SDK V1)

Build process:

  • Clone repository
  • Open solution into your Visual Studio, build.

ToDo list

  • New events
    • Input locale
    • Missed notifications (toasts)
    • Keyboard events (key press reaction)
  • New devices support
    • Monitors
    • Mouses
    • Keyboards
  • Power and battery charge control

License

MIT. You can use these tools for any non-commercial or commercial use, modify it any way - supposing you provide a link to this page from your product page and mention me as one of the authors.

Credits

Functionality idea and code, new devices support, haptic and ambient algorithms by T-Troll.
Low-level SDK based on Gurjot95's AlienFX_SDK.
High-level API code and alienfx-cli based on Kalbert312's alienfx-cli.
Spectrum Analyzer is based on Tnbuig's Spectrum-Analyzer-15.6.11.
FFT subroutine utilizes Kiss FFT library.
DXGi Screen capture based on Bryal's DXGCap example.

Special thanks to DavidLapous for inspiration and advice!
Special thanks to theotherJohnC for the Performance Boost idea!
Per-Key RGB devices testing and a lot of support by rirozizo.
Aurora R7 testing by Raoul Duke.
Support for mouse and a lot of testing by Billybobertjoe
A lot of G-mode ideas and testing from Hellohi3654
Alienware m15R6 device mapping and testing by Professor-Plays
Special thanks to PhSMu for ideas, Dell G-series testing, and artwork.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].