Как прошить устройство?
Пошаговые инструкции прошивки
популярных мобильных устройств
Android    iPhone    Компьютер    Samsung    Nokia    HTC    Xbox    PS3    PSP    Bios    Роутер

Recover Bricked BIOS using FlashRom on a Raspberry Pi

Похожие видео

Все видео пользователя: rdagger68.

This tutorial demonstrates repairing a PC that was bricked by a failed BIOS upgrade using FlashRom on a Raspberry Pi to program the new firmware directly onto the motherboard’s serial flash chip.

Complete notes, schematics and more are available on my website: https://www.rototron.info/recover-bric...

Видео оказалось полезным? Напишите СПАСИБО здесь!

In this video I'll repair a PC that was bricked by a failed BIOS upgrade a Raspberry Pi will be used to program the new firmware directly onto a motherboard serial flash chip my videos are fast paced but a full summary is provided on my website and a link will be placed in the video description here's a delve last report 10 motherboards circa 2008 the BIOS chip is often located near the CMOS battery this motherboard has a Core 2 quad 2.4 gigahertz CPU with 4 gigs of RAM not a great computer but still useful by the way the techniques used in this video are applicable to other motherboards and are not limited to Dells or even to computers router as TVs oscilloscopes even some washing machines any electronic device that supports upgrades can have reprogrammable firmware in addition to repair so you can also modify firmware with custom code for example you could have some custom graphics appear on startup I wanted to upgrade the vast rows maximum RAM from 4 to 8 gigs which is only supported by the latest firmware so I downloaded the BIOS update utility from the Dell support page I closed all open apps disabled the AV software and ran the update it promptly crashed and bricked the computer nothing but a black screen on boot with fans running at full blast afterwards I looked online and found numerous angry posts regarding vast rows bricked by the 103 firmware the overwhelming conclusion was needed to pay Dell $200 for a new motherboard and that wasn't gonna happen amazingly some of the posts are over 10 years old and yet I was still able to download the sketchy firmware upgrade from Dell yesterday I read several suggested remedies such as pulling the CMOS battery or using the CMOS reset jumper however the battery is only for the real-time clock on the CMOS CMOS is commonly used to refer to where the BIOS settings are stored and generally speaking it's not on the same chip as the BIOS firmware these are settings you can set upon boot such as boot order integrated peripheral options fan control etc the settings are used by the BIOS but clearing them will not repair the corrupt firmware on the BIOS chip it was also suggested that the default firmware could be restored using different keyboard shortcuts and or a USB boot drive however the BIOS is the basic input/output system of the computer it's job is to load the settings and initialize the inputs and outputs such as the keyboard and USB therefore I didn't put much faith in these recommendations now less than some other boards it is possible to recover the default firmware however I'm pretty confident that's not the case with this one and I'll show you why here's the EPROM chip that stores the BIOS EEPROM stands for electrically erasable programmable read-only memory eproms have non-volatile memory which means their data is preserved even when the power is turned off they're referred to as read-only but it is possible to write to them using an EEPROM programmer for the record this one's a flash memory chip which is a type of EEPROM or it might be more accurate to say flash was developed from EEPROM I believe the unpopulated 8 pin pad underneath the flash chip is where a recovery firmware chip would go looks like Dell Dena for this feature however to the left is an unpopulated 10 pin header labeled spy which stands for serial peripheral interface this is a very popular communication protocol and I featured in several of my past videos such as programming a VRS with the Raspberry Pi graphical LCD displays pulling analog water sensors and recently oil LED displays on the ESP 32 with micro Python here's the firmware chip under a magnifier i inverted the colors to improve readability there's ink across the top that obscures the writing if it were worse than flux cleaner or acetone could be used to clean it up it's a little hard to tell from the photo but the chip is a more chronics MX 25 la 0:05 the date code looks like the 14th week of 2007 it's an 8 megabits CMOS serial flash chip many chips have similar pin outs but always check the datasheet it sports reading and writing via spy protocol since the Raspberry Pi has a spy port and the mother port has a spy header in theory it should be relatively easy to reprogram the corrupt firmware I use the continuity tester on my multimeter to turn out the spy header the necessary spy pins chip select serial clock slave in slave out ECC and ground are all connected from the chip to the header additionally the hold and write protect pins are already pulled up with 1k resistors to VCC which is required for programming the header pin out adheres to a standard called spy Universal pin header I've included some documentation on my website the raspberry pi spy bus is comprised of CS chip select on GPIO 8 master and slave out my sew-on GPO 9 Stroud Slavin Massey on GPIO 10 and serial clock on GPIO 11 a ground from the PI is connected to a ground on the header the CS pins are connected together Massey is connected to slave in Si my cell is connected to slave out s ou the serial clock pins are connected and a 3.3 bolt pin on the PI is connected to the VCC pin depending on the current draw of the motherboard it might be necessary to use an external power supply to provide 3.3 volts especially on an older first-generation PI because there are 3.3 bolt rails can't source much current I'm using a PI 3 which should have enough power I'm not sure if it's necessary but it's recommended to remove the CMOS battery and CMOS clear jumper prior to programming the PI clock pin GPIO 11 is connected to the spy header clock pin the PI masih pin GPIO 10 is connected to sy a 3.3 volt pin is connected to VCC ground pins are connected the PI my so GPO 9 is connected to so the PI CSG po8 is connected to the CS on the header note the PI is unplugged I strongly recommend that you disconnect all power before making these connections an ESD mat and an anti-static wrist strap would also be prudent the PI spy interface is usually disabled by default click the PI's main menu click preferences click Raspberry Pi configuration select the interfaces tab clicks PI enable then click OK to save the changes open a blank terminal and type sudo apt-get install flash rom flash rom is an open source utility to read write erase verify and identify both serial and parallel BIOS chips flash rom currently sports over 500 chips flash rom double dash help provides a list of available commands they're pretty straightforward tech are read Tech W write tech V verify Tech P is used to specify the programmer Linux PI would be specified for the raspberry pi spy port ok let's test the programmer flash ROM tack P Linux underscore PI : dev equal slash dev slash spy dev 0 dot 0 comma spy speed equals mm that's kilohertz and tack uppercase v for her most output no EEPROM or flash device found yeah something's not working that's unfortunate but not unexpected I did some troubleshooting off-camera I tried swapping my Sol and mossy I tried all the jumper configurations I played around with the spy speed I hooked up a bench power supply to provide the 3.3 volts and experimented with higher voltages i bypassed the header and clip directly onto the chip which by the way test clips can be a good solution if your motherboard doesn't have a spy header none of that helped so I hooked up my oscilloscope and enabled the spy decoding the yellow waveform is the mossy the cursor shows a high of around 3.3 volts the my Sol and channel 2 is fixed around 2 volts so the chip is returning nothing but hex FF channel 3 the blue waveform is the serial clock and the Christmas shows it's only reaching about 760 millivolts that's problematic looks like there's existing circuit loading probably another IC or component on the motherboard is interfering with the logic levels I'll clear the display disconnect the spy bus from the header and run the flash ROM command again as expected with the motherboard add a circuit the clock hi looks much better at around 3.3 volts okay Plan B I'll to solder the flash chip if anyone out there is yelling at the screen a better solution please go ahead and leave it in the comments and even though the spy header didn't work for this board I recommend you always try it first over chip removal because I've seen it work on other motherboards unless and of course your BIOS chip is socketed then just go ahead and pop it out I don't have a hot air rework station so and settle use chip quick which is a lower melting point solder designed to remove surface mount chips first flux is applied to all the pins for the record soldering can be dangerous and you could destroy your motherboard so please exercise caution chip quickest spread across to bridge the pins a chisel tip on the iron would be preferable to this rusty conical tip unlike regular solder the chip cook will stay molten for several seconds which means you can use less prolonged heat sorry about the bad camera angle I'm just heating both sides to mix a chip quick with the original solder recommend est tweezers or a vacuum pick over these needlenose pliers okay the chip came off easy and it looks like there's no damage I could have probably just lifted the problematic pins off the pads but I think chip removal is safer because the pins and pads are easy to break here's a 200 mil sop a to dip 8ic socket adapter you can buy them on Amazon for around $4 u.s. it plugs into the little breadboard with room for one row on each side press down on the adapter to open the jaws carefully drop the chip in pay attention to the orientation I have pin one at the top right which is designated by a small circle recessed into the chip releasing the jaws clamps the chip in place wiring the flash chip directly to the PI is very similar to the spy header hookup VCC goes to 3.3 volts the grounds are connected the clocks are connected Wasi goes to slave in and my so goes to slave out it's also necessary to pull high hold and write protect to 3.3 volts again pay attention to the orientation of the chip the small circle indicates pin 1 which on this chip is CS VCC pin is connected to a 3.3 bullet rail on the breadboard the whole pin is also connected to 3.3 volts the write-protect or WP pin is also wired to 3.3 volts the ground pin is connected to a ground rail the PI serial clock pin is connected to the chips clock pin my cell is connected to so mossy is connected to sy the CS pins are connected together a 3.3 volt pin from the PI is connected to a 3.3 volt rail a ground pin is connected to the ground rail I really should be doing this with the power off but am eager to see if it works since the PI is on it would have been safer to connect the ground before the other connections to avoid stray voltages on the signal lines again it's always better to make connections with the power off okay let's try flash ROM again there we go found the chronics flash chip MX 25 l8 0:05 now it's working we can read and write the firmware I'll run flash ROM again but lose the tech V and add tack R to read the current firmware on the chip and save it to a file called bricked pin everything looks good Ellis shows the brick bin file even though this Fermor is corrupt it's a good idea to save it because if something goes wrong when writing it could be helpful to compare the old with the new also some motherboard vendors embed IDs in free space on the chip that could be required at this point it would be a good idea to run a verify using lowercase V to ensure a correct read but I'll skip it I went ahead and download the latest BIOS firmware update utility from the Dell support site to a different PC unfortunately the firmware is wrapped up in a Windows executable I tried on compression software but I couldn't unpack the binaries there are sites online to download dump firmware but I think it's a bit sketchy in terms of security I prefer to stick to the manufacturer's site to extract the binary file from the executable a working Windows PC is required open PowerShell CD dollar sign env colon temp changes to the temporary folder LS shows the directory contents switch back to the desktop and run the downloaded BIOS executive all the program throws an error because I'm not using a Dell Bostrom and even if you were just stop and do not proceed any further either way do not close the message prompt instead switch back to PowerShell LS again shows that a new temporary folder has been added called underscore 5 to 6 F dot temp CD into the new folder LS shows the firmware binary file which is indicated by the dot bin extension CP 7 B 1 D 1 P 1 9 dot bin.

Space dollar sign a and V : user profile backslash desktop copies the binary file to the desktop you need to copy it out because the temporary folder will be deleted as soon as you close the prior message prompt ok the binary firmware file is now on the desktop and the prompt can be closed back on the PI CD into the Downloads folder I already transfer the firmware dot bin file into the folder using the USB flash drive copy the file name to the clipboard flash rom is run again tak R is changed attack W for right and the file name is pasted in from the clipboard alright the rights done and it's verified that's all it takes to program the BIOS chip off camera I soldered the chip back onto the motherboard make sure you use regular solder and not the chip quick I replace my rusty soldering iron tip with a hook tip which worked very well I also replaced the clear CMOS jumper and install a new CR 2 O 3 2 battery I reinstall the motherboard into the computer and now I'm crossing my fingers ok here's the big test a single beep is a good sign BIOS revision one point zero point three is loaded so far so good looks like the BIOS found the boot drive and started the OS time and data wrong but it's working please let me know if you found this video helpful or interesting and let me know if I should make more repair tutorials you can support this channel by subscribing leaving a like and sharing thanks for watching

Обратная связь
 Другие способы прошивки   ©   2019