Dell XPS 15 9550 Intel ME Cleaner Problem

Hello, I’ve seen similar posts on this site but haven’t found anything yet that answers my question. I was wondering if anyone would mind helping me with an issue I’m running into with flashrom on a dell xps 15 9550. The dell has a 16 mbyte Winbond W25Q128.V bios chip on it. I’m using flash rom on a raspberry pi 4 but when I read this chip with a soic8 test clip, it seems to read successfully. However, when checking to see if the checksum of the reads I do are identical, they always come up as different values. The other two bios chips however read with the same checksums every time. I am attempting to use intel me cleaner to set the hap bit and disable intel me without repartitioning or cleaning anything on the chip as intel boot guard is enabled. ME Cleaner is able to read the file and say the hap bit has been successfully set. However, when writing the modified image, I get the error through flash rom verifying flash…failed, your flash chip is in an unknown state. The laptop will no longer boot and the power light comes on for a moment before turning on. I suspect either flash rom is not compatible with this chip or something about this chip prevents it from being read by flash rom. Using this guide: darajnish/dell5577medisable on GitHub (sorry can’t post links yet). It seems as though a select few people have been able to set the hap bit by using the command soft-disable-only. Even when I try re-flashing the original read bios image however, the laptop still does not boot. I read somewhere that my chip has flash descriptors locked, but since other people have had success I’m not sure why I can’t get it to work properly. Any advice would be much appreciated

I have an ifdtoollog here as well, if that helps. What I can’t figure out though is if I keep getting different md5 checksums after reading this bios chip, that would imply I got a completely corrupted read every time, right? So, why would I get a log that makes sense?


File original.rom is 16777216 bytes
PCH Revision: 300 series Cannon Point/ 400 series Ice Point
FLMAP0: 0x00040003
FRBA: 0x40
NC: 1
FCBA: 0x30
FLMAP1: 0x58100208
PSL: 0x58
FPSBA: 0x100
NM: 2
FMBA: 0x80
FLUMAP1: 0x000008df
Intel ME VSCC Table Length (VTL): 8
Intel ME VSCC Table Base Address (VTBA): 0x000df0

ME VSCC table:
JID0: 0x001860ef
SPI Component Vendor ID: 0xef
SPI Component Device ID 0: 0x60
SPI Component Device ID 1: 0x18
VSCC0: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID1: 0x001820c2
SPI Component Vendor ID: 0xc2
SPI Component Device ID 0: 0x20
SPI Component Device ID 1: 0x18
VSCC1: 0x20452045
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID2: 0x001840c8
SPI Component Vendor ID: 0xc8
SPI Component Device ID 0: 0x40
SPI Component Device ID 1: 0x18
VSCC2: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID3: 0x001840ef
SPI Component Vendor ID: 0xef
SPI Component Device ID 0: 0x40
SPI Component Device ID 1: 0x18
VSCC3: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB

OEM Section:
00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

Found Region Section
FLREG0: 0x00000000
Flash Region 0 (Flash Descriptor): 00000000 - 00000fff
FLREG1: 0x0fff0700
Flash Region 1 (BIOS): 00700000 - 00ffffff
FLREG2: 0x06ff0003
Flash Region 2 (Intel ME): 00003000 - 006fffff
FLREG3: 0x00020001
Flash Region 3 (GbE): 00001000 - 00002fff
FLREG4: 0x00007fff
Flash Region 4 (Platform Data): 07fff000 - 00000fff (unused)
FLREG8: 0x00007fff
Flash Region 8 (EC): 07fff000 - 00000fff (unused)

