Dell G15 5530 Windows 硬件控制中心
一个面向 Dell G15 5530 的本地 Windows 硬件控制中心:性能模式、风扇控制(自动 / 手动 / 自定义曲线)、CPU/GPU 实时监控、键盘灯光检测与控制、硬件诊断。全中文界面、深色卡片式设计、无内核驱动。
⚠️ 本项目主要在开发者本人的 Dell G15 5530(i7-13650HX + RTX 4060 Laptop GPU + Windows 11,BIOS 1.34.0)上开发并实测。不同硬件配置、BIOS 版本、驱动版本下,功能可能存在差异,详见「已知限制」与「免责声明」。
| 功能 | 状态 |
|---|---|
| 性能模式(静音 / 均衡 / 性能 / 省电) | ✅ 固件回读确认 |
| G 模式 | |
| CPU 实时监控(温度 / 占用 / 频率 / RPM) | ✅ |
| GPU 实时监控(温度 / 占用 / 频率 / 功耗 / RPM) | ✅ |
| 风扇 RPM 监控(CPU / GPU) | ✅ |
| 自动风扇 | ✅ 固件回读确认 |
| 手动风扇(0–100% + 快捷按钮) | ✅ 固件回读确认(半手动,见下) |
| 自定义风扇曲线(拖拽编辑 + 后台执行) | ✅ |
| 键盘灯光检测 | ✅(AW-ELC / ACPI / HID 探测) |
| 键盘灯光控制(RGB 分区 / 颜色 / 效果) | ✅ 本机 4 区 RGB 经 AW-ELC 实测可控 |
| 键盘背光亮度(BIOS 档位) | |
| 硬件诊断(一键只读 + 实机控制测试) | ✅ |
| 系统托盘 / 开机自启 / 关闭到托盘 | ✅ |
状态依据:
tests/实机控制测试.md(实机写入 + 固件回读验证)、tests/TEST-REPORT.md(自测)、docs/硬件兼容性报告.md(只读诊断)。「命令发送成功」与「硬件状态已确认」是两回事,本程序全程区分Confirmed(固件回读确认)与Unverified(仅命令被接受)并如实展示,绝不伪造控制成功。
Dell G15 5530 自带的控制能力分散在 AWCC / BIOS / 快捷键中,且风扇策略偏保守。本项目通过 AWCC ACPI-WMI 接口(无需安装 Alienware Command Center)直接与固件对话,提供统一的本地控制中心:
- 实时监控 CPU / GPU 温度、占用、频率、风扇转速;
- 手动 / 自动 / 自定义曲线控制 CPU 与 GPU 风扇;
- 切换静音、均衡、性能、省电与 G 模式;
- 检测并(在硬件允许时)控制键盘背光;
- 一键只读硬件诊断与可选的实机控制测试。
技术要点:
- 无内核驱动:不使用 WinRing0 / LibreHardwareMonitor 等驱动方案,规避已知内核驱动漏洞;
- UI 永不阻塞:UI 线程只渲染与接收输入,所有硬件操作进入「命令队列」由单一后台 Worker 串行执行,连续快速点击会被合并、去重、超时保护;
- 安全优先:所有硬件调用先检测 → 再验证 → 再执行;错误时安全退出;退出程序自动「风扇交还固件 + 恢复启动时模式」。
| 模块 | 说明 |
|---|---|
| 概览 | CPU/GPU 温度、占用、频率、GPU 功耗、风扇 RPM、内存、运行时间(刷新 500ms / 1s / 2s 可选) |
| 风扇控制 | CPU / GPU 风扇独立:自动、手动滑块(0–100%)、快捷按钮(30%–100%)、最低值钳制提示 |
| 风扇曲线 | 拖拽节点编辑「温度 → 转速」曲线;添加 / 删除 / 恢复默认 / 保存 / 加载 / 应用;由后台服务每 2 秒按当前温度执行 |
| 性能模式 | 静音 / 均衡 / 性能 / 省电(USTT 族)+ G 模式,切换在后台执行并回读固件结果 |
| 键盘灯光 | 自动探测灯控接口(AW-ELC / HID / ACPI / EC);连接后支持 4 分区 / 整盘统一颜色、RGB 调色、灯效(呼吸等);未检测到可写接口时如实显示检测结果 |
| 硬件诊断 | 一键只读诊断(Dell / BIOS / AWCC WMI / 风扇 / 温度 / RPM / 模式 / G 模式 / 键盘 / NVML)生成兼容性报告;可选实机控制测试(写入 + 回读验证 + 测后恢复) |
| 设置 | 开机自启、启动最小化、关闭到托盘、退出自动恢复、刷新间隔、风扇最低值、日志开关 |
| 托盘 | 关闭最小化到托盘;右键:打开 / 风扇自动 / 静音 / 均衡 / 性能 / 退出 |
- 主要目标机型:Dell G15 5530(2023 款,AWCC ACPI-WMI 接口)。
- 接口依赖:系统需存在 AWCC ACPI-WMI 设备(
ACPI\PNP0C14\AWCC_0,多数 Dell G15 / Alienware 机型自带,无需安装 AWCC 应用)。 - 不同硬件配置可能存在功能差异,尤其是以下项目,可能因具体硬件、BIOS 版本、驱动版本而不同:
- 键盘背光(单色 / RGB 分区 / 无背光)
- RGB / AlienFX 灯效
- EC(嵌入式控制器)风扇协议
- 风扇控制可用性
- 性能模式集合
- 本项目不声称所有 G15 5530 都支持相同功能。程序启动时会实际探测可用接口;未检测到的功能会明确显示「不支持 / 未检测到可用接口」。
- 提供 静音 / 均衡 / 性能 / 省电 四种模式(USTT 族,固件实测接受),以及 G 模式(写入 0xAB,以转速上升确认)。
- 切换在后台线程执行(慢速 BIOS 属性查询不阻塞 UI),完成后显示固件回读结果。
- 退出程序时自动恢复启动时的模式(可关闭)。
- CPU / GPU 风扇各提供 自动 / 手动。
- 手动模式下用滑块(0–100%)或快捷按钮(30%–100%);低于硬件最低值(默认 20%)自动钳制并提示;0% = 交还固件自动曲线。
- 半手动说明:Dell 固件保有 BIOS 温度底线,高温时固件会自行拉高转速。程序每次写入都回读固件 op12 附加转速:回读一致显示「已确认」,否则如实显示「已发送 / 未确认」。
- 所有写入命令进入命令队列串行执行,有超时保护与退出恢复,不会无限循环写硬件。
- 拖拽节点编辑「温度 → 转速」曲线,支持添加 / 删除 / 恢复默认 / 保存 / 加载 / 应用。
- 应用后由后台控制服务每 2 秒按当前温度插值执行,UI 不参与控制循环。
- 曲线保存在数据目录
profiles\fan_profiles.json。
- CPU:温度(AWCC WMI 传感器)、占用、频率、风扇 RPM。
- GPU:温度(NVML)、占用、频率、功耗、风扇 RPM。
- 独立监控循环(默认 1 秒),不占用 UI 线程;界面刷新间隔可在设置中调整(500ms / 1s / 2s)。
- 无可用只读接口的读数(如部分机型的 CPU 功耗、显存)统一显示 N/A / --,不做任何假数据填充。
键盘灯光是重点功能之一,程序会尝试检测实际存在的灯控接口,可能涉及:
- AWCC / AlienFX(Alienware 灯控协议)
- HID(USB 人机交互设备,如
VID_187C&PID_0551AW-ELC 控制器) - USB / ACPI / EC 等 Dell 相关硬件接口
工作方式:
- 探测:启动与诊断时只读探测控制器(型号、固件版本、分区数、动画数、HID 报文长度),探测不写硬件。
- 连接:用户点击「连接键盘灯控制器」打开 AW-ELC HID 通道,之后可选择分区(ZONE 1–4)或整盘,设置颜色与灯效并「应用灯光」。
- 可验证:每次下发均记录到
logs\lighting.log,并支持断开(灯效保存在控制器内)与恢复。 - 未检测到可写接口:如实显示检测结果,不伪造控制成功、不提供假控件。
说明:
- 「键盘背光(BIOS 亮度档位)」与「RGB 灯效(AW-ELC 控制器)」是两条独立通道:本机 BIOS 亮度属性只读(可用 Fn+F7 循环),RGB 灯效则可控。
- 「没有检测到接口」不等于「硬件不支持」——可能是接口被占用、驱动未装或该机型背光本身只读。
- 本机(G15 5530 / BIOS 1.34.0)实测:检测到 Alienware AW-ELC(187C:0551,固件 2.1.19),4 分区 RGB 经实机验证自左向右分别可控。
- 只读诊断:
diagnostic.bat scan或程序内「一键诊断」——检测 Dell / BIOS / AWCC WMI / 风扇发现 / 温度 / RPM / 散热模式 / G 模式状态 / 键盘背光 / NVML,生成docs\硬件兼容性报告.md。 - 实机控制测试:
diagnostic.bat test(需管理员)——真实写入风扇与模式,写入后回读验证,测试结束后自动恢复,生成tests\实机控制测试.md。会实际改变风扇转速与散热模式,请确认理解后再运行。
开机自启、启动最小化、关闭到托盘、退出自动恢复、刷新间隔、风扇最低值、温度告警阈值、日志开关、数据目录覆盖(settings.json 的 RootDir,默认自动定位)。
| 项目 | 要求 |
|---|---|
| 操作系统 | Windows 10/11 x64 |
| 运行时 | .NET 8 Desktop Runtime(构建需要 .NET 8 SDK) |
| 硬件 | Dell G15 5530(或其他带 AWCC ACPI-WMI 的机型,功能可能不同) |
| 权限 | 控制功能(风扇 / 模式 / G 模式)需要管理员权限 |
| 可选 | NVIDIA 显卡驱动(NVML 监控);键盘灯控接口(按机型) |
方式 A:直接构建运行
git clone https://github.com/liao2006liao/DellG15Control.git
cd DellG15Control
build.bat :: 需要系统已安装 .NET 8 SDK方式 B:便携 SDK(不写系统盘)
powershell -ExecutionPolicy Bypass -File tools\install_sdk.ps1
build.bat :: 自动优先使用 tools\dotnet 便携 SDK方式 C:安装 + 开机自启
install.bat :: 构建后询问是否注册开机自启(HKCU Run,最小化到托盘启动)便携 SDK 脚本来自微软官方
dotnet-install.ps1(MIT 许可),安装到仓库内tools\dotnet,不修改 PATH、不写系统盘。
run.bat或直接运行构建产物 app\DellG15Control.exe(建议右键 → 以管理员身份运行以获得完整控制能力)。程序默认不强制提权:非管理员启动时自动降级为「只读监控模式」,可点击界面右上角「以管理员身份运行」提权重启。
- 风扇控制、性能模式、G 模式等写入操作需要管理员权限(AWCC WMI 接口要求)。
- 程序清单为
asInvoker(默认不强制提权):非管理员运行时自动降级为只读监控,温度 / RPM 等监控照常可用。 - 推荐:右键
app\DellG15Control.exe→ 属性 → 兼容性 → 勾选「以管理员身份运行」,或使用install.bat注册开机自启(自启项本身带提权提示)。
| 项目 | 值 |
|---|---|
| 框架 | .NET 8 (net8.0-windows) / WPF + WinForms(仅托盘图标) |
| 语言 | C#(LangVersion latest,Nullable enable) |
| 项目结构 | App(UI)/ Hardware(WMI / NVML / HID)/ Services(队列 / 曲线 / 配置 / 日志)/ Tests(控制台诊断) |
| 依赖 | 仅 System.Management NuGet 包(WMI),其余为框架自带 |
| 构建 | dotnet build src\DellG15Control.App\DellG15Control.App.csproj -c Release -o app |
DellG15Control/
├── src/
│ ├── DellG15Control.App/ WPF 界面(主窗口、各功能页、ViewModel、托盘)
│ ├── DellG15Control.Hardware/ AWCC WMI、NVML、系统遥测、键盘灯控(AW-ELC/HID)
│ ├── DellG15Control.Services/ 命令队列、风扇曲线、配置、日志、安全恢复
│ └── DellG15Control.Tests/ 诊断/自测控制台(scan/test/自测/fanreset/fx*)
├── config/ lighting.json(灯光配置示例)
├── profiles/ fan_profiles.json(默认风扇曲线)
├── docs/ 硬件兼容性报告(诊断生成)
├── tests/ 自测报告与实机控制测试报告(测试生成)
├── tools/ dotnet-install.ps1 / install_sdk.ps1(可选便携 SDK)
├── app/ 构建输出(git 忽略,由 build.bat 生成)
├── run.bat / build.bat / install.bat / diagnostic.bat
├── README.md / LICENSE / .gitignore
数据目录(config / logs / profiles / docs / tests)默认自动定位为项目根目录,Clone 后无需改任何路径即可运行。
- 主要针对开发者本人的 G15 5530 实测;其他配置 / BIOS / 驱动下功能可能不同。
- 键盘背光亮度:本机 BIOS 亮度档位只读(Fn+F7 循环),程序不提供亮度写入;RGB 灯效经 AW-ELC 可正常控制。
- G 模式:开启命令被固件接受,但本机实测开启后转速未明显上升(可能已处于高转速状态),程序如实显示结果。
- 风扇控制为半手动:固件保有 BIOS 温度底线,高温时固件会自行拉高转速。
- CPU 功耗 / 显存读数:本机无可用只读接口,显示 N/A。
- 慢速 BIOS 属性查询(如散热模式)可能耗时数秒,仅在后台执行。
- 需要系统存在 AWCC ACPI-WMI 接口;某些 OEM 精简系统可能缺失。
Q:风扇控制点了没反应? A:请确认以管理员身份运行;且注意固件 BIOS 温度底线优先——高温时即使手动 20%,固件也可能自行拉高转速。程序每次写入会回读固件状态并如实显示「已确认 / 未确认」。
Q:为什么不用 WinRing0 / LibreHardwareMonitor? A:这类方案需要加载内核驱动,存在已知安全漏洞(如 CVE-2020-14979 等)。本项目只使用 Windows 内置的 WMI / NVML / HID API,无内核驱动。
Q:键盘灯光页面提示未检测到接口? A:程序只在实际探测到可写灯控接口(如 AW-ELC HID)后才提供控制控件。提示未检测到是真实检测结果,不是故障;可能是接口被占用、驱动未装,或该机型背光本身只读。不同机型可能不同。
Q:数据放在哪里?
A:默认在项目根目录下的 config/、logs/、profiles/、docs/、tests/,跟随程序位置自动定位;可在 settings.json 的 RootDir 中指定其他位置。
Q:日志在哪里?
A:logs\ 下按通道分文件:app.log、hardware.log、fan.log、lighting.log、error.log;每次硬件操作耗时也会记录(用于定位卡顿)。
- 无内核驱动:仅使用 Windows 内置 API(WMI / NVML / HID),不使用 WinRing0 / LibreHardwareMonitor 等驱动方案。
- 先检测、再验证、再执行:所有底层操作(EC / ACPI / HID / USB 等)在确认接口可用后才执行;无法确认的接口显示「不支持 / 未检测到」,绝不执行未知命令。
- 命令队列限制:所有硬件写入经单一队列串行执行,支持合并、去重、超时(调用 5s / 命令 25s)、取消;不允许无限循环写入、不允许后台疯狂发送硬件命令。
- 退出恢复:退出时自动「风扇交还固件 + 恢复启动时模式」,失败会写入日志。
- 禁止虚假成功:
Confirmed(固件回读确认)与Unverified(仅命令被接受)严格区分并如实展示。 - 只读降级:无权限或接口不可用时自动进入只读监控模式,监控功能照常。
- 请勿在陌生环境下运行实机控制测试(
diagnostic.bat test会真实写入硬件)。
本项目使用 MIT License,详见 LICENSE。
- 使用 GitHub Issues 提交 bug、功能建议与兼容性反馈。
- 反馈时请尽量提供:机型、BIOS 版本、是否管理员运行、
logs\下相关日志、diagnostic.bat scan的只读诊断报告。
- 本项目为个人开源项目,与 Dell Inc. / Alienware 无任何关联,未获得 Dell 官方认可或支持。
- 风扇控制、性能模式、G 模式等会真实改变硬件状态;不恰当的使用可能导致过热、降频或其他异常。使用本项目即表示您了解并自行承担风险。
- 本项目主要针对 Dell G15 5530 开发与测试,不保证在所有机型 / BIOS / 驱动版本下行为一致;键盘背光、RGB、AlienFX、EC、风扇控制、性能模式可能因具体硬件而不同。
- 本软件按「原样」提供,不提供任何明示或暗示的担保;因使用本软件造成的任何损失,作者不承担责任。
- 部分硬件接口协议(AWCC WMI、AW-ELC 等)为社区逆向分析成果,可能随固件更新而变化。