The Win32_BaseBoard WMI class represents a baseboard, which is also known as a motherboard or system board.
Methods
Win32_BaseBoard has no methods. Inherited methods (IsCompatible) are not implemented.
Properties
Win32_BaseBoard returns 29 properties:
'Caption','ConfigOptions','CreationClassName','Depth','Description','Height',
'HostingBoard','HotSwappable','InstallDate','Manufacturer','Model','Name','OtherIdentifyingInfo',
'PartNumber','PoweredOn','Product','Removable','Replaceable','RequirementsDescription',
'RequiresDaughterBoard','SerialNumber','SKU','SlotLayout','SpecialRequirements','Status','Tag','Version',
'Weight','Width'
Unless explicitly marked as writeable, all properties are read-only. Read all properties for all instances:
Get-CimInstance -ClassName Win32_BaseBoard -Property *
Most WMI classes return one or more instances.
When
Get-CimInstance
returns no result, then apparently no instances of class Win32_BaseBoard exist. This is normal behavior.Either the class is not implemented on your system (may be deprecated or due to missing drivers, i.e. CIM_VideoControllerResolution), or there are simply no physical representations of this class currently available (i.e. Win32_TapeDrive).
Caption
Short description of the object a one-line string.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Caption
ConfigOptions
Array that represents the configuration of the jumpers and switches located on the baseboard.
Example: “JP2: 1-2 Cache Size is 256K, 2-3 Cache Size is 512K, SW1-1: Close to Disable On Board Video”
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, ConfigOptions
CreationClassName
Name of the first concrete class that appears in the inheritance chain used in the creation of an instance. When used with the other key properties of the class, the property allows all instances of this class and its subclasses to be identified uniquely.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, CreationClassName
Depth
Depth of the physical package in inches.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Depth
Description
Description of the object.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Description
Height
Height of the physical package in inches.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Height
HostingBoard
If TRUE, the card is a motherboard, or a baseboard in a chassis.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, HostingBoard
HotSwappable
If TRUE, the package can be hot-swapped. A physical package can be hot-swapped if it is possible to replace the element with a physically different but equivalent element while the containing package has power applied to it that is, while it is ON. For example, a disk drive package inserted using SCA connectors is removable and can be hot-swapped. All packages that can be hot-swapped are inherently removable and replaceable.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, HotSwappable
InstallDate
Date and time the object was installed. This property does not need a value to indicate that the object is installed.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, InstallDate
Manufacturer
Name of the organization responsible for producing the physical element.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Manufacturer
Model
Name by which the physical element is known.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Model
Name
Label by which the object is known. When subclassed, the property can be overridden to be a key property.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Name
OtherIdentifyingInfo
Captures additional data, beyond asset tag information, that can be used to identify a physical element. One example is bar code data that is associated with an element that also has an asset tag. Note that if only bar code data is available and unique or able to be used as an element key, the property value would be NULL and the bar code data would be used as the class key, in the tag property.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, OtherIdentifyingInfo
PartNumber
Part number assigned by the organization responsible for producing or manufacturing the physical element.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, PartNumber
PoweredOn
If TRUE, the physical element is powered ON.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, PoweredOn
Product
Baseboard part number defined by the manufacturer.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Product
Removable
If TRUE, a package is removable. A physical package is removable if it is designed to be taken in and out of the physical container in which it is normally found without impairing the function of the overall packaging. A package can still be removable if the power must be OFF to perform the removal. If the power can be ON and the package removed, then the element is removable and can be hot-swapped. For example, an extra battery in a laptop is removable, as is a disk drive package inserted using SCA connectors. However, the latter can also be hot-swapped. A laptop’s display is not removable, nor is a nonredundant power supply. Removing these components would impact the function of the overall packaging, or is impossible due to the tight integration of the package.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Removable
Replaceable
If TRUE, a package is replaceable. A physical package is replaceable if it is possible to replace (FRU or upgrade) the element with a physically different one. For example, some computer systems allow the main processor chip to be upgraded to one of a higher clock rating. In this case, the processor is said to be replaceable. Another example is a power supply package mounted on sliding rails. All removable packages are inherently replaceable.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Replaceable
RequirementsDescription
Free-form string that describes the way in which this card is physically unique from other cards. The property only has meaning when the corresponding Boolean property SpecialRequirements is set to TRUE.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, RequirementsDescription
RequiresDaughterBoard
If TRUE, at least one daughterboard or auxiliary card is required to function properly.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, RequiresDaughterBoard
SerialNumber
Manufacturer-allocated number used to identify the physical element.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, SerialNumber
SKU
Stock-keeping unit number for the physical element.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, SKU
SlotLayout
Free-form string that describes the slot position, typical usage, restrictions, individual slot spacing or any other pertinent information for the slots on a card.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, SlotLayout
SpecialRequirements
If TRUE, this card is physically unique from other cards of the same type and therefore requires a special slot. For example, a double-wide card requires two slots. Another example is where a certain card may be used for the same general function as other cards but requires a special slot (for example, extra long), whereas the other cards can be placed in any available slot. If set to TRUE, then the corresponding property, RequirementsDescription, should specify the nature of the uniqueness or purpose of the card.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, SpecialRequirements
Status
Current status of an object. Various operational and nonoperational statuses can be defined. Available values:
$values = 'Degraded','Error','Lost Comm','No Contact','NonRecover','OK','Pred Fail','Service','Starting','Stopping','Stressed','Unknown'
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Status
Tag
KEY PROPERTY STRING MAX 256 CHAR
Unique identifier of the baseboard of the system.
Example: “Base Board”
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag
Version
Version of the physical element.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Version
Weight
Weight of the physical package in pounds.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Weight
Width
Width of the physical package in inches.
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property Tag, Width
Examples
List all instances of Win32_BaseBoard
Get-CimInstance -ClassName Win32_BaseBoard
Learn more about Get-CimInstance
and the deprecated Get-WmiObject
.
View all properties
Get-CimInstance -ClassName Win32_BaseBoard -Property *
View key properties only
Get-CimInstance -ClassName Win32_BaseBoard -KeyOnly
Selecting Properties
To select only some properties, pipe the results to Select-Object -Property a,b,c
with a comma-separated list of the properties you require. Wildcards are permitted.
Get-CimInstance
always returns all properties but only retrieves the ones that you specify. All other properties are empty but still present. That’s why you need to pipe the results into Select-Object
if you want to limit the visible properties, i.e. for reporting.
Selecting Properties
The code below lists all available properties. Remove the ones you do not need:
$properties = 'Caption',
'ConfigOptions',
'CreationClassName',
'Depth',
'Description',
'Height',
'HostingBoard',
'HotSwappable',
'InstallDate',
'Manufacturer',
'Model',
'Name',
'OtherIdentifyingInfo',
'PartNumber',
'PoweredOn',
'Product',
'Removable',
'Replaceable',
'RequirementsDescription',
'RequiresDaughterBoard',
'SerialNumber',
'SKU',
'SlotLayout',
'SpecialRequirements',
'Status',
'Tag',
'Version',
'Weight',
'Width'
Get-CimInstance -ClassName Win32_BaseBoard | Select-Object -Property $properties
Limiting Network Bandwidth
If you work remotely, it makes sense to limit network bandwidth by filtering the properties on the server side, too:
Get-CimInstance -Class Win32_BaseBoard -Property $property |
Select-Object -Property $property
Selecting Instances
To select some instances, use Get-CimInstance and a WMI Query. The wildcard character in WMI Queries is % (and not “*”).
The parameter -Filter runs a simple query.
Listing all instances where the property Caption starts with “A”
Get-CimInstance -Class Win32_BaseBoard -Filter 'Caption LIKE "a%"'
Using a WQL Query
The parameter -Query uses a query similar to SQL and combines the parameters -Filter and -Property. This returns all instances where the property Caption starts with “A”, and returns the properties specified:
Get-CimInstance -Query "SELECT ConfigOptions, Model, PoweredOn, Description FROM Win32_BaseBoard WHERE Caption LIKE 'a%'"
Any property you did not specify is still present but empty. You might need to use
Select-Object
to remove all unwanted properties:Get-CimInstance -Query "SELECT ConfigOptions, Model, PoweredOn, Description FROM Win32_BaseBoard WHERE Caption LIKE 'a%'" | Select-Object -Property ConfigOptions, Model, PoweredOn, Description
Accessing Remote Computers
To access remote systems, you need to have proper permissions. User the parameter -ComputerName to access one or more remote systems.
Authenticating as Current User
# one or more computer names or IP addresses:
$list = 'server1', 'server2'
# authenticate with your current identity:
$result = Get-CimInstance -ClassName Win32_BaseBoard -ComputerName $list
$result
Authenticating as Different User
Use a CIMSession object to authenticate with a new identity:
# one or more computer names or IP addresses:
$list = 'server1', 'server2'
# authenticate with a different identity:
$cred = Get-Credential -Message 'Authenticate to retrieve WMI information:'
$session = New-CimSession -ComputerName $list -Credential $cred
$result = Get-CimInstance Win32_BaseBoard -CimSession $session
# remove the session after use (if you do not plan to re-use it later)
Remove-CimSession -CimSession $session
$result
Learn more about accessing remote computers.
Requirements
To use Win32_BaseBoard, the following requirements apply:
PowerShell
Get-CimInstance
was introduced with PowerShell Version 3.0, which in turn was introduced on clients with Windows 8 and on servers with Windows Server 2012.
If necessary, update Windows PowerShell to Windows PowerShell 5.1, or install PowerShell 7 side-by-side.
Operating System
Win32_BaseBoard was introduced on clients with Windows Vista and on servers with Windows Server 2008.
Namespace
Win32_BaseBoard lives in the Namespace root/cimv2. This is the default namespace. There is no need to use the -Namespace parameter in Get-CimInstance
.
Implementation
Win32_BaseBoard is implemented in CIMWin32.dll and defined in CIMWin32.mof. Both files are located in the folder C:\Windows\system32\wbem
:
explorer $env:windir\system32\wbem
notepad $env:windir\system32\wbem\CIMWin32.mof