Found Component Section
FLCOMP 0x125c00f5
Dual Output Fast Read Support: not supported
Read ID/Read Status Clock Frequency: 48MHz
Write/Erase Clock Frequency: 48MHz
Fast Read Clock Frequency: 48MHz
Fast Read Support: supported
Read eSPI/EC Bus Frequency: 17MHz
Component 2 Density: UNUSED
Component 1 Density: 16MB
FLILL 0xad604221
Invalid Instruction 3: 0xad
Invalid Instruction 2: 0x60
Invalid Instruction 1: 0x42
Invalid Instruction 0: 0x21
FLILL1 0xc7c4b9b7
Invalid Instruction 7: 0xc7
Invalid Instruction 6: 0xc4
Invalid Instruction 5: 0xb9
Invalid Instruction 4: 0xb7
Found PCH Strap Section
PCHSTRP0 : 0x00900000
PCHSTRP1 : 0x00000100
PCHSTRP2 : 0x00000000
PCHSTRP3 : 0x00000000
PCHSTRP4 : 0x00000000
PCHSTRP5 : 0x00010000
PCHSTRP6 : 0x00000000
PCHSTRP7 : 0x00000000
PCHSTRP8 : 0x00000000
PCHSTRP9 : 0x00000000
PCHSTRP10 : 0x00030000
PCHSTRP11 : 0x00000100
PCHSTRP12 : 0x00006d00
PCHSTRP13 : 0x00000001
PCHSTRP14 : 0x00000000
PCHSTRP15 : 0x00020000
PCHSTRP16 : 0x00000100
PCHSTRP17 : 0x00000000
PCHSTRP18 : 0x00000000
PCHSTRP19 : 0x00000000
PCHSTRP20 : 0x00010000
PCHSTRP21 : 0x00000100
PCHSTRP22 : 0x00000000
PCHSTRP23 : 0x00000000
PCHSTRP24 : 0x00000000
PCHSTRP25 : 0x00010000
PCHSTRP26 : 0x00000100
PCHSTRP27 : 0x00000000
PCHSTRP28 : 0x00000000
PCHSTRP29 : 0x00000000
PCHSTRP30 : 0x00010000
PCHSTRP31 : 0x00000002
PCHSTRP32 : 0x00000070
PCHSTRP33 : 0x00000203
PCHSTRP34 : 0x00000064
PCHSTRP35 : 0x00000000
PCHSTRP36 : 0x00002b16
PCHSTRP37 : 0x00000003
PCHSTRP38 : 0x00000008
PCHSTRP39 : 0x00000020
PCHSTRP40 : 0x00000000
PCHSTRP41 : 0x00000000
PCHSTRP42 : 0x00000000
PCHSTRP43 : 0x00005553
PCHSTRP44 : 0x00550000
PCHSTRP45 : 0x00000000
PCHSTRP46 : 0x0000000e
PCHSTRP47 : 0x00000001
PCHSTRP48 : 0x0000170c
PCHSTRP49 : 0x00551554
PCHSTRP50 : 0x00000001
PCHSTRP51 : 0x00000000
PCHSTRP52 : 0x00015553
PCHSTRP53 : 0xff08f091
PCHSTRP54 : 0xfcfcfcf7
PCHSTRP55 : 0x00000000
PCHSTRP56 : 0x00000000
PCHSTRP57 : 0x00000000
PCHSTRP58 : 0x00000000
PCHSTRP59 : 0x00000000
PCHSTRP60 : 0x00001800
PCHSTRP61 : 0x00000000
PCHSTRP62 : 0x00001000
PCHSTRP63 : 0x00000000
PCHSTRP64 : 0x00001800
PCHSTRP65 : 0x00000000
PCHSTRP66 : 0x00000047
PCHSTRP67 : 0x000003fc
PCHSTRP68 : 0x00000000
PCHSTRP69 : 0x0010003f
PCHSTRP70 : 0x00000081
PCHSTRP71 : 0x10000012
PCHSTRP72 : 0x02640000
PCHSTRP73 : 0x00000000
PCHSTRP74 : 0x0961f400
PCHSTRP75 : 0x00000019
PCHSTRP76 : 0x55555579
PCHSTRP77 : 0x0000011f
PCHSTRP78 : 0x0a010703
PCHSTRP79 : 0x00000200
PCHSTRP80 : 0x020f0009
PCHSTRP81 : 0x00ff0000
PCHSTRP82 : 0xc800000f
PCHSTRP83 : 0x00008465
PCHSTRP84 : 0x00000000
PCHSTRP85 : 0x00000304
PCHSTRP86 : 0x00400000
PCHSTRP87 : 0x001432f4
PCHSTRP88 : 0xffffffff
PCHSTRP89 : 0xffffffff
PCHSTRP90 : 0xffffffff
PCHSTRP91 : 0xffffffff
PCHSTRP92 : 0xffffffff
PCHSTRP93 : 0xffffffff
PCHSTRP94 : 0xffffffff
PCHSTRP95 : 0xffffffff
PCHSTRP96 : 0xffffffff
PCHSTRP97 : 0xffffffff
PCHSTRP98 : 0xffffffff
PCHSTRP99 : 0xffffffff
PCHSTRP100: 0xffffffff
PCHSTRP101: 0xffffffff
PCHSTRP102: 0xffffffff
PCHSTRP103: 0xffffffff
PCHSTRP104: 0xffffffff
PCHSTRP105: 0xffffffff
PCHSTRP106: 0xffffffff
PCHSTRP107: 0xffffffff
PCHSTRP108: 0xffffffff
PCHSTRP109: 0xffffffff
PCHSTRP110: 0xffffffff
PCHSTRP111: 0xffffffff
PCHSTRP112: 0xffffffff
PCHSTRP113: 0xffffffff
PCHSTRP114: 0xffffffff
PCHSTRP115: 0xffffffff
PCHSTRP116: 0xffffffff
PCHSTRP117: 0xffffffff
PCHSTRP118: 0xffffffff
PCHSTRP119: 0xffffffff
PCHSTRP120: 0xffffffff
PCHSTRP121: 0xffffffff
PCHSTRP122: 0xffffffff
PCHSTRP123: 0xffffffff
PCHSTRP124: 0xffffffff
PCHSTRP125: 0xffffffff
PCHSTRP126: 0xffffffff
PCHSTRP127: 0xffffffff
PCHSTRP128: 0x00001000
PCHSTRP129: 0x80118002
PCHSTRP130: 0x00000295
PCHSTRP131: 0xffffffff
PCHSTRP132: 0xffffffff
PCHSTRP133: 0xffffffff
PCHSTRP134: 0xffffffff
PCHSTRP135: 0xffffffff
PCHSTRP136: 0xffffffff
PCHSTRP137: 0xffffffff
PCHSTRP138: 0xffffffff
PCHSTRP139: 0xffffffff
PCHSTRP140: 0xffffffff
PCHSTRP141: 0xffffffff
PCHSTRP142: 0xffffffff
PCHSTRP143: 0xffffffff
PCHSTRP144: 0xffffffff
PCHSTRP145: 0xffffffff
PCHSTRP146: 0xffffffff
PCHSTRP147: 0xffffffff
PCHSTRP148: 0xffffffff
PCHSTRP149: 0xffffffff
PCHSTRP150: 0xffffffff
PCHSTRP151: 0xffffffff
PCHSTRP152: 0xffffffff
PCHSTRP153: 0xffffffff
PCHSTRP154: 0xffffffff
PCHSTRP155: 0xffffffff
PCHSTRP156: 0xffffffff
PCHSTRP157: 0xffffffff
PCHSTRP158: 0xffffffff
PCHSTRP159: 0xffffffff
PCHSTRP160: 0xffffffff
PCHSTRP161: 0xffffffff
PCHSTRP162: 0xffffffff
PCHSTRP163: 0xffffffff
PCHSTRP164: 0xffffffff
PCHSTRP165: 0xffffffff
PCHSTRP166: 0xffffffff
PCHSTRP167: 0xffffffff
PCHSTRP168: 0xffffffff
PCHSTRP169: 0xffffffff
PCHSTRP170: 0xffffffff
PCHSTRP171: 0xffffffff
PCHSTRP172: 0xffffffff
PCHSTRP173: 0xffffffff
PCHSTRP174: 0xffffffff
PCHSTRP175: 0xffffffff
PCHSTRP176: 0xffffffff
PCHSTRP177: 0xffffffff
PCHSTRP178: 0xffffffff
PCHSTRP179: 0xffffffff
PCHSTRP180: 0xffffffff
PCHSTRP181: 0xffffffff
PCHSTRP182: 0xffffffff
PCHSTRP183: 0xffffffff
PCHSTRP184: 0xffffffff
PCHSTRP185: 0xffffffff
PCHSTRP186: 0xffffffff
PCHSTRP187: 0xffffffff
PCHSTRP188: 0xffffffff
PCHSTRP189: 0xffffffff
PCHSTRP190: 0xffffffff
PCHSTRP191: 0xffffffff
PCHSTRP192: 0xffffffff
PCHSTRP193: 0xffffffff
PCHSTRP194: 0xffffffff
PCHSTRP195: 0xffffffff
PCHSTRP196: 0xffffffff
PCHSTRP197: 0xffffffff
PCHSTRP198: 0xffffffff
PCHSTRP199: 0xffffffff
PCHSTRP200: 0xffffffff
PCHSTRP201: 0xffffffff
PCHSTRP202: 0xffffffff
PCHSTRP203: 0xffffffff
PCHSTRP204: 0xffffffff
PCHSTRP205: 0xffffffff
PCHSTRP206: 0xffffffff
PCHSTRP207: 0xffffffff
PCHSTRP208: 0xffffffff
PCHSTRP209: 0xffffffff
PCHSTRP210: 0xffffffff
PCHSTRP211: 0xffffffff
PCHSTRP212: 0xffffffff
PCHSTRP213: 0xffffffff
PCHSTRP214: 0xffffffff
PCHSTRP215: 0xffffffff
PCHSTRP216: 0xffffffff
PCHSTRP217: 0xffffffff
PCHSTRP218: 0xffffffff
PCHSTRP219: 0xffffffff
PCHSTRP220: 0xffffffff
PCHSTRP221: 0xffffffff
PCHSTRP222: 0xffffffff
PCHSTRP223: 0xffffffff
PCHSTRP224: 0xffffffff
PCHSTRP225: 0xffffffff
PCHSTRP226: 0xffffffff
PCHSTRP227: 0xffffffff
PCHSTRP228: 0xffffffff
PCHSTRP229: 0xffffffff
PCHSTRP230: 0xffffffff
PCHSTRP231: 0xffffffff
PCHSTRP232: 0xffffffff
PCHSTRP233: 0xffffffff
PCHSTRP234: 0xffffffff
PCHSTRP235: 0xffffffff
PCHSTRP236: 0xffffffff
PCHSTRP237: 0xffffffff
PCHSTRP238: 0xffffffff
PCHSTRP239: 0xffffffff
PCHSTRP240: 0xffffffff
PCHSTRP241: 0xffffffff
PCHSTRP242: 0xffffffff
PCHSTRP243: 0xffffffff
PCHSTRP244: 0xffffffff
PCHSTRP245: 0xffffffff
PCHSTRP246: 0xffffffff
PCHSTRP247: 0xffffffff
PCHSTRP248: 0xffffffff
PCHSTRP249: 0xffffffff
PCHSTRP250: 0xffffffff
PCHSTRP251: 0xffffffff
PCHSTRP252: 0xffffffff
PCHSTRP253: 0xffffffff
PCHSTRP254: 0xffffffff
PCHSTRP255: 0xffffffff
PCHSTRP256: 0xffffffff
PCHSTRP257: 0xffffffff
PCHSTRP258: 0xffffffff
PCHSTRP259: 0xffffffff
PCHSTRP260: 0xffffffff
PCHSTRP261: 0xffffffff
PCHSTRP262: 0xffffffff
PCHSTRP263: 0xffffffff
PCHSTRP264: 0xffffffff
PCHSTRP265: 0xffffffff
PCHSTRP266: 0xffffffff
PCHSTRP267: 0xffffffff
PCHSTRP268: 0xffffffff
PCHSTRP269: 0xffffffff
PCHSTRP270: 0xffffffff
PCHSTRP271: 0xffffffff
PCHSTRP272: 0xffffffff
PCHSTRP273: 0xffffffff
PCHSTRP274: 0xffffffff
PCHSTRP275: 0xffffffff
PCHSTRP276: 0xffffffff
PCHSTRP277: 0xffffffff
PCHSTRP278: 0xffffffff
PCHSTRP279: 0xffffffff
PCHSTRP280: 0xffffffff
PCHSTRP281: 0xffffffff
PCHSTRP282: 0xffffffff
PCHSTRP283: 0xffffffff
PCHSTRP284: 0xffffffff
PCHSTRP285: 0xffffffff
PCHSTRP286: 0xffffffff
PCHSTRP287: 0xffffffff
PCHSTRP288: 0xffffffff
PCHSTRP289: 0xffffffff
PCHSTRP290: 0xffffffff
PCHSTRP291: 0xffffffff
PCHSTRP292: 0xffffffff
PCHSTRP293: 0xffffffff
PCHSTRP294: 0xffffffff
PCHSTRP295: 0xffffffff
PCHSTRP296: 0xffffffff
PCHSTRP297: 0xffffffff
PCHSTRP298: 0xffffffff
PCHSTRP299: 0xffffffff
PCHSTRP300: 0xffffffff
PCHSTRP301: 0xffffffff
PCHSTRP302: 0xffffffff
PCHSTRP303: 0xffffffff
PCHSTRP304: 0xffffffff
PCHSTRP305: 0xffffffff
PCHSTRP306: 0xffffffff
PCHSTRP307: 0xffffffff
PCHSTRP308: 0xffffffff
PCHSTRP309: 0xffffffff
PCHSTRP310: 0xffffffff
PCHSTRP311: 0xffffffff
PCHSTRP312: 0xffffffff
PCHSTRP313: 0xffffffff
PCHSTRP314: 0xffffffff
PCHSTRP315: 0xffffffff
PCHSTRP316: 0xffffffff
PCHSTRP317: 0xffffffff
PCHSTRP318: 0xffffffff
PCHSTRP319: 0xffffffff
PCHSTRP320: 0xffffffff
PCHSTRP321: 0xffffffff
PCHSTRP322: 0xffffffff
PCHSTRP323: 0xffffffff
PCHSTRP324: 0xffffffff
PCHSTRP325: 0xffffffff
PCHSTRP326: 0xffffffff
PCHSTRP327: 0xffffffff
PCHSTRP328: 0xffffffff
PCHSTRP329: 0xffffffff
PCHSTRP330: 0xffffffff
PCHSTRP331: 0xffffffff
PCHSTRP332: 0xffffffff
PCHSTRP333: 0xffffffff
PCHSTRP334: 0xffffffff
PCHSTRP335: 0xffffffff
PCHSTRP336: 0xffffffff
PCHSTRP337: 0xffffffff
PCHSTRP338: 0xffffffff
PCHSTRP339: 0xffffffff
PCHSTRP340: 0xffffffff
PCHSTRP341: 0xffffffff
PCHSTRP342: 0xffffffff
PCHSTRP343: 0xffffffff
PCHSTRP344: 0xffffffff
PCHSTRP345: 0xffffffff
PCHSTRP346: 0xffffffff
PCHSTRP347: 0xffffffff
PCHSTRP348: 0xffffffff
PCHSTRP349: 0xffffffff
PCHSTRP350: 0xffffffff
PCHSTRP351: 0xffffffff
HAP bit is not set

