How to check the latest BIOS version
Understanding the Samsung Update Software program
This part explains how the official Samsung Update Software checks the latest BIOS version and how it downloads the latest file. This example describes a Samsung Ultrabook, model NP530U3B-A01IT.
The Update Software is a Windows-only program that downloads the latest BIOS version information from Samsung, it compares it against the currently installed version and allows the user to update the firmware.
The tool performs an HTTP request to the following URL:
At the time of writing (February, 2016), the following content is returned:
<?xml version="1.0" encoding="utf-8"?> <Content xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://sbuservice.samsungmobile.com/"> <ID>1079</ID> <Version>13XK</Version> <Importance>0</Importance> <MsgType>0</MsgType> <AutoInstall>0</AutoInstall> <ExclusiveInstall>0</ExclusiveInstall> <FilePathName>ITEM_20130405_1079_WIN_13XK.exe</FilePathName> <FileSize>3424280</FileSize> <Downloaded>0</Downloaded> </Content>
It can be seen that the most important parameter is platformID which is composed by the last letters of the BIOS version suitable for the computer. Parameter PartNumber always assumes the value AAAA.
From the information displayed above, we can see that the latest version is 13XK. The full URL of the most recent BIOS version is:
Replicating the steps manually
The first thing to do is to identify the current BIOS version by issuing sudo dmidecode -t0:
# dmidecode 2.12 SMBIOS 2.6 present. Handle 0x0000, DMI type 0, 24 bytes BIOS Information Vendor: Phoenix Technologies Ltd. Version: 13XK Release Date: 03/28/2013 Address: 0xE0000 Runtime Size: 128 kB ROM Size: 2560 kB Characteristics: PCI is supported BIOS is upgradeable BIOS shadowing is allowed Boot from CD is supported Selectable boot is supported EDD is supported Print screen service is supported (int 5h) 8042 keyboard services are supported (int 9h) Serial services are supported (int 14h) Printer services are supported (int 17h) CGA/mono video services are supported (int 10h) NEC PC-98 ACPI is supported USB legacy is supported BIOS boot specification is supported Function key-initiated network boot is supported Targeted content distribution is supported BIOS Revision: 0.1
In this case the platform ID is XK.
Then it's easy to figure out what is the latest BIOS version. It can be seen from the URL of the EXE file. Run the following command:
wget -O - "http://sbuservice.samsungmobile.com/BUWebServiceProc.asmx/GetContents?platformID=XK&PartNumber=AAAA"
Which will return the XML file discussed above. The interesting row is:
The BIOS version is 13XK. This row can also be used to compose the URL and download the EXE file with:
What remains to be tested
Further investigation is necessary to determine if the EXE file can be run in DOS mode by using a FreeDOS environment. Alternatively, it should be possible to extract the ROM file contained in the EXE. The ROM file can be flashed by using the AMI Flasher utility for Linux.