Beruflich Dokumente
Kultur Dokumente
Arduino
In this post I will explain how to flash bios chips with an Arduino. We
will be using a Arduino Duemilnove (uno, mega or clones do also
work) and a ASUS P5B motherboard that no longer boots after a
failed bios update.
Here is an outline of the steps (some of these steps are not strictly
necessary but I figured they might help the uninitiated):
1. Identify board
2. Find documentation for the board
3. Locate and identify bios chip
4. Find documentation for the chip
5. Find pinout and operating voltages (important)
6. Prepare the Arduino and installing flashrom
7. Connecting the Arduino to the chip
8. Testing
9. Flashing and verify
10. Troubleshooting
MX25L8005
Typing the model number into google returns the datasheet as one of
the first results. The information we are looking for is the pinout and
operating voltage. The following image shows the pinout of the
25L8005:
The pin names do not make much sense if you are seeing them for the
first time so the datasheet also include a description of the pin names:
For more information on what exactly the pins do please refer to the
datasheet.
sudo flashrom -p
serprog:dev=/dev/ttyUSB0:2000000
sudo flashrom -p
serprog:dev=/dev/ttyUSB0:2000000 -w [NEWBIOS]
The output should look like this:
flashrom v0.9.9-91-g0bfa819 on Linux 4.10.0-28-
generic (x86_64) flashrom is free software, get
the source code at https://flashrom.org Using
clock_gettime for delay loops (clk_id: 1,
resolution: 1ns). serprog: Programmer name is
"frser-duino" Found Macronix flash chip
"MX25L8005" (1024 kB, SPI) on serprog. Reading
old flash chip contents... done. Erasing and
writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
And that is it. We have successfully flashed a chip using the SPI
interface. If you have any questions or feedback about this post please
leave a comment below!
References
The post that led me to start this project
https://hackaday.com/2012/05/04/arduino-uno-
bios-flasher/
The instructions I used for this project
http://www.flashrom.org/Serprog/Arduino_flash
er
25L8005 datasheet
https://www.mct.net/download/macronix/mx25
l8005.pdf
Good discussion on the HP forum about recovering
HP envy’s using this method
https://h30434.www3.hp.com/t5/Desktop-
Hardware-and-Upgrade-Questions/HP-Envy-23-AIO-
No-Beep-Screen-Blank-No-USB/m-
p/5715632/highlight/true#M133287
Wiring fail 1
Wiring fail 2
Wiring fixed
Fingers crossed!
It boots!
2018
Retry 1
2018 Retry 2