Found Master Section
FLMSTR1: 0x00a00b00 (Host CPU/BIOS)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: enabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: enabled
Flash Descriptor Read Access: enabled
FLMSTR2: 0x00c00d00 (Intel ME)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: enabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: enabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: enabled
FLMSTR3: 0x00800800 (GbE)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: disabled
FLMSTR5: 0x02002000 (EC)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: disabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: disabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: disabled
Found Processor Strap Section
???: 0x00001000
???: 0x80118002
???: 0x00000295
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff

@Nickhostess - Read the chip ID with your own eyes, is it BV, JV, or FV?
For W25Q128FV you need to use 1.18 version CH341A software (for valid read only), or use ASProgrammer 1.41, otherwise other versions always fail (at read sometimes, but write always).
For write to this chip, only Colibri (included below) or ASProgrammer has been confirmed working here by others
Personal testing here (Asprogrammer) - Bricked Asus Z170-AR

W25Q128JV - 1.18 (read, not write) or ASProgrammer 1.40/1.41 (OK read/write)
W25Q128JV - Colibri ver. 1.0.1.62 confirmed read/write OK (use BV ID)

Flashrom, last person that checked (over here, unsure version they were using) was a failed dump, as you’re experiencing.
So, if you only have Pi, you need to order a CH341A and wait until it arrives. Or wait, I tagged the last user who posted in that thread, he’s had a sucessful write with some flashrom version, so maybe it will work for you too
Ohh wait, never mind, he’s also using CH341A Get yourself one of these, they are $3 from China or $6-8 usually locally or from Amazon etc

The entire BIOS is on this 16MB chip, any other chip you dumped is NOT BIOS, be careful and do not erase/write anything to any other chips.

Chip ID is FV. Thanks for the response, will order CH341A programmer tomorrow. Once it arrives I will attempt using ASProgrammer 1.41. Since ifdtool gives valid output, is it safe to assume my original.rom file is in good condition despite different md5’s using md5sum original* command? Also, flashrom claims read/write successful but failed in verifying stage: Verifying flash… FAILED at 0x0002a9a0! Expected=0x84, Found=0x89, failed byte count from 0x00000000-0x00ffffff: 0x333a9
Your flash chip is in an unknown state

I guess this should be obvious but that just means it did indeed fail the write command despite it thinking it worked, right?

No, I assume your original dump is invalid, since you cannot get a confirmed read this means all dumps are invalid and would not match
Sorry, not sure what ifdtool is, but it does not matter to your question, you can’t dump and verify with what you’re using now thus any dump is not valid and should not be used for anything, other than possible manual system info extraction by someone.
Success means nothing without success at verify of read or write. Yes, read fail + write fail = all is failing, what you’re using is not compatible or you need to add/remove power
Some systems you need Main battery if laptop, and or PSU cables added, or removed, then it will work one way or the other - if software/method is otherwise known compatible with the chip ID and this particular model.

Darn, in that case I have likely bricked the bios chip then, right? If that’s the case, is there any way to get a valid dump anywhere? I’ve read that there may be things unique to my dump like the service tag and asset id etc., which I should be able to provide but wouldn’t know how to integrate them into a clean dump. I’m using version 1.14.0 which is the most up-to-date bios version and I’m not sure but I assumed I can’t downgrade. Also, even if I did get a clean dump or had the details I need to have in that dump, would I likely have to get a replacement bios chip and solder that onto the board?

ifd tool is a software that gives a log of everything contained in the rom file

an output of the second dump of the original bios firmware I did before modifying anything gives this output with a file that is exactly the same size which is right now the only hope I have that there’s even a chance it did read correctly considering both files claim to be the same size but flashrom reported different checksums: 16777216 bytes

PCH Revision: 300 series Cannon Point/ 400 series Ice Point
FLMAP0: 0x00040003
FRBA: 0x40
NC: 1
FCBA: 0x30
FLMAP1: 0x58100208
PSL: 0x58
FPSBA: 0x100
NM: 2
FMBA: 0x80
FLUMAP1: 0x000008df
Intel ME VSCC Table Length (VTL): 8
Intel ME VSCC Table Base Address (VTBA): 0x000df0

ME VSCC table:
JID0: 0x001860ef
SPI Component Vendor ID: 0xef
SPI Component Device ID 0: 0x60
SPI Component Device ID 1: 0x18
VSCC0: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID1: 0x001820c2
SPI Component Vendor ID: 0xc2
SPI Component Device ID 0: 0x20
SPI Component Device ID 1: 0x18
VSCC1: 0x20452045
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID2: 0x001840c8
SPI Component Vendor ID: 0xc8
SPI Component Device ID 0: 0x40
SPI Component Device ID 1: 0x18
VSCC2: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB
JID3: 0x001840ef
SPI Component Vendor ID: 0xef
SPI Component Device ID 0: 0x40
SPI Component Device ID 1: 0x18
VSCC3: 0x20252025
Lower Erase Opcode: 0x20
Lower Write Enable on Write Status: 0x50
Lower Write Status Required: No
Lower Write Granularity: 64 bytes
Lower Block / Sector Erase Size: 4KB
Upper Erase Opcode: 0x20
Upper Write Enable on Write Status: 0x50
Upper Write Status Required: No
Upper Write Granularity: 64 bytes
Upper Block / Sector Erase Size: 4KB

