Skip to content

Releases: AtvouzX/nitrous_fork

v0.9.1

Choose a tag to compare

@github-actions github-actions released this 08 Oct 08:51

Full Changelog: v0.9.0...v0.9.1

v0.9.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 08:13

Nitrous v0.9.0

Features & Improvements

  • Power-Profile Fan Curves: Added power-profile-specific custom fan curve management, allowing independent curve tuning and profile presets for Quiet, Balanced, Performance, and Turbo modes.
  • Enhanced Fan Curve Editor: Revamped interactive waypoint fan curve window with live profile switching, manual curve presets, and responsive RPM telemetry preview.
  • Acer Service Debloater: Added integrated management to detect, disable, and restore background Acer OEM telemetry and updater services directly from the dashboard.
  • UI & Theme Overhaul
  • Live Battery Wattage Telemetry: Real-time charge and discharge wattage readouts via WMI battery telemetry.

Battery & Hardware Preservation

  • In-Process Power Management: Replaced external powercfg.exe process spawning with native Win32 powrprof.dll API calls for instantaneous, zero-overhead dual AC/DC processor power state configuration.

Performance & Optimization

  • Dashboard Startup & Telemetry Optimization: Eliminated dashboard launch latency and reduced memory overhead through optimized telemetry polling loops and aggressive transient working set trimming.

Bug Fixes & Stability

  • Battery Telemetry Fallback: Resolved battery detection failures on Acer laptops by migrating hardware queries from DeviceIoControl to standard WMI interfaces.
  • UI Layout & Binding Fixes: Fixed broken header data bindings and layout clipping on high-DPI displays.

Full Changelog: v0.8.11...v0.9.0

v0.8.11

Choose a tag to compare

@github-actions github-actions released this 06 Oct 08:41

Nitrous v0.8.11

Features & Improvements

  • Real-time Telemetry Graphs: Added real-time CPU & GPU usage and temperature graphs to the dashboard.

Battery & Hardware Preservation

  • Prevent Unintended GPU Wake: Nitrous now checks active GPU processes and unloads NVML/NvAPI if it is the only application active, allowing the dGPU to return to D3Cold sleep.
  • Reliable GPU Sleep Detection: Switched power state detection to native Windows CM APIs (CM_Get_DevNode_Property) to avoid waking the dGPU during telemetry polling.

Bug Fixes & Stability

  • Decoupled Telemetry Polling: Fixed GPU usage incorrectly displaying --% while the GPU was awake with Deep Telemetry disabled.

Full Changelog: v0.8.5...v0.8.11

v0.8.5

Choose a tag to compare

@github-actions github-actions released this 04 Oct 16:55

Nitrous v0.8.5

What's New

  • Dashboard Synchronization: The Dashboard UI now instantly updates when you change a setting (like Fan or Power profiles) from the System Tray or via keyboard hotkeys.
  • Bug Fixing

Full Changelog: v0.8.0...v0.8.5

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 21:22

Nitrous v0.8.0

What's New

  • Physical Nitro Button Integration: Full support for the dedicated laptop Nitro key across all 8 generations of Acer Sense software (PSLauncher.exe, NSLauncher.exe, NitroSense.exe, etc.) via IFEO registry redirection.
  • Reliable Window Activation: Single-instance Named Mutex & Event architecture ensures pressing or releasing the Nitro key smoothly brings the dashboard to the front without premature minimization or duplicate processes.
  • CPU Power Management & Boost Suppression: Simultaneous dual AC/DC power tuning (/setacvalueindex & /setdcvalueindex) with Turbo Boost disabled on Quiet/Balanced profiles to eliminate thermal spikes and fan revving on Intel Core and AMD Ryzen laptops.
  • Zero-Process GPU Telemetry: Replaced nvidia-smi.exe process spawning with direct nvml.dll P/Invoke calls, reducing CPU/disk overhead to 0% during telemetry while strictly preserving discrete GPU D3Cold sleep on battery.
  • Global Hotkeys & On-Screen Display (OSD): Added customizable hotkeys for cycling power modes with a lightweight, color-coded on-screen badge.
  • 100% UI Tooltip Transparency: Every interactive button, slider, toggle, and clock offset input now features dark-themed tooltips explaining underlying hardware registers, processor state percentages, and boost policies.
  • Security Hardening: Enforced System32 search paths across all native P/Invoke declarations (psapi.dll, user32.dll, kernel32.dll) and double-quoted all registry executable paths.

