PfSense Watchguard Firebox X700 BIOS Image



  • Hi Folks!  :)

    My first post! So be nice if I've missed this information, but I have searched.

    My beloved Firebox's CPU fan stopped the other night and un-surprisingly it failed to reboot. I wasn't fussed as it deserved a CPU upgrade anyhow and as I noticed a few bulging capacitors, I completely re-capped it with some nice Panasonic jobbies.

    However, it won't reboot without having CMOS cleared every time. Everything I seen on this forum and the web I have tried, new battery etc. It won't even POST without being reset, with just a black line shown on LCD. I can get into BIOS menu, but even when that says it's rebooting it hangs.

    So I have concluded that the BIOS has become corrupted, but I can't find an upgrade/image anywhere  :(

    This is the BIOS info…

    C:\BIOS>biosid
            ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦?
            ¦      BIOSID v1.1 - BIOS Identification Utility      ¦
            ¦      Copyright © 1998 Unicore Software, Inc.      ¦
            ¦      Tel : 1-800-800-BIOS                            ¦
            ¦      http: //www.unicore.com/                        ¦
            ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
    BIOS DATE  : 04/02/01BIOS TYPE  : American Megatrends Inc.BIOS ID    : 63-1029-001918-00101111-040201CHIPSET ID : SOLANO

    Remember its an X-CORE not an COREe so it's not an Award BIOS and therefore I can't use the usual FreeDOS method.

    Unfortunately I cannot use the box until I rectify this as it won't come back should power failure occur.

    Any help gratefully received.

    Rowan

    :)


  • Netgate Administrator

    So it boots OK if you have reset the CMOS? Does it require any interaction? What if you just leave out the battery?

    I have a couple of these boxes one of which failed gradually over a few weeks until eventually it wouldn't boot at all. I suspect that it has bad caps but it's not obvious so it's just a guess. I never bothered swapping them since I had a spare.
    Anyway just before it died I experimented with modifying the bios, I wanted to enable console re-direct. It did work to an extent but coincided with it failing to boot so I couldn't be sure if my bios had killed it. I did read and write the bios though, I believe I used flashrom from within pfSense so you could probably do the same. Failing that you could always write the rom chip directly with an external rom flasher.

    Here is a copy of what I think was the original BIOS file:
    https://sites.google.com/site/pfsensefirebox/home/xcoreb1.rom
    Should be MD5: ad9d31f7739444a729dc564f3a37267e

    Also at that site is the most recent modyfied version, xcoreb5.bin. It might be fine. Flashing is inherently risky etc…  ;)

    I suggest, if you can still boot into pfSense, that you extract your current bios and compare it before you flash. If you want to wait I could also extract the bios from my known good box. Unfortunately I have had a leak in the plumbing at home which has caused the ceiling to colapse. I had to take up the floor to repair it and the X-Core has been somewhat buried in the rush to move furniture out the way. I'm not sure when I'll be able to boot it.  ::)

    Steve



  • Thank you for your reply Steve

    Taking out the battery worked! How bizzare, I bought a new one for it as well.

    If I don't, I have to switch off and move jumper from 1-2 to 2-3 then back, power on and all works fine.

    So I'm now either going to shove it back in the rack (tempting) or take a BIOS image and then flash it to see if it works with a battery in it.

    If it boots fine though, I don't really see any need for a battery to be in there(?)

    :)


  • Netgate Administrator

    Nice.  :) If you leave out the battery it can't retain any CMOS settings when the box is powered off (the PSU is non ATX, it has no standby mode). When it powers up and BIOS code attempts to read the CMOS and sees there's a problem, usually a checksum error, and loads the default settings. Most desktops will halt at that point asking for input but I guess that's not useful in a rack mount box so it continues with the default settings. What's interesting is why it then failed to boot with whatever settings it loaded the next time. What gets written to the CMOS that prevents it booting and how is that different to the default settings?  :-\

    Steve



  • Ok, without the battery it will power on happily if switched off, but it still will not reboot.

    If you try to reboot from GUI it will just shutdown (no ping, status lights) showing 'pfsense is shutting down' on LCD and hang.

    Same thing happens from BIOS menu on LCD, if you say restart it just hangs there. Power ON/OFF with battery out and things are fine, put battery back in and it will neither reboot nor start up without you clearing CMOS.

    So I intend to use flashrom to make a backup and then flash it with the image you suggested. Not being too up on FreeBSD, is there a pretty sound & simple guide to using flashrom anyone knows of..? I don't want to mess this up!

    Many Thanks

    :)


  • Netgate Administrator

    I'm not sure how flashrom will behave on the X-Core exactly under 2.1 because I think the version in FreeBSD 8.3 packages is newer than in 8.1.
    There is help built into it though and if you run it without arguments it simply looks for readable chips.

    Steve

    Edit: I've fixed the plumbing so I could fire up my X-Core box and get you a known working bios if you can wait a while.



  • Oh if you could grab me an image (no rush) that would be perfect. If I'm going to do it, I'd rather do it with an image I know works!

    Many Thanks

    :)


  • Netgate Administrator

    Sorry, totally forgot about that.
    So fired the X700 up, still works  :). It's obviously been a while since I ran it because it was still on 2.0.2. I undated it to 2.1.1 pre-release which went smoothly. So here is me installing flashrom and extracting the bios image:

    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(3): /etc/rc.conf_mount_rw
    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(4): pkg_add -r flashrom
    Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.3-release/Latest/flashrom.tbz... Done.
    Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.3-release/All/dmidecode-2.11.tbz... Done.
    Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.3-release/All/pciids-20120227.tbz... Done.
    Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.3-release/All/libpci-3.1.9.tbz... Done.
    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(5): rehash
    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(6): flashrom
    flashrom v0.9.5.2-r1515 on FreeBSD 8.3-RELEASE-p14 (i386), built with libpci 3.1.9, GCC 4.2.1 20070719  [FreeBSD], little endian
    flashrom is free software, get the source code at http://www.flashrom.org
    
    Calibrating delay loop... OK.
    Found chipset "Intel ICH2". Enabling flash write... OK.
    Found SST flash chip "SST49LF004A/B" (512 kB, FWH) at physical address 0xfff80000.
    No operations were specified.
    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(7): flashrom -r biosbkup.bin
    flashrom v0.9.5.2-r1515 on FreeBSD 8.3-RELEASE-p14 (i386), built with libpci 3.1.9, GCC 4.2.1 20070719  [FreeBSD], little endian
    flashrom is free software, get the source code at http://www.flashrom.org
    
    Calibrating delay loop... OK.
    Found chipset "Intel ICH2". Enabling flash write... OK.
    Found SST flash chip "SST49LF004A/B" (512 kB, FWH) at physical address 0xfff80000.
    Reading flash... done.
    [2.1.1-PRERELEASE][root@pfSense.localdomain]/root(8): md5 biosbkup.bin 
    MD5 (biosbkup.bin) = 3d3b08928c20b551898eb76e059b217c
    
    

    That image is now here:
    https://sites.google.com/site/pfsensefirebox/home/biosbkup.bin

    Make sure you verify the MD5 on the box before you flash it.

    I might try my modified bios and see if it really was just a hardware problem previously. Hmm, where's my chip extractor…

    Steve



  • Hi Steve,

    Thanks very much for your help.

    Sadly it made no difference, it's probably a component that failed when the caps did; Probably a voltage regulator. But I've taken it as far as I'm going to go. It still won't reboot on command, but it will if it's powered off which is good enough for me. I'll probably put it on a switched group on UPS and reboot it that way if needed.

    The more I play with pfsense and FreeBSD in general, the more I like it! Considering putting it on a Celestix MSA3000i as I grow in confidence.

    Anyhow, I now know more than I did when I started which is the name of the game!  :)

    Many Thanks

    Rowan


  • Netgate Administrator

    Disapointing. Still, didn't break it though.

    @darky8:

    Anyhow, I now know more than I did when I started which is the name of the game!  :)

    Indeed it is.  :)

    Steve



  • Hi Darky, if you want you can try and replace the 32.768Mhz crystal X1 on the board.
    I had exactly the same issue as you and doing so fixed my box :)

    http://www.badcaps.net/forum/showthread.php?p=539415


  • Netgate Administrator

    Nice 1st post.  :)

    Steve



  • Sorry for the necro

    but this is what happens to me on both of my X700 boxes after upgrading the CPU . They won't boot unless you permanently remove the CMOS battery. Once you put it back in, it boots once or twice then stops posting. I wonder why?


  • Netgate Administrator

    Unfortunately given the age that all those units are it's very likely to be a component failure.  :(
    Both my x700s no longer boot.

    Time to move on. They likely won't be supported in 2.4 anyway.

    Steve


Log in to reply