Upgrading the BIOS (Firmware) of your Eee
Disclaimer: The following instructions are tested on some EeePC models. To see a list of models and there upgrade results scroll down to the "Tested Models" section. If you have experience with an unlisted model or additional experience with a listed model, please edit the page and add your notes.
Download the BIOS image from http://support.asus.com/download/download.aspx. Make sure you select the right model. You can optionally use http://update.eeepc.asus.com/bios/, but this archive does not always have the newest BIOS revisions.
Prepare an USB drive formatted with FAT16 filesystem. Note that a SD card won't work, unless you insert it in an USB card reader. To format it using FAT16, use mkdosfs -F 16 (tip from twb). If you get an error, you may need to run *fdisk on the USB drive and shrink the partition you're using (16 MB partition seems to work). Yes, it really does need to be FAT16. The simplest way is to use the USB key installer as descibed in ../Install. If the updater gets stuck while reading the firmware update file you should try to format the whole USB key as FAT16 without partitioning it, using e.g. mkdosfs -F 16 /dev/sdb without a partition number.
Open the downloaded file. It should contain a file named like 701-ASUS-0801.ROM. The 701 part corresponds to the EeePC model. Copy that file in the root directory of the USB key, and rename it to 701.ROM. Again, 701 corresponds to the model. If your model is 901, then the download file should contain version.ROM and it should be renamed to 901.ROM when copied on the USB key.
Reboot and press Alt+F2 during the boot. The BIOS updating program will start searching for USB drives, then for a suitably named ROM file. Follow the instructions on the screen.
700 (a.k.a. 2G Surf) Model: Download 700-ASUS-0401.zip, extract 700-ASUS-0401.ROM and rename 700.ROM. Copied 700.ROM to a USB stick. (FAT32 formatted 8GB non-partitioned USB stick was used). Boot the 700 and press Alt+F2. Insert the USB stick and the BIOS update proceeds automatically. Try not to look at it for the several minutes that it appears to be doing nothing. Once prompted, press the power button. Upon reboot it will request to press F2 to go into setup, as it detects the change in BIOS. Press F10 to save changes and proceed to normal boot. Successfully updated BIOS from 0207 to 0401.
701SD Model: Got hold of 701SD-ASUS-0602.zip, unpacked it to 701SD-ASUS-0602.ROM, renamed that file to 701SD.ROM. Copied 701SD.ROM to a FAT32-formatted 1G (no need to create neither FAT32-type nor 16MB-sized partition) noname USB-stick. Inserted stick into 701SD and hit powerbutton, then Alt+F2. Waited 3 minutes or so. Voila. Previous BIOS was 0303, now it's 0602.
900 XP Model: Somehow the BIOS does not find the 900.ROM image on my Eee PC 900.
900 Linux Model: The BIOS update program looks for a file named "900.ROM", since the 1006 revision of the BIOS for the "900 Linux" model is shipped with a filename of "900-ASUS-1006.ROM", one has to rename the file to "900.ROM". After renaming the file, updating the BIOS to revision 1006 was successful. A USB-stick with a 16MB FAT16 partition was used.
900A Linux Model: Success updating from BIOS version 0403 to 0607 on two 900A Linux models, using these directions (900A.ROM on a 16MiB FAT16 partition).
900A Linux Model: with the release 0607 I cannot update the bios with the mentioned hints. I used succesfully a freedos live usb (http://unetbootin.sourceforge.net/), with bios .ROM and the asus afudos utility (ftp://dlsvr01.asus.com/pub/ASUS/mb/flash/AFUDOS236.zip).
901 Linux Model: Success updating from 901-ASUS-1703.zip, but only after making sure the USB drive had a small 16Mb partition to hold the update. When using a FAT16 partitioned 1Gb USB device the update was not found.
1000 Linux Model: Success updating to BIOS version 0803 on a 1000 (Linux model). Note that the upgrade will reset the bios settings (there are a just a few, anyway). The bios zip file is also without the model number for this model.
1000HA Windows XP Model: Sucessfully updated bios from version 2102 to version 2204. Had to rename the file as it did not like 1000HA.ROM but rather 1000H.ROM.
1000HE only available with windows OS: Successfully updated bios with 1000HE.ROM revision 1002, solved acpi issue reading temperature with linux 2.6.32
1001HA: Success updating to BIOS version 1301, the BIOS searched for the 1005HA.ROM file.
1005P: Successfully upgraded to 1005P-ASUS-0901.ROM (renamed to "1005P.ROM") on FAT16 USB key partition, using Alt+F2 method. --twb, Mar 2010
1005P: Same here! Successfully upgraded to 1005P-ASUS-1103.ROM - "1005P.ROM" on 256 MB FAT16 partition [ Aug 2010 ]
1001P: Successfully upgraded to 1005P-ASUS-1202.ROM (sic!) (renamed to "1005P.ROM") on (16MB) FAT16 USB key partition, using Alt+F2 method. (JuL, Mar 2011)
1001PX: Successfully upgraded to 1001PX-ASUS-0601.ROM (renamed to "1001PX.ROM") on FAT16 USB key partition, using Alt+F2 method. Jun 2010
Same method also succeeded with 1001PX-ASUS-0802.ROM found by searching Asus support for "1001px", Aug 2010
1015PE: Successfully upgraded to 1015PE-ASUS-0801.ROM (renamed to "1015PE.ROM") on FAT16 USB key partition, using Alt+F2 method. Feb 2011
1015PE: Same method worked for upgrade to 1015PE-ASUS-1301.ROM. Jan 2016
1015PEM: Successfully upgraded to 1015PE-ASUS-1301.ROM (renamed to "1015PE.ROM", without the M) on a FAT16 formatted USB key, non partitioned, using Alt+F2 method. Feb 2018.
1005PE: Successfully upgraded to 1005P-ASUS-1202.ROM (renamed to "1005P.ROM") on FAT16 USB key partition, using Alt+F2 method. Apr 2014
1215N: Successfully upgraded to 1215N-ASUS-0902.ROM (renamed to "1215N.ROM") using the smallest USB stick i could find (256 MB FAT 16) and the Alt+F2 method. It did not work with a 16GB stick even with only a 16 MB FAT 16 partition on it! Dec 2014
Fallback method if updating with built-in flasher fails
If you are attempting to update the BIOS using the built in BIOS flasher and the process seems stuck on "Reading file MODEL.ROM" no matter what FS-type, partition-size, USB-stick and USB-port you use, there is another method to flash the BIOS.
This method will work with pretty much any USB-stick, although it involves using non-free software: Flashing it from DOS using AFUDOS.EXE.
Downloading random EXE-files from the internet is definitely not ideal when updating firmware, but it has been tested on the models mentioned below and confirmed to work. Use at your own discretion and risk.
Prepare the USB stick
1. Download latest BIOS from Asus using links above.
2. Download AFUDOS.EXE from the following website. To determine the best version for your scenario, check successfull combinations below: http://downloads.k0k0.de/index.php?dir=Netbooks%2FASUS%2FBIOS%2F
3. Create a FreeDOS USB-stick. UNetBootin can be used for this and has FreeDOS listed as one of the default distros is can flash.
4. Once flashed, copy the BIOS's ROM-file and AFUDOS.EXE to the USB-stick. The files should go on the root of same partition as ldlinux.sys and syslinux.cfg.
5. Unmount and eject the USB-drive.
Flash BIOS using AFUDOS
1. Ensure the EEEPC is powered off.
2. Insert the prepared USB-stick.
3. Power on your EEE PC. Press ESC while waiting for BIOS to trigger boot-menu.
4. Select the USB-stick from the boot-menu.
5. Boot into FreeDOS live without HIMEM or EMM386.
6. Go to C:, where you should find the extra files you copied to the USB stick.
7. Launch AFUDOS.EXE using the following syntax: AFUDOS.EXE /iNEWROMFILE.ROM /oOLDROMFILE.ROM. Notice lack of space between switch and value. This should backup the old ROM and flash the new one.
8. Wait. Upon completion you should be told to power off your PC.
You have now updated your BIOS.
Tested configurations for the fallback method
901: Updated successfully from 1503 to 2103 using FreeDOS 1.0, AFUDOS 2.38. May 2014.
Eee PC 1015PEM: Updated successfully to 0901 using FreeDOS 1.0, but using BUPDATER 1.16 instead of AFUDOS. You can get the bios and the BUPDATER utility from the ASUS suport page for 1015PEM. Also I was hit by bug 1190256 but the workaround in the ticket worked fine. Here is a demo video about how to use Bupdater. July 2014.