Hi guys! I recently bought GPD MicroPC, but it has infinite fan working and overheating even in BIOS menu (I’m afraid to turn off fan by hardware switch, it may burns chipset)
I found (at official site) special firmware bios update (GPD MicroPC BIOS v4.13) that solves the overheating problem. But file presented in .exe-format (for running in ms windows? that I haven’t because replaced it by linux os)
But, I found there solution (flash bios without windows) for bios flashing without Windows from Built-in UEFI Shell, but it need for .bin - format of firmware rom.
I’m very exited your product and want to resolve some troubles.
Thank you!
UPD1:
I found tips at r/GPDPocket
I should been just extract .exe file (after extracting .rar) by 7z.
My how to in Ubuntu:
1. Follow to official site/section for
download firmware-file for your GPD model
2. Download some archive (gpd..blah-blah...rar)
3. I have Ubuntu and I needed for install 7z package for unpack it.
4. Install 7z (if not yet):
$ sudo apt install p7zip-full p7zip-rar
5. Extract .rar
$ 7z e yourfile.rar
You will get <somefile>.exe
6. Extract .exe
$ 7z e somefile.exe
7. You will get "jackpot"
~8 files (in my case), include MicroPC.4.13.bin
UPD2:
Unfortunally, … I couldn’t update it yet.
I tried update from built-in UEFI Shell, but have no result.
MicroPc…exe-archive hasn’t any utils for running from native UEFI Shell
But .rar-archive (in founded solution above) contains afuefix64.efi and successfully starts itself.
But no any params/options combination in command line doesn’t wotk. Moreover, original solution archive has startup.nsh scipt where having this line: afuefix64.efi P2MAX.0.20.bin /p /b /n /r /k
I try to play with other params (and certain combination is tried to flash, but after reboot BIOS has detected an error flashing and made auto rollback.
Please, CAN anyone help to properly command params/options for flashing MicroPC.4.13.bin by afuefix64.efi ?
UPD3:
Ta-dam!
I just saw the line in BIOS Information Project Version: MicroPC 4.14. x64 but firmware file refer to 4.13… LOL all the time I try to flash newer device by older version firmware…
But I learned how to do it.
Solution:
1. Format USB pen to FAT32
2. Put in USB pen: afuefix64.efi and <firmware-image>.bin
3. Boot into UEFI AP: UEFI Built-in EFI Shell (choose in BIOS boot options)
4. After boot - press Esc
5. Choose your USB-drive by typing > fs1: (or fs2: see list on starting up)
6. Type > dir (check for right drive choosing and all files exist)
7. Save backup rom by > afuefix64.efi backup.rom /O
8. Flashing new rom > afuefix64.efi <firmware.bin> /P /N /R /X /SP /CAPSULE
9. If all done, you look Y/N, press Y and you will reboot to bios flashing stage
10. After all process will end or if failed then will be auto rollbacked.
You will need to unrar the rar file and extract the exe file to a usb pen drive and including the modified startup.nsh file (above) and afuwinx64.exe and MicroPC.4.13.bin files (In theory the above should work (I think) but I must advise I do not own a MicroPC only a P2 Max)
I unpacked and combined all needed files in one dir to usb stick in previous attempt. Your advice and script doesn’t work because:
afuwinx64.exe doesn’t start in Built-in UEFI Shell (it’s a executive file only for Windows, probably, and it isn’t what I want. I need any method without installing windows for flashing. And doing it from built-in UEFI Sheel seemed more effective and pure…
In those .rar archive has other executive file afuefix64.efi that success run and do flashing, but I don’t know right parameters. I try it with your suggested params.
In updating from UEFI-shell solution (but fot P2MAX) startup.nsh also contains line for run afuefix64.efi (you advise afuwin64.exe)
I can copy-paste “auto-helper” of afuefix64.efi that run whithout params.
fs1:\> afuefix64.efi
----------------------------------------------------------------------------
AMI Firmware Update Utility v5.11.06.1854
APL Normal Mode
Copyright (C) 2018 American Megatrends Inc. All Rights Reserved
----------------------------------------------------------------------------
Usage: AfuEfix64.efi <ROM File Name> [Option 1] [Option 2]...
or
AfuEfix64.efi <Input or Output File Name> <Command>
or
AfuEfix64.efi <Command>
-----------------------------------------------------------------------------
Commands:
/O - Save current ROM image to file
/U - Display ROM File's ROMID
/S - Refer to Options: /S
/D - Verification test of given ROM File without flashing BIOS
/A: - Refer to Options: /A:
/OAD - Refer to Options: /OAD
/CLNEVNLOG - Refer to Options: /CLNEVNLOG
Options:
/CMD: - Send special command to BIOS. /CMD:{xxx}
/OEMCMD: - Send special value to BIOS. /OEMCMD:xxx
/DPC - Do not Check Aptio 4 and Aptio 5 platforms
/PW: - Input password for file
/Q - Silent execution
/X - Do not Check ROM ID
/S - Display current system ROMID
/JBC - Do not check AC adapter and battery
/HOLEOUT: - Save specific ROM Hole according to RomHole GUID.
NewRomHole1.BIN /HOLEOUT:GUID
/SP - Preserve Setup settings.
/R - Preserve ALL SMBIOS structure during programming
/Rn - Preserve SMBIOS type N during programming (n=0-255)
/P - Program Main BIOS
/N - Program NVRAM
/K - Program all non-critical blocks
/Kn - Program n non-critical blocks (n=0-15)
/RLC: - To set default option for Rom layout change. (E:Entire ROM, A:Abort, F:Force)
/CLRCFG - Program without preseving setup configuration
/BCPALL - Save all question values before flash
/HOLE: - Update specific ROM Hole according to RomHole GUID.
NewRomHole1.BIN /HOLE:GUID
/L - Program all ROM Holes.
/Ln - Program n ROM Hole only (n=0-15)
/E - Program Embedded Controller Block
/A: - Oem Activation File
/OAD - Delete Oem Activation key
/CLNEVNLOG - Clear Event log
/CAPSULE - Override Secure Flash policy to Capsule
/RECOVERY - Override Secure Flash policy to Recovery
/REBOOT - Reboot after programming
/SHUTDOWN - Shutdown after program
-------------------------------------------------------
# save current ROM image to file
afuefix64.efi original-rom.bin /O
# try to re-flash by original rom-image
afuefix64.efi original-rom.bin /P /N /R /X /CAPSULE
And it well done! After reboot it autorunned flashing procedure in BIOS menu that successfuly ended.
Conclusion: Method of flashing and set of params by afuefix64.efi is probably right, but problem with MicroPC.4.13.bin firmware (may be it released for older MicroPC devices? I bought my recently…)
I just saw the line in BIOS Information Project Version: MicroPC 4.14. x64 but firmware file refer to 4.13… LOL all the time I try to flash newer device by older version firmware…
Glad it worked! - in the future it is best to check the params each time you need to flash as you don’t want to run them incorrectly as you could brick the device.
I think you should copy the params from the .bat file for each extracted package and then edit the afuefix64 accordingly updating the .bin file version and the params (if necessary).
The params are clearly different for MicroPC than P2Max.