Windows-GPU-UNLOCK
RTX3090 UEFI 포트, 한국어 무리셋 윈도우 부팅 가이드, 검증된 소스와 벤치마크 제공
HP OMEN·Victus 노트북용 팬 커브·성능 모드·다중 RGB·모니터링, 무료·오픈소스·로컬 우선·텔레메트리 없음
Fan curves, performance modes, multi-brand RGB, and monitoring for HP OMEN & Victus laptops — free, open-source, local-first, no telemetry.
기타C# · PowerShellGitHub @theantipopau온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
OmenCore is an Advanced Performance Control for HP Omen Laptops Take full control of your gaming laptop with precision fan tuning, RGB management, hardware monitoring, and performance optimization.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Lightweight local control for HP OMEN and Victus gaming laptops OmenCore is an independent control center for HP OMEN and Victus systems. It focuses on the local workflows people actually use in OMEN Gaming Hub: fan control, performance profiles, telemetry, keyboard lighting, OSD, power tools, diagnostics, and safe cleanup of HP background software. It runs without ads, account prompts, cloud telemetry, or OMEN Gaming Hub. Hardware access is handled through local WMI BIOS, EC, PawnIO, Linux sysfs, and platform backends when the device exposes them. [README 설치·사용 부분 발췌] Quick StartREADME 전문 보기 ↗
OmenCore is an independent control center for HP OMEN and Victus systems. It focuses on the local workflows people actually use in OMEN Gaming Hub: fan control, performance profiles, telemetry, keyboard lighting, OSD, power tools, diagnostics, and safe cleanup of HP background software.
It runs without ads, account prompts, cloud telemetry, or OMEN Gaming Hub. Hardware access is handled through local WMI BIOS, EC, PawnIO, Linux sysfs, and platform backends when the device exposes them.
| Area | What OmenCore Provides |
|---|---|
| Fan and thermal control | WMI BIOS fan profiles, Max/Auto handoff, custom curves where the model safely supports them |
| Performance profiles | Quiet, Balanced, Performance, custom profile routing, power-policy diagnostics |
| GPU controls | MUX switching and GPU Power Boost on supported OMEN firmware |
| RGB | OMEN keyboard zone lighting plus external RGB provider integration where supported |
| Monitoring | CPU/GPU temperature, load, fan telemetry, health state, history, and core-control diagnostics |
| OSD and tray | Click-through overlay, hotkey toasts, quick popup, live tray status |
| Cleanup | OMEN Gaming Hub and HP bloatware detection/removal helpers |
| Linux | CLI and Avalonia GUI for supported hp-wmi/ec_sys/sysfs paths |
| OmenCore Principle | Result |
|---|---|
| Local first | No sign-in, no ads, no outbound telemetry (details) |
| Safety gated | Unsupported EC/fan/RGB paths stay hidden or diagnostic-only |
| Field driven | Model quirks are tracked by ProductId, BIOS behavior, and logs |
| Fast startup | Hardware polling and heavy providers are deferred where possible |
| Honest capability UI | Requested, confirmed, degraded, and unsupported states are separated |
Version: 4.5.0 Released: 2026-10-24 Status: Test-verified (1980/1980 app tests and 71/71 Linux tests, 0 build warnings). A field-report and model-database release: board entries for 8BC2, 88D1, 8F21, 8F5C and an exact 88ED row, the one-zone keyboard colour layout for 8BD4/8BC2, hotkeys that report when another app holds them, optional Max fan auto-return, AMD power limits that now save when the Tctl write is refused, and square window corners when maximised. Much of it is marked pending until a reporter confirms it on real hardware. Upgrade note: update from inside the app (the update button in the header, or F5). Settings are kept. Release notes: docs/CHANGELOG_v4.5.0.md Roadmap: docs/ROADMAP_v4.5.0.md
SHA256 hashes are computed by the release workflow from the exact files attached to the release and are published in the release notes.
Full detail on every item, and what still needs field confirmation, is in docs/CHANGELOG_v4.5.0.md.
nvidia-power-control and bobshmo's OmenCore-Prophecy, used with their permission. Backs up the registry, reads every write back, rolls back on a mismatch, and on Victus laptops prepares HP performance mode and the fan engine first. Run by its authors, not yet through OmenCore.8D87, where firmware Auto parks the fans at ~3,400/3,600 RPM with the CPU at 92-99 C (#189, research by mbilykov). Runs only in Performance mode with fans on Auto and hands the fans back on any other mode, on diagnostics, on thermal protection and after three failed writes.omencore-cli fan commands share one fan-writer lock; an optional keyboard backlight suspend hook (scripts/linux/omencore-kbd-suspend.sh).8E9F, 8E9A, 8EEC and 8A13; 8E9F and keyboards routed to the per-key backends as a guess.Full detail on every item, and what still needs field confirmation, in docs/CHANGELOG_v4.4.5.md. Third-party code is credited in THIRD-PARTY-NOTICES.md and contributors in CONTRIBUTORS.md.
8C30, 88F8, 8C2D). A firmware count that was actually read now beats an unverified entry that says fewer.8E35, 88F7, 88EE). A stable result at 80% or more of the ceiling, after Max and a direct write have both been tried, now passes.Full detail on every item in docs/CHANGELOG_v4.4.1.md. Contributors are credited in CONTRIBUTORS.md.
Full detail on every item in docs/CHANGELOG_v4.4.0.md.
ConfigurationService handed out a brand-new, detached config object on every load instead of a shared instance, so whichever of several stale in-memory copies saved last silently overwrote every other part's changes. Fixed by making every load converge on one shared, always-current object.build-installer.ps1 now generates a real SHA256 for both Windows artifacts, and the release workflow publishes hashes read back from the exact files it just built — this release's own hash table above is proof it works.SystemDesignData explicitly says it doesn't — narrowly scoped to never second-guess a hand-verified board and never grant a capability a template didn't already claim.Full detail on every item in docs/CHANGELOG_v4.3.1.md.
AccessViolationException in the AMD ADL telemetry path on hybrid AMD+NVIDIA hardware — killed 3 of 4 full test runs before being traced and quarantined the same way the out-of-process hardware worker already protects itself.Full detail on every item in docs/CHANGELOG_v4.3.0.md.
WrapPanel override defeated the VirtualizingStackPanel settings already declared next to it — and the per-game layout was reflowed into a more scannable single-line row.[ ] where the maximize icon should be, then (after a font-glyph fix that tofu'd on a real machine) replaced entirely with drawn vector icons that don't depend on a system font being present. Also fixed the buttons sitting inset with rounded corners instead of flush, square, and full-height like native Windows chrome.Full detail on every item in docs/CHANGELOG_v4.2.0.md.
SupportsEcPowerLimits capability flag now defaults this off everywhere until a model's addresses are field-confirmed. Safety-relevant; no board has ever had these addresses confirmed correct.SetFanMax latch, leaving fans stuck at maximum speed until the app was fully closed (reported on board 8DCD, HP Victus 15 fa2082wm) — WmiFanController.SetPerformanceMode now releases the latch before clearing its tracking flags.8BCA (shared by an Intel and an AMD OMEN 16 SKU) resolved to the wrong CPU vendor's profile, breaking keyboard control (GitHub #163).tempestnano, all merged after individual file-by-file review — board 8D87 support (real fan range/tachometers, adapter awareness), an AMD SMU transport fix, per-key RGB for board 8D87 that also fixed reactive lighting being silently inert for every user on every board, per-LED keyboard lighting extended to every supported board, and an experimental adapter power override that drops GPU/CPU power clamps caused by an under-rated charger (off by default; single-board evidence so far, disclosed and merged on an explicit, informed decision after the review surfaced a real prior crash the fix itself resolves). Also: a fix for the app's own polling keeping a sleeping dGPU awake, and a real BSOD bug in the background hardware-monitoring process (its watchdog could run forever on PID reuse, polling the GPU on battery until Windows killed the machine). Full detail, including the safety framing on the adapter-override feature, in the changelog.Full detail on every item in docs/CHANGELOG_v4.1.7.md.
8A25) — added the model-database entry this exact board was missing, with SupportsGpuPowerBoost = true.ApplyMaxCooling() silently reported success even when the hardware write failed, including in the thermal-critical safety-override path — fans could stay unchanged during a real overheat event while the log and UI both claimed "Max cooling active."SettingsView.xaml accessibility labeling, left at 53/156 controls in an earlier cycle, is now complete (156/156) — closes out the multi-session accessibility pass across all six views.Full detail on every item in docs/CHANGELOG_v4.1.5.md.
8A18 — the "still holding Max?" health check used a floor that was mathematically unreachable on this board's hardware.PowerAutomationService (AC/Battery profile switching) never actually applied real CPU/GPU wattage on 57 of 59 boards in the database — it built a bare zero-watt object instead of routing through the existing, already-safe wattage-aware apply path. This affected every user who enabled the feature, on both AC and Battery transitions, not just the specific "Silent battery profile" report that led to finding it.hardware-info.txt, ec-state.txt, and the Max-mode-ownership fields in core-control-readiness.txt/monitoring-cadence-hold.txt/tuning-fan-focus.txt/wmi-command-history.txt — had never produced real data in any diagnostics export ever generated, on any board, across every version checked. Found by reading real users' exports directly rather than waiting for another report.system-info.txt reported the .NET garbage-collector heap size mislabeled as "RAM" (explains why it read 16-51 MB on a real laptop) — now reports actual installed physical memory.Several fixes above are code-provable from the reporters' own logs but still need their confirmation that the physical/audible behavior matches on real hardware — see Known Limits below. Full detail on every item, including what was traced but deliberately not changed pending field evidence, in docs/CHANGELOG_v4.1.0.md.
MainViewModel fields migrated onto it, and the hardware bring-up sequence (NVAPI/PawnIO/WMI BIOS/capability detection/EC/fan-controller construction) extracted into its own HardwareBringup class as a prerequisite for the rest.PollingScheduler/UiPollingCoordinator and migrated the tray icon, quick popup, and OSD timers onto it — a first cut at consolidating a 27-timer sprawl (corrected from an earlier "21 timers" estimate) across three different timer APIs.MainViewModel — a second, meaningfully-behind copy of SystemControlViewModel's real implementation, bound only to a view that was never in the app's visual tree.AutomationProperties labeling added across Dashboard, Advanced, FanControl, Lighting, and (partially) Settings views — roughly 140 previously-silent controls now announce correctly to screen readers.BiosUpdateService was documented as "the firmware-write path" — it never writes firmware at all, only checks for updates and hands off to HP's own tools. Added 19 tests for the parts that actually matter (version comparison, URL construction).Full detail in docs/CHANGELOG_v4.0.0.md.
CreateProfile()/DuplicateProfile() never persisted.FanController.ResetEcToDefaults() and bridge-temperature reads swallowed exceptions with no diagnostic trail; both now log the failure (no control-behavior change).[CrashTrace] stacks.TabItem.Style was overriding the shared dark template).8C3F, fan-control delay fix) and OMEN 16 (2024) wf1xxx Intel (8C77, V1/V2 profile-mismatch crash fix), a family-fallback profile for HP Victus 15 2025 AMD (), plus an OMEN Transcend 14 () capability alignment.8BCD) caused by a named-pipe desync between the app and its out-of-process hardware worker — concurrent requests could race and consume each other's stale replies, with no reconnect-on-failure.wmi-command-history.txt, hardware-info.txt, and ec-state.txt had been empty placeholders in every diagnostics zip ever exported, regardless of hardware state; bug reports going forward will contain real data.8D40), OMEN 17-ck1xxx (8A18), and OMEN Transcend 14-fb1xxx (8E41).8A18 OMEN 17-ck1xxx: conservative exact capability profile, with V1 fan-level fallback explicitly labeled as an estimate rather than measured RPM, and fan verification evidence kept honest about command-success vs. physical confirmation.LastFanPresetName is missing or stale, without bypassing the startup fan-write safety gate.HpWmiBios heartbeat, the fan countdown-extension reassert loop, and the Razer Chroma heartbeat are now visible in background-timer diagnostics.8D40 OMEN Slim 16-an0xxx: exact conservative identity added (GitHub #145), replacing low-confidence family fallback.Ctrl+Shift+E hotkey cycle, or the General page's quick-profile buttons (GitHub #145) — these paths now persist the choice the same way the System Control page always did.Older release notes (v3.8.0 and earlier) are kept in docs/ rather than summarized here.
v4.5.0 is released and is waiting on field confirmation. It was built from reporters' exports, and anything hardware-facing has run only in software tests until an owner confirms it. The "Needs field confirmation" table in docs/CHANGELOG_v4.5.0.md says exactly what to try on which board. Boards that are only identified (8C4D, 8BB3, 88C8, 8C99, 8BD5) need an export before anything is claimed for them.
v4.4.5 is released. Most of what it adds was built from reporters' exports and from fork and research contributions, and has run only in software tests so far. The "Needs field confirmation" list in docs/CHANGELOG_v4.4.5.md says exactly what to try on which board.
Still open: the 8BD4 single-zone keyboard (#212, waiting on the RGB probe result), the 8E35 AMD power table (#222, needs a PM-table dump), per-key RGB on Linux for the 2025 MAX boards (#179), and the OMEN Transcend 16 (8BB3).
The active work is tracked in:
Prior-release work is kept for historical reference:
The consolidated core-control-readiness.txt diagnostic report (fan backend/readback state, RGB surface/backend state, tuning startup/readback state, monitoring health, next validation actions) introduced in 3.8.0 remains in place, joined in 4.0.0 by the persistent "Model Capabilities" panel on the Diagnostics tab. Several of its fields were confirmed broken and fixed in 4.1.0 — see the changelog.
Release artifacts are published on the GitHub Releases page.
| Artifact | Platform | Recommended For |
|---|---|---|
OmenCoreSetup-4.4.5.exe | Windows | Most users. Installs app and can install PawnIO. |
OmenCore-4.4.5-win-x64.zip | Windows | Portable use, testing, or no installer preference. |
OmenCore-4.4.5-linux-x64.zip | Linux | CLI plus Avalonia GUI, self-contained runtime. |
Final GitHub release notes must include SHA256 hashes for every artifact. The in-app updater requires release hashes before it will install an update.
OmenCoreSetup-4.4.5.exe from Releases.Portable users can download OmenCore-4.4.5-win-x64.zip, extract it to a normal folder, and run OmenCore.exe as Administrator.
See INSTALL.md for the full Windows guide.
VERSION=4.4.5
wget "https://github.com/theantipopau/omencore/releases/download/v${VERSION}/OmenCore-${VERSION}-linux-x64.zip"
mkdir -p OmenCore-linux-x64
unzip "OmenCore-${VERSION}-linux-x64.zip" -d OmenCore-linux-x64
cd OmenCore-linux-x64
chmod +x omencore-cli omencore-gui
sudo ./omencore-cli status
./omencore-gui
Prefer launching the GUI as your normal desktop user. Use sudo for CLI operations that need hardware access.
For bug reports, collect a triage bundle:
./qa/collect-linux-triage.sh
See INSTALL.md and docs/LINUX_INSTALL_GUIDE.md for Linux details.
Note: OMEN Max dedicated HID per-key routing is intentionally conservative until field logs confirm the correct USB PID list and physical keyboard segment mapping.
OmenCore is built for HP OMEN and HP Victus laptops. Desktop OMEN systems are treated conservatively.
| Hardware Class | Support Level | Notes |
|---|---|---|
| OMEN 15/16/17 laptops | Primary | WMI BIOS, fan/profile, telemetry, RGB, power features by model |
| Victus laptops | Supported with gates | Fan/profile/monitoring/backlight; GPU TGP and undervolt often unavailable |
| OMEN Max 16/17 | Active validation | Power/profile identity paths; HID per-key RGB backend needs PID/segment field confirmation |
| OMEN Transcend | Active validation | Profile-based fan and lighting paths vary by ProductId |
| OMEN desktops | Limited | Monitoring/profile/cleanup; fan writes are safety-gated |
| HP Spectre and other HP | Limited | Monitoring and selected WMI paths only |
| Non-HP systems | Unsupported | Monitoring-only behavior may work, control features are not targeted |
Model support is keyed by ProductId where possible. Diagnostic exports include a model identity summary so unsupported or inferred profiles can be fixed without guesswork.
hp-wmi, ec_sys, or compatible hwmon/sysfs interfaces.Windows fan control normally follows this order:
Linux control normally follows available sysfs/hwmon capability:
hp-wmi / platform profile.hp-wmi hwmon PWM and fan input paths.ec_sys for older models.New this cycle (4.4.0):
8D87) GPU power unlock is not enabled. The code exists, but pre-release review found its EC write path unproven on real hardware, so it refuses to run and is hidden. Until then the GPU on that board stays at the firmware's 80-105 W instead of 175 W unless OMEN Gaming Hub is holding it open.8D87 and 8BA9) — OmenCore's Auto mode hands fans to the firmware and doesn't steer them. 4.4.5 adds an opt-in factory curve for 8D87 only (Settings > Startup Hardware Restore), not yet confirmed on that hardware. Use a custom curve or a Performance/Gaming preset for heavy workloads; #189 tracks an opt-in automatic curve.0x23) means what this codebase assumes for its sensor-index parameter is still unconfirmed. Diagnostics exports now capture all four indices to settle it from real data.8BD4, #212) — the write is accepted but nothing changes. Still open in 4.4.5: the 4.4.1 zone-count change reaches the hardware but the keyboard stays dark; 4.4.5 adds an RGB payload probe to find the right layout.Carried forward from 4.1.7-4.3.1 (untouched by 4.4.0's work unless noted — all still gated on field evidence):
8A18, 8A25, 8D41), the Max-mode health check reads a genuinely-applied Max hold as "unhealthy" and re-sends the Max command roughly every 20 seconds for as long as Max Fan Mode stays engaged. 8E10 was also on this list; its MaxFanLevel database value is corrected in 4.3.0 to the field-confirmed real ceiling (was a nominal, too-high value that would have made its own floor check unwinnable), which should resolve this board's instance of the loop specifically — the underlying architectural bug for any other board with the same real-vs-nominal mismatch is unchanged. A full multi-day log from board 8E10 (OMEN 17-db1xxx) confirms this runs continuously rather than as a one-off, and that reporter separately described near-constant in-game stutter. That connection is plausible but not proven — no single once-per-second write was found in the log; what is confirmed is real, overlapping EC/WMI hardware I/O for the whole session. Workaround: use a custom fan curve or the Performance/Gaming preset instead of literal Max Fan Mode while gaming — those use a different reapply path that has no floor health check and no such loop. The underlying bug is deliberately unfixed: it needs a board-relative redesign across two separate code paths, and the one narrower mitigation considered (backing off after repeated identical readings) was rejected because it cannot be distinguished from a genuinely-reverting fan without risking under-cooling a different board.evidence: None for the 100% test on these boards even when the fans audibly ramp — a false negative in reporting only, not a fan-control failure.omencore-gui) fan control on pwm_enable-only boards is fixed in this release but confirmed only by code review and a clean build — there is no automated test project for either Linux target and no Linux/OMEN hardware in the development environment. The reporter on board 8BCA (OMEN 16-xf0xxx), whose report came with a real overheat/shutdown incident, still needs to confirm fans actually respond now.hp_omen:: brightness fix are likewise additive-and-build-verified only, not confirmed on a board that exposes those interfaces.84DB (OMEN 15-dc0xxx) EC 0xEC fan boost is documentation only, contributed and measured by a community member — OmenCore's own board detection does not act on it.Carried forward from 4.1.0 — code-provable from real logs, still needing field confirmation on the reporters' actual hardware:
8A18 OMEN 17-ck1xxx: the fan-reassert-loop fix (GitHub #153) is code-complete and test-verified, and the logic bug is provable from the reporter's log alone — but only they can confirm the audible/physical repeated-re-assertion behavior actually stops.8D87/AK0003NR OMEN Max 16 (AMD): the CPU-power-ceiling root cause is traced and a one-line fix identified (AllowDecoupledWmiThermalPolicyFallback = true), but deliberately not applied — it's a genuine hardware-behavior change on UserVerified = false boards and needs a reporter to confirm it actually raises CPU package power with no adverse thermal/fan/stability effects first.8C2F Victus 15/16 (shared board ID): the naming/metadata fix is safe and applied, but whether the 16" chassis's capability assumptions (fan/RGB/thermal behavior) actually hold on the 15" chassis is still unconfirmed.8A25 HP Victus 16-d1176TX: SupportsGpuPowerBoost was flipped to true in 4.1.5 after three consecutive versions of consistent reports — an owner judgment call, not a session log with explicit before/after wattage figures. Still needs a reporter to confirm the RTX 3060 actually reaches 100W boost through OmenCore's own code path, not just OGH.8D41 board keyboard zones 4-7 (Darfon HID controller): the light-bar zones (0-3) are fixed via the correct Linux sysfs path; the keyboard zones still need the reporter's offered USB HID feature-report capture before a backend can be written.Carried forward from 4.0.0 / 3.9.0 (untouched by this cycle's work):
8C77 OMEN 16 (2024) wf1xxx Intel: the V1/V2 profile-mismatch fix is code-complete and test-verified but not yet confirmed on the reporter's physical hardware.8BCD OMEN 16 xd0010AX: four fan-behavior reports (Balanced-switch oscillation, Quiet RPM floor, Quiet thermal ceiling, ramp-down stepping) are evidence-gated — no fan/thermal code was changed without physical-hardware evidence, per project safety policy.8BCD), the fan-stuck-at-max/failed-standby fix (88D2), and the Power Automation/Optimizer fixes (8D41) from v3.8.2 remain code-complete and test-verified in this environment but not yet confirmed on the reporters' physical hardware — see Release Conditions in docs/CHANGELOG_v3.8.2.md.8DCD Victus 15 fan-speed collapse under sustained load (GitHub #143) is still under investigation and treated as thermal-safety critical until disproven; 4.1.0 added a diagnostic-only warning for sustained high-temp/low-RPM readings so the next reproduction's log carries unambiguous evidence, but the root cause itself is unresolved.8D26 OMEN 16-ap0xxx dedicated key and Fn+P event routing (GitHub #141) needs shipped-artifact and physical-hardware confirmation.8E41 OMEN Transcend 14 idle-load thermal-emergency reports are under investigation; current evidence leans toward real (brief) thermal excursions rather than a sensor glitch, but the zero-debounce safety response itself is deliberately unchanged either way.8574 legacy OMEN 15 support is partial until fresh diagnostics confirm effective fan command readback.New this cycle (4.4.0), needing real-hardware confirmation:
8C2F, 8BB1, 88F8, 8EDC, 8C30, 8C9C, 8BA9, 8D87) — fixed from captured firmware bytes and logs; a Guided Fan Verification run on 4.4.0 confirms each.8E35 Performance mode (#195) — the WMI policy fallback is on; a before/after CPU power reading confirms it actually moves power.8A26, 8E5E).Carried forward from 4.3.0, needing real-hardware confirmation this environment can't provide:
status/fan/performance/keyboard/monitor/daemon --profile) — command parsing and non-hardware paths are verified for real, but nothing has run elevated against actual hardware yet.8E10's corrected MaxFanLevel (see Known Limits above) — needs confirmation the reassert loop is actually gone on this board now, not just mathematically resolved.Carried forward from 4.2.0, from real-hardware portable-build testing:
Carried forward from 4.1.7 (still awaiting confirmation):
8BCA (OMEN 16-xf0xxx, Linux): confirm omencore-gui now actually drives the fans after the pwm_enable fallback fix — this board previously had completely non-functional GUI fan control, reported alongside a real overheat/shutdown incident.hp-wmi/rgb_zones/, hp-wmi/keyboardleds, or hp_omen::kbd_backlight: confirm keyboard RGB (and brightness, for the hp_omen:: variant) now applies.8A18, 8A25, 8E10, 8D41: a session log capturing fan level readback during a sustained Max hold, ideally with independent RPM evidence, so the Max-level-floor redesign can be scoped against real board-relative numbers instead of guessed.8E10 (OMEN 17-db1xxx): confirm whether the in-game stutter changes when using a custom fan curve or the Gaming preset instead of Max Fan Mode — this would help establish whether the re-assert loop is actually a contributor.Carried forward from 4.1.0:
8A18 OMEN 17-ck1xxx: confirm fans no longer repeatedly re-assert to Max after a thermal emergency clears (GitHub #153) — the log-provable loop is fixed, only the audible/physical behavior needs confirming.8D87/AK0003NR OMEN Max 16 (AMD): test a build with AllowDecoupledWmiThermalPolicyFallback flipped and confirm CPU package power actually rises toward 105W with no adverse thermal/fan/stability effects before it's merged.8C2F Victus 15/16: confirm fan/RGB/thermal behavior on the 15" chassis actually matches the assumptions inferred from the 16" report.8A25 HP Victus 16-d1176TX: confirm GPU Power Boost actually reaches 100W through OmenCore now that the capability flag is flipped in 4.1.5 (owner call after three consistent reports, not a session-log confirmation).Carried forward from 4.0.0 / 3.9.0:
8C77 OMEN 16 (2024) wf1xxx Intel: confirm the direct model entry and V1 fan-control path resolve the FileNotFoundException crash on the Custom Fan Curve tab.8BCD OMEN 16-xd0010AX: per-poll EC register dump during Balanced-switch fan oscillation; RPM vs. EC register snapshot for the Quiet RPM floor; WMI ThermalPolicy + per-zone temp log at the Quiet thermal ceiling; 100ms-resolution RPM log during ramp-down.8BCD OMEN 16-xd0010ax: confirm the named-pipe hang fix actually stops the Application Hang on the original reporter's hardware.88D2 OMEN 15-en1xxx: confirm the Max-mode keepalive fix lets lid-close suspend cleanly with no BIOS thermal shutdown.8D41 OMEN MAX 16 ah0500na: RGB light-bar-vs-keyboard routing and battery-preset-name substitution still need a session log (Power Automation boot-apply itself is now confirmed fixed at the code level).8D40 OMEN Slim 16-an0xxx: exact identity validation, plus Battery Care (Charge Limit) WMI evidence — now collectible via the fixed diagnostics export.8DCD Victus 15: bounded, abortable load test confirming Performance mode no longer drops below 2000 RPM above 80C — the next attempt will carry unambiguous evidence from 4.1.0's new diagnostic warning either way.8D26 OMEN 16-ap0xxx: Fn+F2 never-intercept behavior and dedicated OMEN-key/Fn+P event path on physical hardware.8E9A HyperX OMEN MAX 16t-ah100: exact conservative identity pending full diagnostic evidence.8E41 OMEN Transcend 14-fb1xxx: diagnostics-zip-level raw per-poll temperature evidence for the idle thermal-emergency reports.8D87 OMEN Max: WMI-only Max fan hold, Restore OEM Auto, and HID per-key RGB PID confirmation.8BD4 Victus 16: conservative WMI V1 Auto/Max handoff and WMI ColorTable RGB confirmation.8C30 Victus 15-fb1xxx: Quiet/Balanced/Performance WMI policy routing and wattage/RPM readback validation.878C OMEN 15-ek0xxx: Quick Profile fan wake/ramp validation after exact WMI fallback routing.8600 OMEN 15-dh0xxx: PawnIO install/reboot telemetry recovery plus Quiet/Balanced/Performance/Auto/Max fan-mode validation.88EE Victus 16-e0194nw: exact ProductId identity confirmation plus fan/RGB/readback evidence before enabling capabilities beyond conservative routing.8BCD Linux: degraded WMI/ACPI reporting with effective fan/RGB/battery readback before claiming full control.git clone https://github.com/theantipopau/omencore.git
cd omencore
dotnet restore OmenCore.sln
dotnet build OmenCore.sln --configuration Release
dotnet test OmenCore.sln
What "N/N tests passing" actually means: the suite is a real xUnit test project (src/OmenCoreApp.Tests, 1861+ tests as of v4.4.5) that runs in CI on every push (.github/workflows/ci.yml) and locally before every release. It exercises hardware-abstraction logic in isolation — capability-database resolution (which model resolves to which ProductId/ModelNamePattern entry), fan-curve and safety-clamp math, the diagnostics-export pipeline, view-model state transitions, and regression tests pinned to specific field-reported bugs (reflection-driven against private methods/fields where the codebase's existing pattern calls for it, real mock SDK interfaces like ICorsairSdkProvider where one exists). What it does not do: verify that a given real board's EC/WMI actually responds the way the code assumes — that's a structurally different problem no unit test can cover, which is why this project has a separate, explicit "evidence-gate" convention (see the roadmap and changelogs) requiring field confirmation from real hardware before shipping any fan/thermal/OC/UV behavior change, independent of what the test suite says. A green test suite means the logic is provably self-consistent and regression-free; it is not a substitute for a real user confirming a fix works on their actual laptop, and this project's own docs never claim otherwise.
pwsh ./build-installer.ps1
Expected outputs:
artifacts/OmenCoreSetup-4.4.5.exe and artifacts/OmenCoreSetup-4.4.5.exe.sha256artifacts/OmenCore-4.4.5-win-x64.zip and artifacts/OmenCore-4.4.5-win-x64.zip.sha256pwsh ./build-linux-package.ps1
Expected outputs:
artifacts/OmenCore-4.4.5-linux-x64.zipartifacts/OmenCore-4.4.5-linux-x64.zip.sha256artifacts/version.jsonartifacts/linux-version-verification-4.4.5-linux-x64.jsonBefore publishing a stable GitHub release:
VERSION.txt, project versions, installer version, README, and INSTALL all match.dotnet restore, Release build, test suite, and git diff --check.| Symptom | First Thing To Check |
|---|---|
| Fan control has no effect | Model capability summary and fan command history in diagnostics |
| Fans stay elevated | Use Restore OEM Auto, then export diagnostics with core-control-readiness.txt |
| GPU Power Boost changes but wattage does not | Firmware/backend support and FurMark/telemetry readback |
| PawnIO unavailable | Keep PawnIO selected in the installer, reboot, and run as Administrator |
PawnIO setup asks for -install or -uninstall | Use v3.8.0+ installer builds; standalone fallback is PawnIO_setup.exe -install from an elevated terminal |
| Undervolt hidden | Model or BIOS may block MSR undervolt; check tuning readiness and startup recovery state |
| RGB turns off or does not restore | Check active keyboard backend, target surface, accepted/unverified status, and conflicting HP lighting tools |
| Battery Care (Charge Limit) fails | Confirm AC power is connected; compare against OMEN Gaming Hub; export wmi-command-history.txt and BIOS version |
| Performance profile reverts to Balanced after relaunch | Fixed in 3.8.1 for tray/hotkey/General quick-profile changes (GitHub #145); if still seen, note which entry point you used |
| OSD not visible in a game | Fixed in 3.9.0 for borderless/windowed-fullscreen (overlay now re-asserts topmost every second); true DXGI exclusive fullscreen still cannot show any overlay window — switch the game to borderless/windowed-fullscreen mode |
| Linux permission denied | Run CLI command with sudo |
Windows logs are stored under %LOCALAPPDATA%\OmenCore\. Linux diagnostics can be collected with sudo ./omencore-cli diagnose --report.
| Version | Summary |
|---|---|
| 4.4.5 | Feature and field-report release: opt-in NVIDIA laptop GPU power unlock (from timmyy123 and bobshmo, with permission), opt-in factory fan curve for the OMEN MAX 16 8D87 (#189), reversible HP telemetry switch, OMEN key actions and program launch, faster fan response to a temperature spike (#222), stale saved Fan Max fixed, auto-hidden taskbar fix, cheaper GPU load polling, Linux single-fan-writer lock, RGB payload probe for 8BD4 (#212), and new entries for 8E9F, 8E9A, 8EEC and 8A13. Much of it is pending hardware confirmation. |
| 4.4.1 | Field-report follow-up to 4.4.0 and the first release delivered by the repaired updater: fans no longer left at full speed after the fan test or fan cleaning, two-fan boards no longer cut to one, the firmware's own Max ceiling accepted by the 100% step, backlight-only keyboards no longer offered colour controls, a cleaner Tuning page with crash-safe test rollback, evidence for unexpected exits, RAM-optimizer and cleaner fixes, Linux CPU-sensor ranking and DKMS four-zone keyboard support, experimental Primax per-key colour, and exact entries for 8BBE, 88F8, 88F7, 8C2D and 878A. |
| 4.4.0 | Fix release for 4.3.1 (no separate 4.3.2): three 4.3.1 regressions fixed — fan control disabled on older-firmware boards, a false "monitoring frozen" failsafe forcing fans to 90% every ~2 minutes, and a monitor loop that couldn't be woken — plus a hardware-worker crash on USB drive hotplug, a background worker that failed to start on installed builds, WMI game-detection overhead cut from ~14% to ~2.6% of a core, ignored-Max and quick-exit Max fixes, docked refresh-rate targeting, and hotkey/game-exit fixes. Community PRs #176 (8D87 keyboard, AMD power limits) and #196 (diagnostics) merged. New/corrected entries for 8CC0, 8DD0, 88ED, 8E35, 8BB1. In-app updater fixed. 53 stale issues closed. 1635/1635 tests. |
| 4.3.1 | Patch release grown into a broader maintenance cycle: a real, provable config-persistence data-loss bug where several disconnected in-memory config copies silently clobbered each other's saves (#191); a broken auto-updater SHA256 check that had been matching nothing since the release-notes hash-table format changed (#192); the release-process bug behind it, where past release-notes hashes were hand-copied from a local build instead of the CI-published one (#194, this release's own hashes prove the fix); an OMEN-key WMI event bug on boards where the keyboard hook never sees the physical key (#193); two rounds of cross-project review against a similar tool ("Ohman") producing a GPU-idle-polling backoff and a firmware-aware fix for unverified boards' fan-control assumptions; further / decomposition; three board database entries. 1455/1455 tests. |
Older release notes live in docs/.
Useful contributions include fresh diagnostic exports, model ProductId verification, EC/WMI behavior reports, Linux sysfs snapshots, translations, and focused bug fixes. Please include logs and the model identity summary when filing hardware-control issues.
People whose code, research and testing are in the project are credited in CONTRIBUTORS.md.
If Diagnostics reports Unknown <Family> Model or "Resolution source: Family fallback / Low confidence" (as opposed to an exact ProductId match), your laptop works through conservative generic defaults rather than a model-specific profile. To get it added:
Capability ProductId, Baseboard ProductId, WMI model, System SKU / HP support product number, and the keyboard identity lines.8D40, 8A18, 8E9A).OmenCore is provided as-is. Fan control, EC writes, undervolting, GPU power changes, and MUX switching can affect stability and hardware behavior. Use restore points, read capability warnings, and avoid enabling unverified hardware restore paths unless you understand the recovery steps.
OmenCore is not made by or endorsed by HP.
MIT License. See LICENSE.
Third-party components include LibreHardwareMonitor, Hardcodet.NotifyIcon.Wpf, PawnIO, and vendor RGB SDK files where bundled. See the relevant source folders and driver documentation for details.
8E9Athermal.cpu_sensorhp-wmi8BBE, 88F8, 88F7, 8C2D and 878A; keyboard entries for 8BA9, 88F7 and 8DD0; 8DD0 and 8C30 corrected to two fans; 8E35 Performance mode confirmed at the firmware by PM-table readback (#195).8D87) per-key keyboard brightness that actually works, a staged Fn+1/Fn+2 effect cycle, and a Windows Dynamic Lighting notice; AMD power limits written as a set of four and read back from the SMU; the iGPU undervolt slider hidden on CPUs that refuse every write.8CC0, 8DD0 and 88ED; 8E35 Performance mode now uses the WMI policy fallback after a controlled 0.0 W test showed it did nothing (#195); Victus 15 8BB1 no longer claims to be a 2022 model (#202).8D87) GPU power unlock is written but switched off — pre-release review found its EC write path unproven on real hardware.8BAD was displaying as "OMEN 15" on a real 17" laptop, fixed; board 8C9C gets a real, field-confirmed database entry (two Guided Fan Verification runs, 84-88/100) instead of generic family fallback; board 8E35's notes corrected to flag a CPU-identity conflict between two independent reports instead of asserting either one.MainViewModel (6,275 → 4,665 lines, -26%) and SystemControlViewModel (5,610 → 5,290 lines) both decomposed further — UpdateViewModel, GpuClampViewModel, and SystemMaintenanceViewModel extracted, plus dead-code deletion. Pure structural refactors, no fan/EC/thermal/undervolt/GPU-OC write path touched.hpqBEvnt schemas; the existing client-side validation already made a broader subscription safe.88EC (HP Victus 16-e0xxx) performance-mode switches did nothing at all — missing the same one-flag WMI-fallback fix already shipped for four sibling boards (#128 follow-up).OmenCore.Core — the hardware/service layer (194 files) extracted out of the WPF application into its own class library, unblocking a Windows CLI, a future local HTTP/named-pipe API, and headless operation.omencore-cli) — status, fan, performance, keyboard, monitor, config, and foreground daemon commands built directly on OmenCore.Core, no duplicated hardware logic.8E10, 8D26, 8E5E, 8603, 8BA9, and updated notes for 88D2 — all from real field reports, one (8E10's MaxFanLevel) a self-caught correction before it shipped, documented in full in the roadmap.omen-rgb-keyboard DKMS driver, and fixed a fan-control warning that pointed users at a workaround that does nothing on boards where Max Fan is actually the working override.omen-rgb-keyboard) reviewed for adaptable ideas — none of their code copied, since OmenCore is MIT and two of the three are GPLv3.docs/TUNING-SUBSYSTEMS-REVIEW.md) found and fixed several places where the app reported something as applied when it wasn't or discarded a safety signal by defaulting it to a value indistinguishable from a real reading — all fixes here are reporting/consolidation only, no tuning behavior changed on the wire.omencore-gui) never actually controlled fans on boards that expose only a coarse pwm_enable toggle rather than a writable duty file — every fan request silently did nothing. Reported alongside a real overheat/shutdown incident on board 8BCA (OMEN 16-xf0xxx). The CLI (omencore-cli) already had the correct fallback; the GUI never did, because the two Linux targets carry entirely separate hardware implementations. The fallback is now ported into the GUI (GitHub #174 + Discord report).hp-wmi/rgb_zones/zone00-zone03, hp-wmi/keyboardleds, hp_omen::kbd_backlight/zone_colors) in both Linux targets, found by researching the projects raised in GitHub #175. The same pass fixed keyboard brightness control on boards exposing only the hp_omen:: LED class name — both targets previously checked only hp::.murilopontes) — documented Linux fan boost via EC offset 0xEC for board 84DB (OMEN 15-dc0xxx), where stock hp-wmi pwm1_enable=0 fails with EINVAL, with measured RPM data.fb3xxx8C588C30, 88F8, 8C2D). Fixed in 4.4.1.fourzone_color / fourzone_brightness) is untested on real hardware; the wire format is unit-tested.romOverride value (MAX, restart needed) and calls an internal driver function (CURRENT, resets on reboot). The automatic VBIOS read needs an nvflash64.exe you supply, or a ROM file. Do not use it on a machine you cannot reboot.8E9F, 8E9A and 8A13 are unverified board entries. The 8E9F and 8E9A per-key keyboard routes are guesses from a sibling board, and none of the three reports real fan RPM (it is estimated from the fan level).8C9C's database entry has real field confirmation for fan control only — GPU Power Boost, undervolt, and RGB stay conservative.MainViewModelSystemControlViewModel| 4.3.0 | Feature release, started as a v4.2.1 patch cycle for five field reports (#178-182) and grew into extracting OmenCore.Core (194 files) out of the WPF app plus a first Windows CLI slice. Two safety bugs fixed: the Quiet Safety Monitor's power-mode-retained guarantee was undone by Fan/Performance linking on a transient thermal spike (#181); Linux Max→Auto under load could leave both fans dead and cause a real thermal shutdown on a board with degraded ACPI (#183). Also fixed: a hybrid AMD+NVIDIA AccessViolationException crashing 3 of 4 test runs; Power Automation silently overwriting manual profile choices on every startup; built-in RGB scenes silently overriding manual lighting on an undiscoverable schedule; model-capability fallback logic defaulting to optimistic instead of conservative (#182); Linux NVML GPU telemetry (#186) and OMEN-key WMI watcher (#187) fixes; four more automation trigger types promoted plus a new lid-close trigger; new/corrected model-database entries for six boards; 10 old GitHub issues closed. 1414/1414 tests. |
| 4.2.0 | Minor release, three pillars: CPU temperature could latch onto a chassis sensor instead of the real CPU zone on multi-zone boards, now unit-tested and re-evaluated every poll (fan-control-affecting, not just display); navigation moved from a horizontal tab strip to a vertical rail, redesigned three more times after real-hardware feedback (sidebar merge, Quick Actions relocated, colored group separators, auto-fit scaling); AMD CPU undervolt status stopped claiming a hardware "readback" the SMU path doesn't have; two RGB detection false positives fixed (a false "OMEN Keyboard" badge on non-HP hardware, iCUE not detected due to a stale process-name check); Games tab virtualization fix; Tuning tab accessibility labeling completed; fan curve share codes; Roboto Condensed font consolidation (the actual font switch was attempted, found non-deterministic in testing, and reverted); five GitHub issues triaged and three community projects reviewed. 1367/1367 tests. |
| 4.1.7 | Patch release (v4.1.6 never tagged/released, rolled forward): unconfirmed EC power-limit register writes now blocked by default (safety-relevant, GitHub #159); fans stuck at maximum after switching Performance Mode away from an active Max fan hold now correctly release the BIOS latch (board 8DCD); GPU Power Boost EC fallback no longer falsely claims "Extended" applied; locale-dependent number formatting fixed at the source; Spotify bloatware false-positive and board 8BCA AMD/Intel misidentification fixed (GitHub #163); a guided fan-diagnostic RPM display bug fixed from a community member's own logs; sixteen community-contributed PRs/branches reviewed and merged (tempestnano) — board 8D87 support, a gated AMD SMU transport fix, a sleeping-dGPU polling fix, per-key and per-LED RGB for every supported board that also fixed reactive lighting being inert for every user, an experimental adapter-power-override feature (explicitly disclosed, off by default), and several process-lifecycle fixes including a real BSOD incident; three UI-responsiveness passes for a standing "laggy UI" complaint; a CPU-family misidentification fix (GitHub #171); a new RAM Smart Clean feature (GitHub #173); a model-identity fix preventing a name-pattern fallback from crossing CPU vendor lines (GitHub #172); a tuning-subsystems honesty/consolidation pass covering GPU Power Boost, GPU OC/UV, and CPU OC/UV. 1288/1288 tests. |
| 4.1.5 | Patch release: GPU Power Boost enabled on Victus board 8A25, a locked fan-curve tooltip reworded to stop implying it's about verification status, ApplyMaxCooling() fixed to stop reporting success when the hardware write actually failed (including in the thermal-critical safety-override path), matching silent-write-failure bugs fixed in Razer and Corsair RGB, a MainWindow banner conflating "unsupported" with "unverified" split into two correctly-gated banners, and SettingsView.xaml accessibility labeling completed (156/156 controls). 1000/1000 tests. |
| 4.1.0 | Minor release: field-report fixes for five GitHub issues/two Discord threads (telemetry-mismatch, freeze-heuristic false positive, Max-fan reassert loop, dead GPU-Power-Boost capability flag, board-naming ambiguity, Linux RGB sysfs path), a systemic Power Automation wattage bug found via an older-docs sweep, and four more bugs found by reading real users' diagnostics exports/logs directly (three broken diagnostics collectors never producing real data, a Logitech HID++ fallback silently failing while claiming success, a CPU-thermal-authority selector flip-flopping ~192 times in one session). 990/990 tests. |
| 4.0.0 | Major release: sustainability/architecture cycle, not features-first — DI composition root started (19/~40 MainViewModel fields migrated), shared polling coordinator, community model-database contribution pipeline, persistent "Model Capabilities" diagnostics panel, accessibility labeling pass (~140 controls across 5 views), game-profile window-title disambiguation + WMI event-based detection + multi-game restore, dead-code removal, safety-gate string-match audit fix. No fan/thermal/EC control behavior changed. |
| 3.9.0 | Minor release: non-functional OMEN key action fix, game-profile-loss-on-crash fix, silent EC-failure logging, crash stack traces, GPU Power Boost/profile linkage, Custom tab theme fix, OSD stale-default fix, AutomationService idle/battery bugs, HardwareWorker update-kill-loop fix, 8C3F/8C77 model additions |
| 3.8.2 | Patch release: critical Application Hang fix (#BUG-3820-001), fans-stuck-at-max/failed-standby fix (#146), Power Automation boot-apply fix, diagnostics-export wiring fix (#145 evidence gap), Optimizer verification fix, fan-monitor-loop shutdown-race fix |
| 3.8.1 | Patch release: GitHub #141-#145 follow-up, fan-telemetry truthfulness, saved Custom curve fix, GPU OC startup-reapply clarity, OMEN-key field diagnostics, performance-profile relaunch persistence fix |
| 3.8.0 | Release candidate: field fixes, fan/RGB/tuning readiness diagnostics, UI responsiveness, model-specific validation |
| 3.7.1 | Quick Access profiles, WMI V1 fan recovery, profile-only fan gating, AMD ADL containment, launch diagnostics |
| 3.7.0 | Runtime recovery, fan/profile authority, OMEN Max identity, Linux diagnose improvements |
| 3.6.3 | Desktop fan-write safety, conservative WMI fan handoff, OSD startup hardening |
| 3.6.2 | Runtime source-of-truth hardening, RGB fallback reliability, Linux diagnostics |
| 3.6.1 | Fan/performance sync, tray/OSD consistency, WMI fan CPU reduction |
| 3.6.0 | Lightweight runtime, hardware-worker reliability, fan/RGB/hotkey hardening |
| 3.5.0 | Diagnostics clarity, safer tuning flow, conflict and recovery guardrails |