system.exe at ~25% CPU fix

There is a specific bug out there, especially with HP Notebooks (440 G5).
Sometimes system.exe consumes around 25% of your CPU. This is a real waste of energy so the notebook is going to consume alot of battery.

In my case the battery was fully drown after 2-3 hours. It should last around 10 hours.

After trying out everything, contacting the support and googling to days, I realised that the process returns normal after pressing the search for devices button in the Device Manager.
Unfortunately the process starts consuming alot of cpu after a short period of time. I was tired pressing the button every 2 minutes.

I searched for a way to automate the ‘clicking button x’ process to shut system.exe down. There is no built in cmd command for that.
I made up my own solution for this.

temporary fix

04.07.18 - update for actual fixes see below

Note that this does not fix the problem itself. There might be a problem deep inside the software.
It only reduces the CPU usage back to normal by rescanning for devices every x seconds.

  • create a directory anywhere you like
  • download the correct devcon.exe for your system
    • click on devcon.exe to see a related post
    • rename the executeable to devcon.exe and place it into your new directory
  • create a file named dev-worker.bat in the directory
  • paste in the following content:
@echo off
set to=30

:loop

rem moves to execution directory
cd %~dp0

rem executes devcon.exe with rescan
devcon.exe rescan

rem timeout
timeout /t %to% /nobreak

goto loop

Run this script as administrator everytime you start the Computer. It is an infinite loop as long as the computer is logged on.
This script will rescan for new devices every 30 seconds.

shedule the process

If you dont want to start this script everytime you log onto your computer, it’s also possible to create a shedulded start for it.
Just open the ‘Sheduled Tasks’ menu on Windows, create a new task and make sure the trigger is set to ‘log on’.
You also have to tick the checkbox ‘run with high privilegies’ to make sure it runs as administrator.

When specifying the location of the bat file, make sure to also select the directory the script should be executed in.
This needs to be set to the directory where the devcon.exe file is located.

Apply the trigger, relog your windows user and check if the process is starting.

update - actual fixes

Recently I found out about an forum post on the official HP Forum (actual post) which handle this exact problem.

Random people had the same issues and tried to fix them by helping each other out.
Someone actually had the same approach than I did, trying to solve the bug via devcon.exe.

I sum up all of the 19 pages for you:

  • update Card Reader driver
  • disable PCI Express Port #12
  • disable windows fast start
  • kill process mictray.exe
    • goto windows/system32 search for mictray64.exe and rename to mictray64.exe.old

Start at the top and try out every step. Step 2 solved the problem for me without having my program run in the background anymore.