Managing BIOS settings on Asus NUC devices with PowerShell
In this post I will explain you how to manage BIOS settings for Asus NUC devices.
Context
- You have some Asus NUC devices
- You want to apply specific BIOS settings
- You want an automate way
The solution
To manage BIOS settings we will use the iSetupCfgWin64 tool.
To get it proceed as below:
1. Go to this link
2. Select ASUS NUCs
3. In Product series, select NUC Kits
4. In Product model, select
5. In my case it's ASUS 13
6. Go to Driver & Utility
7. Go to BIOS & FIRMWARE
8. Select your model
9. In my case it's NUC13L3KV5
10. Download NUC Firmware Integrator Tool
11. Go to the downloaded folder
12. Go to iSetupCfg
13. Go to iSetupCfgWin
14. Go to X64
You will then need below files:
- iSetupCfgWin64.exe
- amigendrv64.sys
You can also get the last version from my GitHub here.
Going further
In my post here, you will see how to convert Asus NUC BIOS settings t a PowerShell array.
This way you can easily filter on settings.
See below an overview:
Export BIOS settings
Export existing BIOS settings config
We will use the iSetupCfgWin64.exe and pass below parameters:
- /o
- /s: indicates txt file containing the config
- /b: export boot order controls
See below the full cmdline:
See below an overview of the txt file:
Export settings different from the default
We will use the iSetupCfgWin64.exe and pass below parameters:
- /o
- /s: indicates txt file containing the config
- /b: export boot order controls
- /ndef: export only those settings whose current value is different from the default
- /q: silent
See below the full cmdline:
Get specific setting value
We will use the iSetupCfgWin64.exe and pass below parameters:
- /o
- /ms: Indicates Map String
What is map string ?
Let's take again a config we have exported to a txt file.
For each parameter you will see option called Map String.
For instance below is the config for USB boot:
The Map String to specify is SPG0DA.
To get value of this setting the cmdline to use is:
See below the result:
Set BIOS settings
To set BIOS settings we will need below files:
- iSetupCfgWin64.exe
- amigendrv64.sys
Set a specific parameter
We will use below parameters:
- /i
- /ms: Indicates Map String
- /qv: value of he parameter
- /cpwd: specify the BIOS supervisor password
Let's take our previous example with USB boot.
See below the config:
The Map String to specify is SPG0DA.
Available values:
- 01: Enabled
- 00: Disabled
Now we want to enable this parameter.
The cmdline to use will be:
Set setting(s) without BIOS supervisor password
For this we will proceed as below:
1. Configure parameter iSetupCfg Password Check to Bypass
2. The password to use is*: admin
* it is a standard default password
3. The cmdline to use will be:
Set all BIOS settings from a txt file
There we will set BIOS settings from a txt file.
We will proceed as below:
1. Export existing config to txt file
2. Manually change settings in txt file
3. Set BIOS settings using the new txt file
OR
1. Manually configure settings on a device
2. Export existing config to txt file
3. Set BIOS settings using the new txt file
The cmdline to use will be:
Set all BIOS settings without BIOS supervisor password
For this we will proceed as below:
1. Configure parameter iSetupCfg Password Check to Bypass
2. The password to use is*: admin
* it is a standard default password
3. The cmdline to use will be:
Set BIOS supervisor password
In this part we don't have a BIOS password yet.
1. Configure parameter iSetupCfg Password Check to Bypass
2. The password to use is*: admin
* it is a standard default password
3. The cmdline to use will be:
Enregistrer un commentaire