I’m replying to this discussion, even though it’s a year old, because I came across a ProDesk 440 G1 (not the SFF version, but with which it shares the bios) on which I needed to use an nvme ssd.
After a couple of days of trying I finally succeeded. I also started from the guide published on tachytelic which however does not explain where he got the parameters used for the backup and the bios flash, parameters which cannot be used for the ProDesk as it has a smaller EPROM (8mb vs 16mb ).
Making various attempts with a hexadecimal editor, I discovered that what is done in the guide is nothing more than “cutting” a part of the binary to be flashed, excluding the parts that cannot be written and some corrections that UEFITool makes regarding a "non-empty pad-file”.
At this point I went to find the section of the binary file that we are interested in modifying and nothing else. Another thing I noticed is that if you modify a backup extracted directly from the bios, the modification does not work. I therefore started from the binary downloaded from HP.
The parameters I identified are from offset 0x210000 to 0x7EFFFF, therefore for a length of 0x5E0000.
The command to use for flash then becomes:
fptw64.exe -A 0x210000 -L 0x5E0000 -F extracted_nvme.bin
I cannot attach the binary cause I’m a new user, but if you are handy with hex editing this should not be a problem.
Obviously, to flash it is necessary to close the FDO jumper as described in the guide.
Once you have flashed with the above command, you need to turn off the PC and restore the jumper.
The next time you turn on the PC it will restart 2 or 3 times, but once started and entering the bios, you can finally see that among the “legacy” boot devices there will finally be “PATA”. This means that the modification was successful and you can proceed to install the operating system on the SSD.