bigbrovar

December 7, 2008

Upgrade / Downgrade your Dell Bios On Ubuntu

Filed under: Dell M1330,Uncategorized — Bigbrovar @ 8:14 am

Updating or Downgrading your Bios is pretty straight forward on Ubuntu. Ok maybe not as straight forward as double clinking to install. But not that difficult all the same.

for this guide we will be using the commandline. But that should not scare you, i have tried to make the guide as easy as possible. first we open Terminal /Application/Accessories/Terminal
Now since we will be running every command as root(as administrator), we sould need to become an admin. so that we wont need to been adding sudo infront of every command. so first copy and paste this in terminal

sudo bash

hit enter and give your passwd.

you will see your prompts change from
this :~$ to :~#

Then we need to install Libsmbios a linux package in the Ubuntu repositories.

apt-get install libsmbios-bin

once installed we need to get the system ID to get hat run this in terminal
getSystemId

you should get an output that looks like this

System ID: 0x0209
Service Tag: 4MV9HH1
Express Service Code: 10089895861
Product Name: XPS M1330
BIOS Version: A14
Vendor: Dell Inc.
Is Dell: 1

from the above output my system ID is 0x0209. Armed with this information you now need to get the BIOS version want to upgrade / downgrade. you can get it from here. http://linux.dell.com/repo/firmware/bios-hdrs
Scroll down the list to find a directory matching the System ID from the previous step. and look for the bios version that you want to upgrade/downgrade to In my case my directory is named: system_bios_ven_0x1028_dev_0x0209_version_a14/ my system ID IS 0x0209 and the version of bios i wanted was A14.
Go into this directory and download the file, “bios.hdr” and save it in your desktop.

Now we load the load the dell_rbu driver

modprobe dell_rbu

For Updating

now to update the bios we move into the directory were we saved the bios.hdr file. if you saved it in your desktop. just do this

cd $HOME/Desktop

PLEASE MAKE SURE YOUR SYSTEM IS PLUGGED TO A POWER SOURCE AND NOT ON BATTERY.

Then we run the update command.

dellBiosUpdate -u -f ./bios.hdr

if all goes well you would see the following feedback

Supported RBU type for this system: (MONOLITHIC)
Using RBU v2 driver. Initializing Driver.
Setting RBU type in v2 driver to: MONOLITHIC
Prep driver for data load.
Writing RBU data (4096bytes/dot): ............................
..............................................................
.......................
Notify driver data is finished.
Activate CMOS bit to notify BIOS that update is ready on next boot.
Update staged sucessfully. BIOS update will occur on next reboot.

If you are Downgrading

for downgrading to a previous BIOS version.

your downgrade command would be

dellBiosUpdate --override_bios_version -u -f ./bios.hdr

Now that you are done updating /downgrading

we would need to tell the system to do a cold reboot which is what is needed after doing a bios update.

to do this we would need to edit the kernel line in your menu.lst

run this in terminal

gksu gedit /boot/grub/menu.lst
look for the kernel line

title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid f5e0a891-61ec-434a-b935-78bc25b1542e
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=f5e0a891-61ec-434a-b935-78bc25b1542e ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic

and add reboot=bios to the end of the kernel line to look like this

title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid f5e0a891-61ec-434a-b935-78bc25b1542e
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=f5e0a891-61ec-434a-b935-78bc25b1542e ro quiet reboot=bios splash
initrd /boot/initrd.img-2.6.27-9-generic

save and close the text editor

now you can reboot your machine

once the system restart it would display a white screen which some messages displaying what its doing. and your bios boot splash might take a while. but that is fine.

once restarted. be sure to remove the “reboot=bios” from your kernel line.

I used this method to update the BIOS of my dell xps m1330 ( and downgraded it once) and it worked fine without any ( as we Nigerians will say) Whahala or problem.
Hope this helps some one.