OEM Section:
00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff

Found Region Section
FLREG0: 0x00000000
Flash Region 0 (Flash Descriptor): 00000000 - 00000fff
FLREG1: 0x0fff0700
Flash Region 1 (BIOS): 00700000 - 00ffffff
FLREG2: 0x06ff0003
Flash Region 2 (Intel ME): 00003000 - 006fffff
FLREG3: 0x00020001
Flash Region 3 (GbE): 00001000 - 00002fff
FLREG4: 0x00007fff
Flash Region 4 (Platform Data): 07fff000 - 00000fff (unused)
FLREG8: 0x00007fff
Flash Region 8 (EC): 07fff000 - 00000fff (unused)

Found Component Section
FLCOMP 0x125c00f5
Dual Output Fast Read Support: not supported
Read ID/Read Status Clock Frequency: 48MHz
Write/Erase Clock Frequency: 48MHz
Fast Read Clock Frequency: 48MHz
Fast Read Support: supported
Read eSPI/EC Bus Frequency: 17MHz
Component 2 Density: UNUSED
Component 1 Density: 16MB
FLILL 0xad604221
Invalid Instruction 3: 0xad
Invalid Instruction 2: 0x60
Invalid Instruction 1: 0x42
Invalid Instruction 0: 0x21
FLILL1 0xc7c4b9b7
Invalid Instruction 7: 0xc7
Invalid Instruction 6: 0xc4
Invalid Instruction 5: 0xb9
Invalid Instruction 4: 0xb7
Found PCH Strap Section
PCHSTRP0 : 0x00900000
PCHSTRP1 : 0x00000100
PCHSTRP2 : 0x00000000
PCHSTRP3 : 0x00000000
PCHSTRP4 : 0x00000000
PCHSTRP5 : 0x00010000
PCHSTRP6 : 0x00000000
PCHSTRP7 : 0x00000000
PCHSTRP8 : 0x00000000
PCHSTRP9 : 0x00000000
PCHSTRP10 : 0x00030000
PCHSTRP11 : 0x00000100
PCHSTRP12 : 0x00006d00
PCHSTRP13 : 0x00000001
PCHSTRP14 : 0x00000000
PCHSTRP15 : 0x00020000
PCHSTRP16 : 0x00000100
PCHSTRP17 : 0x00000000
PCHSTRP18 : 0x00000000
PCHSTRP19 : 0x00000000
PCHSTRP20 : 0x00010000
PCHSTRP21 : 0x00000100
PCHSTRP22 : 0x00000000
PCHSTRP23 : 0x00000000
PCHSTRP24 : 0x00000000
PCHSTRP25 : 0x00010000
PCHSTRP26 : 0x00000100
PCHSTRP27 : 0x00000000
PCHSTRP28 : 0x00000000
PCHSTRP29 : 0x00000000
PCHSTRP30 : 0x00010000
PCHSTRP31 : 0x00000002
PCHSTRP32 : 0x00000070
PCHSTRP33 : 0x00000203
PCHSTRP34 : 0x00000064
PCHSTRP35 : 0x00000000
PCHSTRP36 : 0x00002b16
PCHSTRP37 : 0x00000003
PCHSTRP38 : 0x00000008
PCHSTRP39 : 0x00000020
PCHSTRP40 : 0x00000000
PCHSTRP41 : 0x00000000
PCHSTRP42 : 0x00000000
PCHSTRP43 : 0x00005553
PCHSTRP44 : 0x00550000
PCHSTRP45 : 0x00000000
PCHSTRP46 : 0x0000000e
PCHSTRP47 : 0x00000001
PCHSTRP48 : 0x0000170c
PCHSTRP49 : 0x00551554
PCHSTRP50 : 0x00000001
PCHSTRP51 : 0x00000000
PCHSTRP52 : 0x00015553
PCHSTRP53 : 0xff08f091
PCHSTRP54 : 0xfcfcfcf7
PCHSTRP55 : 0x00000000
PCHSTRP56 : 0x00000000
PCHSTRP57 : 0x00000000
PCHSTRP58 : 0x00000000
PCHSTRP59 : 0x00000000
PCHSTRP60 : 0x00001800
PCHSTRP61 : 0x00000000
PCHSTRP62 : 0x00001000
PCHSTRP63 : 0x00000000
PCHSTRP64 : 0x00001800
PCHSTRP65 : 0x00000000
PCHSTRP66 : 0x00000047
PCHSTRP67 : 0x000003fc
PCHSTRP68 : 0x00000000
PCHSTRP69 : 0x0010003f
PCHSTRP70 : 0x00000081
PCHSTRP71 : 0x10000012
PCHSTRP72 : 0x02640000
PCHSTRP73 : 0x00000000
PCHSTRP74 : 0x0961f400
PCHSTRP75 : 0x00000019
PCHSTRP76 : 0x55555579
PCHSTRP77 : 0x0000011f
PCHSTRP78 : 0x0a010703
PCHSTRP79 : 0x00000200
PCHSTRP80 : 0x020f0009
PCHSTRP81 : 0x00ff0000
PCHSTRP82 : 0xc800000f
PCHSTRP83 : 0x00008465
PCHSTRP84 : 0x00000000
PCHSTRP85 : 0x00000304
PCHSTRP86 : 0x00400000
PCHSTRP87 : 0x001432f4
PCHSTRP88 : 0xffffffff
PCHSTRP89 : 0xffffffff
PCHSTRP90 : 0xffffffff
PCHSTRP91 : 0xffffffff
PCHSTRP92 : 0xffffffff
PCHSTRP93 : 0xffffffff
PCHSTRP94 : 0xffffffff
PCHSTRP95 : 0xffffffff
PCHSTRP96 : 0xffffffff
PCHSTRP97 : 0xffffffff
PCHSTRP98 : 0xffffffff
PCHSTRP99 : 0xffffffff
PCHSTRP100: 0xffffffff
PCHSTRP101: 0xffffffff
PCHSTRP102: 0xffffffff
PCHSTRP103: 0xffffffff
PCHSTRP104: 0xffffffff
PCHSTRP105: 0xffffffff
PCHSTRP106: 0xffffffff
PCHSTRP107: 0xffffffff
PCHSTRP108: 0xffffffff
PCHSTRP109: 0xffffffff
PCHSTRP110: 0xffffffff
PCHSTRP111: 0xffffffff
PCHSTRP112: 0xffffffff
PCHSTRP113: 0xffffffff
PCHSTRP114: 0xffffffff
PCHSTRP115: 0xffffffff
PCHSTRP116: 0xffffffff
PCHSTRP117: 0xffffffff
PCHSTRP118: 0xffffffff
PCHSTRP119: 0xffffffff
PCHSTRP120: 0xffffffff
PCHSTRP121: 0xffffffff
PCHSTRP122: 0xffffffff
PCHSTRP123: 0xffffffff
PCHSTRP124: 0xffffffff
PCHSTRP125: 0xffffffff
PCHSTRP126: 0xffffffff
PCHSTRP127: 0xffffffff
PCHSTRP128: 0x00001000
PCHSTRP129: 0x80118002
PCHSTRP130: 0x00000295
PCHSTRP131: 0xffffffff
PCHSTRP132: 0xffffffff
PCHSTRP133: 0xffffffff
PCHSTRP134: 0xffffffff
PCHSTRP135: 0xffffffff
PCHSTRP136: 0xffffffff
PCHSTRP137: 0xffffffff
PCHSTRP138: 0xffffffff
PCHSTRP139: 0xffffffff
PCHSTRP140: 0xffffffff
PCHSTRP141: 0xffffffff
PCHSTRP142: 0xffffffff
PCHSTRP143: 0xffffffff
PCHSTRP144: 0xffffffff
PCHSTRP145: 0xffffffff
PCHSTRP146: 0xffffffff
PCHSTRP147: 0xffffffff
PCHSTRP148: 0xffffffff
PCHSTRP149: 0xffffffff
PCHSTRP150: 0xffffffff
PCHSTRP151: 0xffffffff
PCHSTRP152: 0xffffffff
PCHSTRP153: 0xffffffff
PCHSTRP154: 0xffffffff
PCHSTRP155: 0xffffffff
PCHSTRP156: 0xffffffff
PCHSTRP157: 0xffffffff
PCHSTRP158: 0xffffffff
PCHSTRP159: 0xffffffff
PCHSTRP160: 0xffffffff
PCHSTRP161: 0xffffffff
PCHSTRP162: 0xffffffff
PCHSTRP163: 0xffffffff
PCHSTRP164: 0xffffffff
PCHSTRP165: 0xffffffff
PCHSTRP166: 0xffffffff
PCHSTRP167: 0xffffffff
PCHSTRP168: 0xffffffff
PCHSTRP169: 0xffffffff
PCHSTRP170: 0xffffffff
PCHSTRP171: 0xffffffff
PCHSTRP172: 0xffffffff
PCHSTRP173: 0xffffffff
PCHSTRP174: 0xffffffff
PCHSTRP175: 0xffffffff
PCHSTRP176: 0xffffffff
PCHSTRP177: 0xffffffff
PCHSTRP178: 0xffffffff
PCHSTRP179: 0xffffffff
PCHSTRP180: 0xffffffff
PCHSTRP181: 0xffffffff
PCHSTRP182: 0xffffffff
PCHSTRP183: 0xffffffff
PCHSTRP184: 0xffffffff
PCHSTRP185: 0xffffffff
PCHSTRP186: 0xffffffff
PCHSTRP187: 0xffffffff
PCHSTRP188: 0xffffffff
PCHSTRP189: 0xffffffff
PCHSTRP190: 0xffffffff
PCHSTRP191: 0xffffffff
PCHSTRP192: 0xffffffff
PCHSTRP193: 0xffffffff
PCHSTRP194: 0xffffffff
PCHSTRP195: 0xffffffff
PCHSTRP196: 0xffffffff
PCHSTRP197: 0xffffffff
PCHSTRP198: 0xffffffff
PCHSTRP199: 0xffffffff
PCHSTRP200: 0xffffffff
PCHSTRP201: 0xffffffff
PCHSTRP202: 0xffffffff
PCHSTRP203: 0xffffffff
PCHSTRP204: 0xffffffff
PCHSTRP205: 0xffffffff
PCHSTRP206: 0xffffffff
PCHSTRP207: 0xffffffff
PCHSTRP208: 0xffffffff
PCHSTRP209: 0xffffffff
PCHSTRP210: 0xffffffff
PCHSTRP211: 0xffffffff
PCHSTRP212: 0xffffffff
PCHSTRP213: 0xffffffff
PCHSTRP214: 0xffffffff
PCHSTRP215: 0xffffffff
PCHSTRP216: 0xffffffff
PCHSTRP217: 0xffffffff
PCHSTRP218: 0xffffffff
PCHSTRP219: 0xffffffff
PCHSTRP220: 0xffffffff
PCHSTRP221: 0xffffffff
PCHSTRP222: 0xffffffff
PCHSTRP223: 0xffffffff
PCHSTRP224: 0xffffffff
PCHSTRP225: 0xffffffff
PCHSTRP226: 0xffffffff
PCHSTRP227: 0xffffffff
PCHSTRP228: 0xffffffff
PCHSTRP229: 0xffffffff
PCHSTRP230: 0xffffffff
PCHSTRP231: 0xffffffff
PCHSTRP232: 0xffffffff
PCHSTRP233: 0xffffffff
PCHSTRP234: 0xffffffff
PCHSTRP235: 0xffffffff
PCHSTRP236: 0xffffffff
PCHSTRP237: 0xffffffff
PCHSTRP238: 0xffffffff
PCHSTRP239: 0xffffffff
PCHSTRP240: 0xffffffff
PCHSTRP241: 0xffffffff
PCHSTRP242: 0xffffffff
PCHSTRP243: 0xffffffff
PCHSTRP244: 0xffffffff
PCHSTRP245: 0xffffffff
PCHSTRP246: 0xffffffff
PCHSTRP247: 0xffffffff
PCHSTRP248: 0xffffffff
PCHSTRP249: 0xffffffff
PCHSTRP250: 0xffffffff
PCHSTRP251: 0xffffffff
PCHSTRP252: 0xffffffff
PCHSTRP253: 0xffffffff
PCHSTRP254: 0xffffffff
PCHSTRP255: 0xffffffff
PCHSTRP256: 0xffffffff
PCHSTRP257: 0xffffffff
PCHSTRP258: 0xffffffff
PCHSTRP259: 0xffffffff
PCHSTRP260: 0xffffffff
PCHSTRP261: 0xffffffff
PCHSTRP262: 0xffffffff
PCHSTRP263: 0xffffffff
PCHSTRP264: 0xffffffff
PCHSTRP265: 0xffffffff
PCHSTRP266: 0xffffffff
PCHSTRP267: 0xffffffff
PCHSTRP268: 0xffffffff
PCHSTRP269: 0xffffffff
PCHSTRP270: 0xffffffff
PCHSTRP271: 0xffffffff
PCHSTRP272: 0xffffffff
PCHSTRP273: 0xffffffff
PCHSTRP274: 0xffffffff
PCHSTRP275: 0xffffffff
PCHSTRP276: 0xffffffff
PCHSTRP277: 0xffffffff
PCHSTRP278: 0xffffffff
PCHSTRP279: 0xffffffff
PCHSTRP280: 0xffffffff
PCHSTRP281: 0xffffffff
PCHSTRP282: 0xffffffff
PCHSTRP283: 0xffffffff
PCHSTRP284: 0xffffffff
PCHSTRP285: 0xffffffff
PCHSTRP286: 0xffffffff
PCHSTRP287: 0xffffffff
PCHSTRP288: 0xffffffff
PCHSTRP289: 0xffffffff
PCHSTRP290: 0xffffffff
PCHSTRP291: 0xffffffff
PCHSTRP292: 0xffffffff
PCHSTRP293: 0xffffffff
PCHSTRP294: 0xffffffff
PCHSTRP295: 0xffffffff
PCHSTRP296: 0xffffffff
PCHSTRP297: 0xffffffff
PCHSTRP298: 0xffffffff
PCHSTRP299: 0xffffffff
PCHSTRP300: 0xffffffff
PCHSTRP301: 0xffffffff
PCHSTRP302: 0xffffffff
PCHSTRP303: 0xffffffff
PCHSTRP304: 0xffffffff
PCHSTRP305: 0xffffffff
PCHSTRP306: 0xffffffff
PCHSTRP307: 0xffffffff
PCHSTRP308: 0xffffffff
PCHSTRP309: 0xffffffff
PCHSTRP310: 0xffffffff
PCHSTRP311: 0xffffffff
PCHSTRP312: 0xffffffff
PCHSTRP313: 0xffffffff
PCHSTRP314: 0xffffffff
PCHSTRP315: 0xffffffff
PCHSTRP316: 0xffffffff
PCHSTRP317: 0xffffffff
PCHSTRP318: 0xffffffff
PCHSTRP319: 0xffffffff
PCHSTRP320: 0xffffffff
PCHSTRP321: 0xffffffff
PCHSTRP322: 0xffffffff
PCHSTRP323: 0xffffffff
PCHSTRP324: 0xffffffff
PCHSTRP325: 0xffffffff
PCHSTRP326: 0xffffffff
PCHSTRP327: 0xffffffff
PCHSTRP328: 0xffffffff
PCHSTRP329: 0xffffffff
PCHSTRP330: 0xffffffff
PCHSTRP331: 0xffffffff
PCHSTRP332: 0xffffffff
PCHSTRP333: 0xffffffff
PCHSTRP334: 0xffffffff
PCHSTRP335: 0xffffffff
PCHSTRP336: 0xffffffff
PCHSTRP337: 0xffffffff
PCHSTRP338: 0xffffffff
PCHSTRP339: 0xffffffff
PCHSTRP340: 0xffffffff
PCHSTRP341: 0xffffffff
PCHSTRP342: 0xffffffff
PCHSTRP343: 0xffffffff
PCHSTRP344: 0xffffffff
PCHSTRP345: 0xffffffff
PCHSTRP346: 0xffffffff
PCHSTRP347: 0xffffffff
PCHSTRP348: 0xffffffff
PCHSTRP349: 0xffffffff
PCHSTRP350: 0xffffffff
PCHSTRP351: 0xffffffff
HAP bit is not set

