Hi there, I’m new to the forum and I have some trouble with a Surface Pro 5. The device lost touch capability after an official microsoft firmware update. I had some “bubbles” flashing on the side of the screen, preventing the use of touch capability. With the touch functionality disabled, the surface works normally.
I think it might be related to the firmware update since everything seems in perfect condition and it was working fine the instant before. I understand that, unfortunately, that is a common problem with the surfaces pro (whatever their generation)…
I’m no expert at this kind of repair (I understand it’s not simple) but not a total newbie either (I was PHP developer before and sometimes manipulate electronics). My question is :
Could someone point me to a guide to repair the “firmware update” (or try to) or some kind of detailed steps so I can figure out where to start ?
Correct. Don’t forget about neoprogrammer. Read datasheet for the SPI chip, size shold fit, check voltage- there might be an 1.8v chip
Otherwise a dump can often be done by fpt from Intel ME tools - version corresponding to ME firmware version - if the system is still booting and you’re able to connect a bt or usb mouse and keyboard.
fptw64 -d spi.bin will dump the complete firmware, but there might be errors since ME region might be protected.
Sooo…I’m trying to wrap my head around all that…I didn’t open the Surface Pro yet, and I still have to figure out how to do that cleanly.
Blockquote Read datasheet for the SPI chip
I searched but can’t find that…is there a know resource somewhere on the web ? I found only ones with 30$ datasheets about the Surface Pro 5.
Blockquote Otherwise a dump can often be done by fpt from Intel ME tools - version corresponding to ME firmware version - if the system is still booting and you’re able to connect a bt or usb mouse and keyboard.
fptw64 -d spi.bin will dump the complete firmware, but there might be errors since ME region might be protected.
I tried that seemingly without success. I got the firmware version from UEFI.
I used CSME System Tools v11r46 and fptw64 to get a dump, and got an spi.bin file.
But reading it with MEAnalyzer v1.137 gives me a bunch of errors.
Chip datasheet: Search for a 16 MByte / 128 Mbit SPI chip, read the inscription on top of the chip and find the datasheet for this chip.
The dump looks otherwise fine, fptw64 is the safest mode to dump if nothing is protected.
Unfortunately at a first glance ISH is supported and populated in the ME (MEA with -dfpt) so the badcaps solution won’t work here.
I’ll have a look into this but I’m not too optimistic. The touch screen does in addition have it’s own firmware. These updates are quite huge and you have to do an ‘admin’- installation to get them unpacked.
EDIT:
Does the touch work in EFI environment for example when accessing bios setup?
FPT wrote already the chip type in its output: W25Q128FV
My dear friend… this is a Winbond chip, Winbond is a company… we search for the company…found it WINBOND
Theres a search box on the website… we search the part W25Q128FV… Search - Winbond
There you go… the official Datasheet.
Pin assignment and operation voltage range, done.
Please check the directory c:\windows\firmware\ for a directory {E41E2C44-4F4B-4167-AD87-CB183D229D7B} and list its content. If there aren’t any directories with GUID- names please list the content of the firmware directory (screenshot?)
Please attach a picture of the device manager with expanded Firmware and HID section.
If both sections don’t show any touch devices please check other sections for touch devices.
Ok, so another Windows Update just passed (couldn’t stop it), the firmware changes are only on the system UEFI (I analyzed a second dump of spi.bin but nothing changed).
Several places it’s said that touch not working in UEFI environment means that it’s the touch device itself since the UEFI environment uses different drivers/ firmware. Anyway the touch shows up in device manager without errors.
I’d try once to uninstall the Surface Touch Firmware, but not check to uninstall the driver. Search for new hardware, see if it changes anything.
This is your firmware with a re- initialized ME- region, needs to be flashed with a programmer. outimage.zip (6.7 MB)
FPT is normally correct with it’s output regarding chip type, but I recommend to double check.
If you have opened your Surface anyway, double check and re-seat all connectors to the screen!
Blockquote If you have opened your Surface anyway, double check and re-seat all connectors to the screen!
Just to be sure, this is the hard part correct ? Where I open the Surface (without destroying everything), locate the chip and try to inject the firmware you just gave me using a ch341a programmer…
And it seems that using the ch341a pliers could work but the common advice seems to be to unsolder the chip from the Surface then solder it back…
No easy task for me but I’m ready to try (once I get all the right tools).
That’s correctly understood. You have now a working device without touch. There’s a slim chance that the touch can be fixed, and there’s a chance that your surfbook won’t work at all afterwards.
Regarding the CH341- you have a good dump of your firmware, but for the programmer it’s still two a 100% identical dumps to be sure that you can read the chip properly (contact of the clamp, software, mainboard…) If you can’t read properly you most probably won’t be able to write either.
Ok thanks again for all the help, I’ll be back with news about the Surface, good or bad…but it may take some time since I have to gather all the tools and make time to do that without pressure
Good day!
I have Surface Pro 5 LTE with the same problem.
Background.
I wanted to replace the battery, but when I was disassembling the tablet, I accidentally damaged the touch cable. As a result, the touch did not work on the right third of the screen.
Later, I ordered a second-hand display. After the replacement, the touch worked fine. But only for a day.
A week ago, I accidentally noticed on the screen that the tablet was installing new firmware. After that, the touch stopped working altogether.
To check, I put the old display on, but the result is the same. The touch does not work.
I took a firmware dump with ME Tools and opened it with FIT (as described on Badcaps), but touch support (ISH) is enabled. HID-compiliant touch screen (twice) and Intel(r) Precise Touch Device are also present in windows without errors.
How long is the time between the day the touch worked fine and the time you noticed a firmware update?
Otherwise not much to do, possibly still / again hardware.
One could give it a try with cleaning / re-initializing the ME region and / or emptying the NVRAM (but Surfaces store machine specific data in NVRAM, so one couldn’t start completely empty)
Everything was fine in the evening, then the computer went to sleep, and in the morning, when I switched on the tablet, it started updating.
I had some thoughts that the display (I mean the touchscreen board on it) may have its own identifier that does not allow replacement, or it must be registered somewhere (like on some phones: iPhones and others).
It is still possible (touch cable?). I replaced the display with one that worked (but not all of it), and it didn’t work either.
But there was no physical movement inside the tablet, or a large thermal load on the tablet. What could be broken?
I don’t want to make a brick from a computer))))
Why did I turn to the forum, because I don’t know for sure what can be done (and then what can be restored) and what can’t be done.
I only have the CH341 in stock and I’m not sure if it will work with the W25Q128FV flash.
So, clearing ME Region (without emptying NVRAM) is safe?
Where (what chip) is “NVRAM” stored?
Is it possible to downgrade firmware version? (This can help to identify problem - hard or soft)
You can download Surface pro 5 updates and unpack them, afair they don’t include complete firmware images, but you might find different types of firmware, even for the touch controller itself. But if you compare versions they don’t changed, in fact files are still from 2018…
Both emptying NVRAM and cleaning the ME are safe. Open your dump in UEFIToolNE and expand bios region:
Examples for things you want to keep are _SurfaceSmbios* or OA3key. But you don’t select single variables, you just cut the NVRAM values. The parts dynamically written after manufacturing will get recreated.
But the danger of bricking is real in opening the machine, shortening something when trying to read / program the SPI …