How to flash BIOS (8M+4M) using HW programmer on DELL Precision T5610 ?

Hi,
My T5610 can not boot up. I suspect bios is damaged, I have tried every method to recovery it, but no help. So I decide to use programmer to flash bios chip.

I checked T5610 mother board, it has 2 bios chip, one is 8M Bytes and other one is 4M Bytes. I already exacted HDR file from DELL bios update exe file. and get following files use pfsextractor:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
05/24/2018  09:31 AM    <DIR>          .
05/24/2018 09:31 AM <DIR> ..
05/23/2018 04:31 PM 6,291,456 section_0_A.16.data
05/23/2018 04:31 PM 300 section_0_A.16.meta
05/23/2018 04:31 PM 256 section_0_A.16.mtsg
05/23/2018 04:31 PM 256 section_0_A.16.sign
05/23/2018 04:31 PM 16,384 section_1_0.D.4.data
05/23/2018 04:31 PM 256 section_1_0.D.4.sign
05/23/2018 04:31 PM 93,696 section_2_3.7.0.1049.data
05/23/2018 04:31 PM 256 section_2_3.7.0.1049.sign
05/23/2018 04:31 PM 7,843,840 section_3_8.1.72.3002.data
05/23/2018 04:31 PM 256 section_3_8.1.72.3002.sign
05/23/2018 04:31 PM 418 section_4_4.0.0.0.data
05/23/2018 04:31 PM 229,376 section_5_A.5.data
05/23/2018 04:31 PM 256 section_5_A.5.sign
05/23/2018 04:31 PM 93 section_6_1.0.0.0.data
05/23/2018 04:31 PM 430 section_7_1.0.0.0.data
15 File(s) 14,477,529 bytes
2 Dir(s) 139,136,888,832 bytes free
 


So there have 2 files section_0_A.16.data and section_3_8.1.72.3002.data have big size, which one I should use for programmer, because both of them are great than 4MB and less than 8MB, and total size great than 12MB(8MB+4MB), I have no idea how to deal with these data with my programmer.

Since my computer can not bootup, I can not use UBU or other tools to update bios, I can only use HW programmer to direct flash chip.

Any help or comments is welcomed, thanks!

I get it works, section_0_A.16.data is only BIOS part, plus me region and other region, totally should be 12M, split this 12M file to 8M and 4M, use HW programmer to flash into 2 chips, my T5610 works now.

For my case, I solder 4M and 8M bios chips from MB, use programmer to read content. get 2 files, one is 8M, one is 4M, combine these 2 files to single file,

1
2
3
4
5
 

 
# first, you need copy 8M.bin to 12M.bin
with open("E:\\T5610\\12M.bin", "ab") as myfile, open("E:\\T5610\\4M_NEW.bin", "rb") as file2:
myfile.write(file2.read())
 



use UBB tools open it. then replace bios region with section_0_A.16.data, save as 12M-NEW.rom, use following python script to split it to 2 files (8M+4M)

1
2
3
4
5
6
7
8
9
 

infile = open("E:\\T5610\\12M-NEW.rom", 'rb')
data = infile.read()
infile.close()
with open('E:\\T5610\\8M_NEW.bin','wb+') as _8M_file:
_8M_file.write(data[0:8388608])
 
with open('E:\\T5610\\4M_NEW.bin','wb+') as _4M_file:
_4M_file.write(data[8388608:])
 


then flash 8M_NEW.bin to 16pin BIOS chip, and 4M to 8pin BISO chip. Solder chips on MB, power on, everything get well, my computer come back.

Please note, when you flash the chip, you need erase chip first, then program, after that please verify if content is same as the spited file.

Hi!

Which programmer did you use and do you have a step by step guide to flash the BIOS?

Regards,

Thangle

@Thankgle - You can use any programmer, cheap ones are $2.50 on ebay (CH341A), kits like EZP2010 or EZP2013 cost more (15-20 usually), and there is a ton of other kits similar with different names.
If you can’t desolder, or would rather not, you also need SOIC8 test clip cable ($2.50 on ebay), if you need links to these let me know.

I can also split the BIOS for you once you are ready, if needed.

Hello , can you give me the bios 8M + 4M and tell me how to flash them please.

Best Regards,

@go2net ^^ Thanks!

@Lost_N_BIOS

can you give me the bios 8M + 4M and tell me how to flash them please.

Thank you

Hi!
@Lost_N_BIOS