Full Changelog: v0.7.5...v0.8.0

v0.7.5

Choose a tag to compare

@github-actions github-actions released this 03 Oct 08:36

Release v0.7.5

Fan Curve & Hardware Control

  • Dynamic Fan Curve Reloading: Implemented timestamp-based version tracking (FanCurveVersion) between the UI and background engine, ensuring changes saved in the Curve Editor are immediately reloaded by the background service without requiring an app restart or power profile cycle.
  • Auto-Activation on Save: Clicking SAVE & APPLY in the Curve Editor now automatically enables Curve Mode and sets the fan profile to Custom, eliminating the need to manually toggle overrides.
  • Immediate EC Application: Calculated fan speeds are now evaluated against current CPU/GPU temperatures and dispatched immediately to the embedded controller (EC) upon saving, switching fan modes, or changing power profiles.
  • Hardware Mode Transition Reset: Reset _lastAppliedCpuSpeed and hysteresis counters when switching between Auto, Max, and Custom modes so new curve targets are never suppressed by stale speed caches.
  • Curve-Aware Tray Menu: Selecting "Custom" from the system tray context menu now evaluates the active curve rather than defaulting to static 50% speeds.

UI & Usability

  • Dynamic Tray Radio Sync: Context menu radio checkmarks for Power Profiles and Fan Profiles now dynamically synchronize every time the menu opens, accurately reflecting external adjustments and AC/DC automated switches.
  • Curve Editor Canvas Stability: Hooked GraphCanvas.SizeChanged to ensure reliable initial layout rendering and preserved mouse capture throughout drag operations to prevent nodes from dropping abruptly when moving near canvas edges.

Reliability & Maintenance

  • Unhandled Exception Guards: Wrapped all async void command delegates (SetPowerCommand, ApplyGpuClocksCommand, ResetGpuClocksCommand) and tray menu event handlers in try/catch guards to prevent unhandled background exceptions from crashing the process.

Full Changelog: v0.7.4...v0.7.5

v0.7.4

Choose a tag to compare

@github-actions github-actions released this 03 Oct 06:44

Release v0.7.4

Performance & Memory Optimizations

  • Eliminated Background WMI Memory Leak: Cached active ManagementObject and method parameter structures in AcerWmiManager, preventing accumulation of unmanaged COM Runtime Callable Wrappers (RCWs).
  • Smart Adaptive Background Polling: Throttled telemetry to 10s intervals when running Auto/Max modes (hardware EC controlled), reducing background polling overhead by 80% while keeping the tray tooltip responsive.
  • Automated Memory Maintenance: Integrated periodic working set trimming (psapi.dll EmptyWorkingSet) every 60s and immediately upon dashboard UI process exit, pinning background RAM to ~5–8 MB.
  • Optimized Dashboard Memory:
    • Frozen static brushes & geometries in NitrousDashboard, preventing WPF MIL composition cache bloat and eliminating memory spikes when switching tabs.
    • Automatically pauses telemetry polling and trims working set memory when the dashboard is minimized (reducing idle footprint to ~10–15 MB at 0% CPU).
    • Fast-pathed system model detection via BIOS Registry key (< 1µs, 0 WMI allocations).
    • Cached primary display max refresh rate to avoid enumerating 100+ GPU driver modes on every power transition.
    • Statically resolved nvidia-smi path to avoid disk I/O checks and switched stdout reading to concurrent streaming.
    • Refactored ActionDebouncer to reuse a single System.Threading.Timer via Timer.Change, eliminating timer queue churn during slider adjustments.
    • Scoped HttpClient in UpdateManager to release network sockets and connection pool buffers after boot update checks.

UI & Ergonomics

  • Quick Settings Window Docking: Anchored the dashboard flyout directly above the Windows taskbar system tray (matching Windows Quick Settings positioning).

Full Changelog: v0.7.3...v0.7.4

v0.7.3

Choose a tag to compare

@github-actions github-actions released this 02 Oct 20:50