Win32_Battery class is empty on Surface Pro 7 under WinPE

In this post I will show you how to resolve the WMI_Battery class empty under Windows PE on Microsoft Surface Pro 7.

Recently we have tested the MS Surface Pro 7 in order to integrate it into SCCM.
We wanted to install it through our Task Sequence.
In this Task Sequence we have a step that detects if the computer is running on battery or not.

The issue
As mentioned before in our TS we have a step that detects if the computer is running on battery or not.
This step is launched under Windows PE as it's at the beginning of the process.
When you open a cmd prompt under WinPE with F8, and look for the battery information, nothing is returned.
To do this we use the basic WMI class Win32_Battery with PowerShell gwmi Win32_Battery.
See below the result:
With previous Surface versions we did nothing to make it work.

How to resolve it ?

Download the MSI pack
1. Click here to download it. 
2. Extract the MSI file using command below
msiexec /a MSI_Path/qb TARGETDIR=C:\Surface_Drivers
3. All drivers will be extracted in the folder C:\Surface_Drivers
4. The folder will contain around 48 drivers.

Drivers to integrate in boot image
In order to use the Win32_Battery class you will have to add some other drivers in addition of the battery driver.

See below drivers you will have to add
- IclSerialIOGPIO: iaLPSS2_GPIO2_ICL.inf
- IclSerialIOUART: iaLPSS2_UART2_ICL.inf
- SurfaceBattery: SurfaceBattery.inf
- SurfaceIntegration: SurfaceIntegrationDriver.inf
- SurfaceSerialHub: SurfaceSerialHubDriver.inf
WinPE 6483584657948283870

Publier un commentaire

1 commentaire

Anonyme a dit…

Use this list for Pro 7 from the SDR Tool: https://github.com/microsoft/SurfaceDeploymentAccelerator/blob/testing/WinPE_Drivers.xml

Accueil item


Mes articles en français

Author of Books

PowerShell GUI & WPF Group

PowerShell GUI & WPF Group

Join the FPSUGR

Join the FPSUGR