Hi all,
apologies if there's already a topic on this but my search didn't bring any results.
I've been having the following issue, I have a 9370 4k/i7/16GB/512GB and I noticed via the Dell Update app that there's a new bios for my precious XPS (ver. 1.10.0). However, the Dell Update app was showing it as unsuccessful install.
I went to Dell.com and with my service tag I downloaded the BIOS. While trying to install it , I receive the following error:
"Unable to prepare the BIOS update payload. The BIOS update procedure has aborted".
I can't seem to be able to find why this is happening. Anyone else that came across the same issue and can help?
Thank you all!
Inspiron 3470, BIOS 2.13.0, unable to prepare BIOS update payload
Upgrading BIOS - "Error unable to locate a BIOS Update Payload"
Can't update the BIOS any longer
And installation of other drivers and BIOS upgrades fails:
http://imgur.com/a/TsTLa
More on reddit.comDell XPS 15 9570 System BIOS ver. 1.9.1 update failed to install
I made a few changes to the script I previously uploaded. I added one more line to the data written to the log and changed the way the path was specified in the Get-ChildItem cmdlets. Coy the new script and run that. This time, copy all of the transcript data from the failed attempt. What you copied last time didn't include the current directory name
Is the name of the EXE file that contains the new BIOS "Latitude E7440.exe"?
This is one way to record what's happening. The transcript and variable values will be written to a file in the $LogPath directory:
<#Added TS Variables for if using during OSD. Creates Variable SMSTS_BiosUpdate, and sets to TRUE. (For Future Use)
http://powershelldistrict.com/how-to-read-and-write-sccm-task-sequence-variables-with-powershell/
#>
$tsenv = New-Object -COMObject Microsoft.SMS.TSEnvironment -ErrorAction SilentlyContinue
$tsenv.Value("SMSTS_BiosUpdate") = "True"
#Create Log Path
$LogPath = $tsenv.Value("_SMSTSLogPath")
#Get Bios Password from File
#$BiosPassword = Get-Content .\Bios.txt
#Create Model Variable
$ComputerModel = Get-WmiObject -Class Win32_computersystem | Select-Object -ExpandProperty Model
#Get TRANSCRIPT File Name (No Extension, used to create Log File)
$TRANSLogFileName = $LogPath + "\" + $ComputerModel + ".log"
Start-Transcript -Path $TRANSLogFileName
Write-Host "Current Directory: $((Get-Location).Path)" # Note where relative paths refer to
Write-Host "ComputerModel: $ComputerModel"
Write-Host "PSScriptRoot: $PSScriptRoot"
Write-Host "Direct child directories found in current directory:"
Get-ChildItem . -Dir |
ForEach-Object{
Write-Host " " $_.Name
}
# the FILE name of the exe to be copied
$ComputerModelExe = "{0}\{1}\*.exe" -f $PSScriptRoot, $ComputerModel
Write-Host "SOURCE exe file path to be used: $ComputerModelExe"
if (Test-Path -Path "$PSScriptRoot\*.exe"){
Write-Host "FATAL: there are one or more EXE files in the directory $PSScriptRoot"
Get-ChildItem "$PSScriptRoot\*.exe" |
ForEach-Object{
Write-Host " " $_.Name
}
Throw "FATAL: there are one or more EXE files in the directory $PSScriptRoot"
}
#Copy Bios Installer to the root of the package - the Flash64W didn't like when I left it in the Computer Model folder, because it has spaces. (Yes, I tried qoutes and stuff)
Copy-Item $ComputerModelExe -Destination $PSScriptRoot # copy exe file from its child directory
[array]$x = Get-ChildItem $PSScriptRoot\*.exe # verify that only ONE file
if ($x.count -gt 1){
Write-Host "FATAL: multiple EXE files found in $PSSCriptRoot after Copy-Item"
$x |
ForEach-Object{
Write-Host " " $_.Name
}
Throw "FATAL: multiple EXE files found in $PSSCriptRoot after Copy-Item"
}
$CopiedComputerModelExe = $x[0].FullName
Write-Host "The copied exe file is here: $CopiedComputerModelExe"
#Get Bios File Name (Uses the Bios EXE file in the same folder)
$BiosFilePath = $CopiedComputerModelExe
Write-Host "BiosFilePath: $BiosFilePath"
#Get Bios File Name (No Extension, used to create Log File)
$BiosLogFileName = $x[0].BaseName
#Set Command Arguments for Bios Update
$cmds = "/b=$BiosFileName /s /l=$LogPath\$BiosLogFileName"
Write-Host "cmds: $cmds"
#Update Bios
$Process = Start-Process $PSScriptRoot\Flash64W.exe -ArgumentList $cmds -PassThru -wait
#Creates and Set TS Variable to be used to run additional steps if reboot requried.
if ($process.ExitCode -eq 2)
{ $tsenv.Value("SMSTS_BiosUpdateRebootRequired") = "True" }
else
{ $tsenv.Value("SMSTS_BiosUpdateRebootRequired") = "False" }
if ($process.ExitCode -eq 10)
{ $tsenv.Value("SMSTS_BiosUpdateBatteryCharge") = "True" }
else
{ $tsenv.Value("SMSTS_BiosUpdateBatteryCharge") = "False" }
Stop-Transcript
We're getting the usual "Unable to prepare the BIOS update payload!" error. Anyone have any advice on workarounds?
Screenshot:
http://imgur.com/a/o2Beo
I am no longer able to update the dell bios in winpe. Getting error code 10 (unspecified error), unable to prepare the bios update payload. I have tried multiple versions of the bios update, all get the same error. Currently only noticing this on my Optiplex 7060's
Has anyone encountered this? I am using the 2010 branch of mecm.
I have a Dell Latitude 3580 that on boot says ‘Alert! TPM device is not detected!’
If I go into the BIOS System Logs > BIOS Events, I see this same event over and over from every time the laptop is turned on.
Its does let me continue to boot into Windows but then BitLocker encryption is suspended on the C: drive and the TPM is not listed in Device Manager.
The BIOS was already up to date but I’ve tried downloading it from the Dell website again and reflashing the the BIOS but its still the same.
Any ideas guys or has the TMP chip just failed? If so is this something Dell could repair or would it be a whole motherboard replacement?
Thanks.
Can you try opening an administrator cmd prompt and typing tpm
You should see something like this:
b6c06d54-5cc5-4559-ab86-7ae8a68d4423-tpm.png800×475 62.6 KB