Source Code: GitHub Repository

The Problem

Users of Corsair’s iCUE software often face a frustrating issue: the background service can silently crash, causing RGB lighting profiles and fan curves to revert to defaults. For gamers and power users who rely on custom fan profiles for cooling or specific key bindings, this isn’t just cosmetic—it’s a functional disruption.

The Solution

I built iCUE Watchdog, a lightweight C# application designed to run silently in the system tray. Its sole purpose is ensuring high availability for the iCUE service.

Technical Architecture

The application is built using .NET Framework 4.8 for broad compatibility and low resource footprint. Key components include:

  • Process Monitoring Loop: A background thread that queries the active process list every 10 seconds.
  • Automatic Recovery: If iCUE.exe is missing, the watchdog attempts to launch it from the known installation path.
  • System Tray Integration: Uses NotifyIcon to provide status updates without cluttering the taskbar.

Code Snippet

The core logic is surprisingly simple but effective. Here’s how we check for the process:

private void CheckAndRestart()
{
    Process[] processes = Process.GetProcessesByName("iCUE");
    
    if (processes.Length == 0)
    {
        ShowNotification("iCUE crashed! Restarting...");
        try 
        {
            Process.Start(icuePath);
        }
        catch (Exception ex)
        {
            Log(ex.Message);
        }
    }
}

Results

Since deploying this tool, my personal setup has achieved 100% uptime for lighting and cooling profiles. It transforms a manual annoyance into an automated “set and forget” solution.