Found Master Section
FLMSTR1: 0x00a00b00 (Host CPU/BIOS)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: enabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: enabled
Flash Descriptor Read Access: enabled
FLMSTR2: 0x00c00d00 (Intel ME)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: enabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: enabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: enabled
FLMSTR3: 0x00800800 (GbE)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: enabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: enabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: disabled
FLMSTR5: 0x02002000 (EC)
EC Region Write Access: disabled
Platform Data Region Write Access: disabled
GbE Region Write Access: disabled
Intel ME Region Write Access: disabled
Host CPU/BIOS Region Write Access: disabled
Flash Descriptor Write Access: disabled
EC Region Read Access: disabled
Platform Data Region Read Access: disabled
GbE Region Read Access: disabled
Intel ME Region Read Access: disabled
Host CPU/BIOS Region Read Access: disabled
Flash Descriptor Read Access: disabled
Found Processor Strap Section
???: 0x00001000
???: 0x80118002
???: 0x00000295
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff
???: 0xffffffff

Yes, you already said it’s bricked in your first post?? No, you erased and or wrote to the chip, this all you have now is your corrupted dumps (Keep them!), to grab your system specific info from hopefully (Serial, Asset Tag, LAN MAC ID etc)
In the link I gave above, someone posts link in last post, to known working dump you can use. OR, I can use your failed dumps and make you a new BIOS from stock image.
You do not need new BIOS chip, you only need to program in working BIOS to this chip.