22 Comments »

  1. thanks😉

    Comment by habtoolcaw — December 9, 2008 @ 12:54 am | Reply

  2. ubuntu each one of the best
    Tutos Linux

    Comment by tutos Linux — December 20, 2008 @ 8:59 pm | Reply

  3. Why sudo bash?
    Why not just sudo su? Never understood that one.

    Comment by aronzak — December 21, 2008 @ 1:03 pm | Reply

  4. sudo su , sudo -i , sudo bash .. there all give the same result .. make you become root. its a matter of choice which one works for you

    Comment by Bigbrovar — December 21, 2008 @ 5:02 pm | Reply

  5. Dude! Awesome! Great tut!
    Note: I just hit reboot in the terminal and it worked fine.

    Comment by Outrage17 — January 4, 2009 @ 8:46 pm | Reply

  6. Thanks this worked great! J.

    Comment by Jason Roe — January 10, 2009 @ 11:09 pm | Reply

  7. […] Final ditch effort to do it manually led me to this: https://bigbrovar.wordpress.com/2008/12/07/upgrade-downgrade-your-dell-bios-on-ubuntu/ […]

    Pingback by Rock DJ: Linux: Graphics Card Woes & BIOS Issues — January 27, 2009 @ 3:01 am | Reply

  8. […] you have downloaded the bios.hdr you would like to downgrade to you can get more details here https://bigbrovar.wordpress.com/2008/12/07/upgrade-downgrade-your-dell-bios-on-ubuntu/ Please Help Spread The Love […]

    Pingback by Upgrading Dell BIOS from Linux (Deb-based systems) | Adventures In Open Source — February 1, 2009 @ 3:32 pm | Reply

  9. […] Downgrading Instructions: Thanks to Bobby for his comment about downgrading the BIOS which I must admit I hadn’t thought of. Here’s what he had to say about it – i had the problem and was shocked that the information on bios downgrade is quite miss in any case all you have to do is follow the step up to the last one then instead of sudo dellBiosUpdate -u -f bios.hdr it would be dellBiosUpdate –override_bios_version -u -f ./bios.hdr (presuming you have downloaded the bios.hdr you would like to downgrade to you can get more details here https://bigbrovar.wordpress.com/2008/12/07/upgrade-downgrade-your-dell-bios-on-ubuntu/ […]

    Pingback by Upgrading Dell BIOS from Linux (Deb-based systems) — February 4, 2009 @ 6:16 pm | Reply

  10. Thank you very much for this guide. It works nicely for Debian as well.

    Much appreciated.

    Comment by anon — February 6, 2009 @ 4:25 am | Reply

  11. Awesome! Thanks for this info…very very helpful and worked perfectly!

    CJ

    Comment by CJ — June 26, 2009 @ 9:14 pm | Reply

  12. It will not work
    If I run dellBiosUpdate -u -f ./bios.hdr
    Error Msg:
    Performing BIOS update…
    Traceback (most recent call last):
    File “/usr/sbin/dellBiosUpdate”, line 185, in
    sys.exit( main() )
    File “/usr/sbin/dellBiosUpdate”, line 153, in main
    exit_code = updateBios(HdrFile(options.hdr), options)
    File “”, line 3, in updateBios
    File “/usr/lib/python2.5/site-packages/libsmbios_c/trace_decorator.py”, line 98, in trace
    result = func(*args, **kw)
    File “/usr/lib/python2.5/site-packages/libsmbios_c/rbu_update.py”, line 96, in updateBios
    raise InappropriateHDRFile( _(“The system bios version (%s) is the same as or newer than the .HDR file (%s).”) % (ver, hdrfile.biosVersion()) )
    libsmbios_c.rbu_update.InappropriateHDRFile: The system bios version (A12) is the same as or newer than the .HDR file (A05).
    ==========================================
    If I run dellBiosUpdate –override_bios_version -u -f ./bios.hdr
    Usage: smbios-rbu-bios-update

    dellBiosUpdate: error: no such option: –override_bios_version

    Somebody please help

    Comment by Ron — September 10, 2009 @ 9:54 am | Reply

  13. seems to be a python problem. i did some googling of and i found this http://lists.us.dell.com/pipermail/firmware-tools-devel/2009-March/000427.html it would seems adding import struct to this file /usr/lib/python2.4/site-packages/libsmbios_c/rbu_hdr.py solves the problem. remember to backup first before you do this .. please let me know if you are still confused on how to do this and i will get back to you on a more detailed guide. good luck

    Comment by Bigbrovar — September 10, 2009 @ 10:25 am | Reply

  14. I am trying to downgrade from A05 to 00 so i can use a new battery. i am using ubuntu 9.04 and my system ID is 0x02B0 but I cannot find a matching directory on the list of firmware. any ideas?

    Comment by the green knight — October 12, 2009 @ 10:28 am | Reply

  15. sorry mate, maybe dell took it down?

    Comment by Bigbrovar — October 12, 2009 @ 10:30 am | Reply

  16. Hi There, I can’t seem to find my bios in the dell’s list (http://linux.dell.com/repo/firmware/bios-hdrs). Do you know how often Dell updates this list? or do you know where else I can find my bios? Here’s my info:

    Libsmbios version: 2.2.13
    Product Name: Vostro 1320
    Vendor: Dell Inc.
    BIOS Version: A02
    System ID: 0x02BB

    Thank you very much.

    Comment by Jeff — November 2, 2009 @ 8:14 am | Reply

  17. Hey there, i’m having the same struct issue with python. i can’t locate the py file. could you post on how to fix the file?

    Comment by PGlynn — November 2, 2009 @ 5:37 pm | Reply

  18. This was a really nice resource and tutorial, thanks!

    I was using Linux Mint 8, “Helena”. I went ahead and applied the update, as suggested here, and it didn’t work. So I added the –reboot option as the command line suggested. This causes the command to change like this:

    dellBiosUpdate –reboot -u -f ./bios.hdr

    Be careful not to have anything open you need to save because the reboot will happen immediately!

    Comment by Scott Smith — April 28, 2010 @ 3:00 am | Reply

  19. Excellent, worked like a dream, great simple instructions. Thanks.

    Comment by padale — February 23, 2011 @ 12:39 am | Reply

  20. Fantastic For Men

    Comment by does sizegenetics really work — March 23, 2011 @ 1:24 pm | Reply

  21. I tried but whenever I entered getSystemId my computer froze.

    Comment by SM — May 26, 2011 @ 11:08 pm | Reply


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: