FYI for those coming to this post later, I accomplished what I needed by booting into the EFI shell and running a command line tool,
AMIDEEFIx64.EFI. The steps I followed were before I heard back from support but they replied to my support request with some helpful information which I will include here. I recommend following their guide because what I went through was not as straightforward as it could have been.
Reply from support:
Hello Mr. Tate,
Our PC does not have a serial number. You need to write the serial number by yourself, please use the link to add the SN. It is recommended that you write it yourself. We have a tool for writing serial numbers. Here is the download link of the tool:
the instructions and methods are in the file.
Best,
Acemagician Support
What follows is the sequence of steps that I went through without the benefit of the README provided by support. I started by reading
this guide which mentioned using the tool
AMIDEDOS.EXE to fix the missing value(s). I still think this is an option and would have worked. What you would do is to create a freedos boot cd with this utility on it and boot into that and run it. I began my search meaning to do that and I found out that
AMIDEDOS and its corresponding Windows utility,
AMIDEWIN are proprietary and are given by AMI to OEMs only with a corresponding NDA. What's interesting though is that Lenovo includes it with their BIOS update packages.
This guide shows their recommended way to fix an invalid BIOS value on the ThinkCentre M70s using
AMIDEEFIX64.efi and theirs is the guide I ended up following. I downloaded the BIOS package with the tool from
here. I didn't want to boot into a drive with their BIOS files though so I downloaded the BIOS update for the AMR5 from
this post, prepared a FAT32 thumb drive with the update package and copied just the file
AMIDEEFIX64.efi from the Lenovo zip into the drive. I googled around and found
this user guide to understand which commands to run and
this guide to using the EFI shell which I had no idea even existed prior to this but is actually a lot like a little baby Linux baked into your motherboard.
Steps:
- Download BIOS package for AMR5
- Download BIOS package for Lenovo
- Format a thumb drive to FAT32
- Copy AMR5 update package files to that drive
- Copy AMIDEEFIX64.efi to the drive
- Reboot
- Press F7 on boot up to select boot device and choose thumb drive
- Press Esc rapidly within the first 5 seconds of boot to prevent automatically launching the script to update the BIOS
- You are now dropped into the EFI shell with prompt Shell >
- Run map to list device mappings
- In my case the thumb drive was listed as fs1 so I ran the command fs1: to select that device. Note that ls and cd will not work until you select the device
- Run ls to confirm the file AMIDEEFIX64.efi is present
- Run AMIDEEFIX64.efi /SS to confirm the current value is set to Default string
- Run AMIDEEFIX64.efi /SS $YOUR_DESIRED_SERIAL to set the value to what you want it to be. For me, I had noticed that the "base board" had a serial number but the "system" did not so I used the value retrieved from running AMIDEEFIX64.efi /BS
- Run reset -s to shutdown the machine
- Power on again by pressing the power button
Shortly after rebooting I confirmed that the commands had worked by running.
I then initiated a sync with the endpoint verification helper utility installed and my employer confirmed that the serial number is now being transmitted properly. The reason why I say to run the guide provided by support vs. what I went through is that I wound up updating my BIOS by mistake. There is no visual feedback to the BIOS update, no progress bar or anything so you kind of just have to let it go for a "long enough" amount of time with the screen fully blacked out (in my case I walked away for 30 minutes and came back) and then you have to pull the power cord because the power button will not reset the machine. Kind of a stressful operation. Now that I've learned a bit about EFI scripting, I'd throw an "echo starting" and "echo done" into
startup.nsh at the very least just to cut down on the anxiety factor thinking you might brick your new machine.