Once CH341A programmer arrives, we’ll fix this

Thank you thank you thank you so much! Have already ordered programmer, should be coming early next week. Will keep you posted, again thank you, I appreciate it so much.

You’re welcome! Don’t worry, once it arrives we’ll fix things

IDF logs are not showing anything relevant or useful here, so there size or contents do not matter to any of this.

* Edit, when you did your first read/verify/save, without erase or write anything, was it successful? If yes, then your dump may be OK / read may be OK here
If you can always read/verify and it’s same/same and saved files are 100% hex match, this kind of comparison only valid if done in succession without trying to power on the system

Supposedly, flashrom gives output: flashrom v1.2 on Linux 5.4.83-5-ARCH (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip “W25Q128.V” (16384 kB, SPI) on linux_spi.
Reading flash… done.

This output would suggest that the read is successful, though the md5’s are always different and I can’t figure out why. I’ve re-adjusted the clip countless times and believe I have a solid connection. Test clip is made by Pomona and has grooves in it I can look through and all chip joints appear to be making a good connection to the test clip contacts. I have a copy of two original dumps I made, would you mind if I sent them to you? I’m not sure if the hex codes are identical in the two when I try using my software (using Hex Fiend on macOS).


edit: No, hex values do not match, was able to successfully compare the two in Hex Fiend

@Lost_N_BIOS so good news the programmer has arrived. Have done some research into using asprogrammer but am not as familiar with it as I am flashrom. In order to properly read/write, what steps do I need to take? Also, am I able to send you a copy of my two corrupted dumps as well as what asprogrammer gives me or is there even anything worthwhile in those dumps do you think? I think you may have already referenced this link but I believe I found a clean dump here: https://www.badcaps.net/forum/showthread.php?p=915861

I don’t think this computer has a MAC ID since there is no ethernet port, just wifi and usb to ethernet. That being the case, do you believe we would just need the service tag?

Last question, most dumps I find online are for corporate purchased versions of this laptop rather than consumer. Does that matter? If so, is there a way to change it to the standard consumer version of the laptop or would it be moot.

Ah I see, I got asprogrammer figured out.

@Lost_N_BIOS Programmer came, have downloaded UEFItool along with a good copy of the bios I found. UEFItool recognizes my dump as being corrupt (due to the improper erase/read I did in flashrom) and the clean dump I found as being good. I saw in on one of your previous posts on this forum you had found a copy of the bios from a similar dell that would also work with some tweaking but wasn’t able to find it again. I’ve attached a copy of the bios I read from my chip using the ch341a programmer and labeled it “bad” in the drive link. The one I found from the link I posted earlier is also attached as “XPS_9550_1.11.2 ME_CLEAN”. Since this machine does not have a LAN just wifi, I don’t think it has any LAN MAC and I believe the service tag and the asset tag are the same. My service tag on my device is DVJ3N72. What do I need to do in order to make the file usable? Again, thank you so much, this is really amazing you’re willing to help me, thank you!

Google Drive Link: https://drive.google.com/drive/folders/1…xlZ?usp=sharing

@Nickhostess Combine the 2 files by putting 2_biosreg at the end of 1_fd_gbe_me, that should give you a complete 16MB UEFI firmware image.

Flash, and read back the content of the chip after flashing, save it. Compare the saved read back content to the original file, you can use Hxd (Analysis, data comparison, compare), or do it in a command- prompt window (fc /b file2 file2) Don’t rely on verify!!

The content has to be 100% bitwise identical! Otherwise it’s not woth continuing.

Attached (combined) file does contain you NVRAM and a possibly machine specific padding which seemed OK. The rest is stock bios from 7D0000 on.

1_fd_gbe_me.zip (3.4 MB)

2_biosreg.zip (5.07 MB)

What do I use to combine the two?

HxD

Unfortunately even my original dump was corrupted. I labeled it as bad one so if I try comparing them they will definitely be different from each other. Are these two files you uploaded combinations of both the good and the bad dump (good dump being one I found online) or both from the good one?

The files are put together one complete UEFI firmware, let’s call it "file1"

You flash this file, and thereafter you read the content of the SPI chip again with the CH341A programmer and save it with a new name, let’s say “file2”.

Then you compare file1 and file2. If they anre not bitwise identical you didn’t flash correctly.

Your bad dump won’t be used.

Excellent, will try this as soon as I get home, thank you so much for your help with this, both of you. One last question before I flash tonight, since I originally did this with the intent of disabling intel me, will this .bin file be cleaned? It doesn’t need to be, at this point I’m content with just having a working bios again and I can always clean it now that I have a good bios again. If it is cleaned, is there a way to re-enable intel me that you know of? I only ask because I believe if I upgrade the bios in the future using the .exe from dell’s site I believe that will re-brick my bios unless it’s 100% stock. I know this thread wasn’t posted under that forum so if you can’t answer that’s ok, too. By the way, did you use my old bios dump to compile these files or the clean dump? If it was the clean dump, do I need to insert my service tag into the file or has that been done already?

ME is cleaned following this guide [Guide] Clean Dumped Intel Engine (CS)ME/(CS)TXE Regions with Data Initialization which means it’s set back to a machine type specific configuration state but without machine specific data. So that’s not what you mean by clean.

Reenabling ME would mean flashing a new ME region, unclear if fpt would suffice or if it’s be necessary to use a programmer.

I used the parts of your old dump which seemed machine specific, it’s the NVRAM and a padding in the beginning of the bios region. It might be that these are corrupt, too, and this image won’t boot. Then we’ll have to go back to emptied NVRAM and leave the machine specific data out.

But first thing is a flash that’s verifiable a 100% good!