Thanks for the respond. Do I also need test clip soic16 for the 16 pin bios chip?

Thangle

@Thangle - sorry, I assumed SOIC8 for both the BIOS, are you sure both are not SOIC8?

@Shata92 - I do not have this BIOS, only T5600, we have to wait for @go2net to share a BIOS. I know how to split/combine etc, but wasn’t sure if complete BIOS is part of the exe or HDR. I will look now and if so will build you a BIOS package with 12MB + 8MB + 4MB
To flash you need flash programmer, or unlocked FD and use Intel FPT with 12MB file. Do you have ME, Service, FD, FDO etc 2 pin jumper on the board? If yes, you can use 12MB BIOS and Intel FPT to reflash, if you can boot to DOS or Windows, otherwise you will need flash programmer.
* Edit - I checked exe/HDR and missing FD and PDR (If used) regions, so I cannot rebuild BIOS package without a dump from one of these or similar systems.

@Lost_N_BIOS I took a picture of the Dell T5610 MB and think it is one BIOS with 6 pins and second one with 16 pins.

IMG_20181221_134145.jpg

Yes, I see it, one is 8 pin and one is 16 pin, why did they do that! So yes, you would need SOIC8 test clip and SOIC16 test clip

Or, does your board have a 2 pin jumper, labeled ME, FD, FDO, service etc?

@Lost_N_BIOS

Ask Dell why they used 2 different bios chip ^^
I am on business trip so I am not able to check the motherboard.

I have ordered EZP2013 programmer and test clip SOIC16 and I think the SOIC16 can also be used for the 6 pin chip or do I have to order SOIC6 as well?

@go2net
Hello Please can you Share us with the T5610 Bios stripped to 12MB + 8M + 4M and tell us how to split them.

@Thangle - I don’t know if SOIC16 can be used on SOIC8, maybe ask seller if he knows.

plutomaniac - how to insert ME8 here using T5600 dump as base BIOS to build on, I already swap in BIOS region, but no room for ME8 region due to previous in T5600 is ME7 (T5610 use ME8). I’m trying to put in ME8 from HDR extract, even if I cut padding at end not enough room?
Maybe T5610 combined BIOS is originally larger than 12MB, is this all because maybe T5610 is a 16MB combined image? Can’t use FITc either If you need the T5600 SPI dump I’m trying to build into let me know, thanks

I don’t understand the goal here. If someone needs a dump, they can find something online, replace the BIOS from the HDR and follow the CleanUp Guide for the Engine firmware. The Engine firmware within the HDR are almost always meant to be used via FWUpdate so they are either Update images or RGN so not usable at dumps.

plutomaniac - My goal here is to build someone a T5610 12MB (and 4-8MB split) BIOS from scratch using the HDR extracted data, and a T5600 SPI dump (To get structured source already and FD). I cannot find a T5610 dump to start with, that’s why all this hassle, no FD in the HDR to start from complete scratch.
There is no T5610 dump to restore BIOS region to, or rebuild ME etc. And initially ME swap in has to be done via hex, since no room via UEFITool and FITc wont work properly for ME7 to ME8
I’m not upgrading ME, only rebuilding BIOS from scratch in out of the box manner, so it’s not ME7 to ME8 upgrade, I’m only replacing ME7 in a BIOS never meant for this system, along with the rest that is meant for this system.
Appreciate the heads up on the ME From HDR, I was not aware of that, will use stock source instead thanks. That will probably solve all my issues, I should have considered that previously! * Edit, nope, doubt it, since it’s same size as one from HDR

@Shata92 & @Thangle - can either one of you send me a dump (Complete BIOS dump, 12MB from FPT or universal BIOS backup toolkit, or 4+8MB dumps from programmer)? If not, I cannot do anything to help rebuild a new clean BIOS until we find a T5610 dump, and I looked at all my good source locations without any luck.
Broken/bricked BIOS dump is Ok, as long as it’s not a blank dump (all FF’s or 00’s)

You need the FD and Engine settings from the same system so they must dump their own and then work on that.

plutomaniac Thanks, I had originally planned to use the HDR’s ME as source settings, but that was before you told me about the ME from HDR meant for Update Tool (I checked, it’s RGN Stock ) So thanks, yes I guess we can’t do anything to continue until we can find a T5610 dump

@Lost_N_BIOS - yes there is a 2 pin service mode on the mobo=)

Great @Thangle - please put a jumper on there and dump the BIOS with >> FPTw -d bios.bin