Image Map Image Map
Page 1 of 2 12 LastLast
Results 1 to 10 of 15

Thread: In circuit flashing of an SST25VF032B

  1. #1
    Join Date
    Mar 2009
    Location
    Dublin, CA USA
    Posts
    2,906
    Blog Entries
    1

    Default In circuit flashing of an SST25VF032B

    So I have a question for the more experienced engineers out there. I have a Dell R610 server which has been bricked by a BIOS update, not once, but twice now. I was running Version 2.0.13 of their system BIOS, updated it to 6.4.0 and it was toast. So I jumped on ebay, bought a new board had it arrive with version 6.1.0. So based on my careful reading of the Dell documentation and forum posts I came to the conclusion that I needed to step the BIOS up, though 2 or 3 version jumps was ok as per the internet concensus.

    So following the instructions on Dell's site I did all the things right, flashed it to 6.4.0, only 2 versions up. And guess what? It has been bricked again. I am so pissed off at Dell right...

    But at any rate, the BIOS chip is a SST25VF032B, which supported by my MiniPro flasher. I went out and bought one of these and tried it with the machine powered off and the MiniPro software was telling me that it was going into overcurrent protection. So I disconnected the voltage pin from the minipro and powered up the server. It seemed to program it, though it failed verification (it also could not get the chip ID either) and when I read from it all I got was all "FF" in the data buffer.

    Here is the data sheet for the chip:http://ww1.microchip.com/downloads/e.../20005071B.pdf

    Am I have this issue because the programmer does not support ICSP? Or could it be something else? Is there a better way to try and program this chip without removing it?

    IBM 5160 - 360k, 1.44Mb Floppies, NEC V20, 8087-3, 45MB MFM Hard Drive, Vega 7 Graphics, IBM 5154 Monitor running MS-DOS 5.00
    IBM PCJr Model 48360 640kb RAM, NEC V20,, jrIDE Side Cart, 360kb Floppy drives running MS-DOS 5.00
    Evergreen Am5x86-133 64Mb Ram, 8gb HDD, SB16 in a modified ATX case running IBM PC-DOS 7.10

  2. #2
    Join Date
    Mar 2011
    Location
    Atlanta, GA, USA
    Posts
    1,590

    Default

    I doubt you will have much success programming this in-circuit. If it were a part with OC/OD interface pins like I2C then maybe. But SPI is all uni-directional push-pull. The programmer in parallel is fighting with the drivers on the motherboard chipset. It's possible you might have some luck if you hold the motherboard in constant reset (tape the switch down). That might allow you to drive the pins correctly and read/write the part.
    "Good engineers keep thick authoritative books on their shelf. Not for their own reference, but to throw at people who ask stupid questions; hoping a small fragment of knowledge will osmotically transfer with each cranial impact." - Me

  3. #3
    Join Date
    Mar 2009
    Location
    Dublin, CA USA
    Posts
    2,906
    Blog Entries
    1

    Default

    Thanks for the reply.

    Quote Originally Posted by eeguru View Post
    It's possible you might have some luck if you hold the motherboard in constant reset (tape the switch down). That might allow you to drive the pins correctly and read/write the part.
    Alas, this is a server board, and there is no reset button.

    The bios chip is silk screened U_SPI_BIOS and there is a 3 pin header very close to it labelled J_DBG_SPI, could that help me program this thing?

    IBM 5160 - 360k, 1.44Mb Floppies, NEC V20, 8087-3, 45MB MFM Hard Drive, Vega 7 Graphics, IBM 5154 Monitor running MS-DOS 5.00
    IBM PCJr Model 48360 640kb RAM, NEC V20,, jrIDE Side Cart, 360kb Floppy drives running MS-DOS 5.00
    Evergreen Am5x86-133 64Mb Ram, 8gb HDD, SB16 in a modified ATX case running IBM PC-DOS 7.10

  4. #4
    Join Date
    Mar 2011
    Location
    Atlanta, GA, USA
    Posts
    1,590

    Default

    Quote Originally Posted by lutiana View Post
    The bios chip is silk screened U_SPI_BIOS and there is a 3 pin header very close to it labelled J_DBG_SPI, could that help me program this thing?
    Hard to say. Try looking in the MB manual or Googling for more info. It could be that's a pass-through to the SPI flash chip. But it could just as easily be some other debug/test interface for manufacturing QA.
    "Good engineers keep thick authoritative books on their shelf. Not for their own reference, but to throw at people who ask stupid questions; hoping a small fragment of knowledge will osmotically transfer with each cranial impact." - Me

  5. #5

    Default

    it's SOIC right? just pop it off with a hot air tool, flash it, and solder it back down

  6. #6

    Default

    For 3.3V SPI flash (8 pin package) you can get a cheap USB programming dongle with a CH341 chip, and then use ASProgrammer (software) to read/write the chip. They are available in a kit with a clip-on interface for chips that are soldered down. I used this on an MSI motherboard BIOS.

  7. #7

    Default

    Quote Originally Posted by maxtherabbit View Post
    it's SOIC right? just pop it off with a hot air tool, flash it, and solder it back down
    ^ This.

    You might have a hard time obtaining a good image to flash onto the chip though. the R610 is UEFI with iDRAC and all the other Dell specific mess, and the layout probably won't match the firmware files the flasher uses.

    I've had to rescue an Intel DG3xH board, and that was a nightmare of pushing small chunks back and forth, mixed with consulting russian forums.

    My Dell R910 boards have occasionally had issues with the tables that keep track of system errors, and there was a specific jumper setting (not documented officially anywhere) that resets those tables.

  8. #8
    Join Date
    Apr 2010
    Location
    Albany, OR USA
    Posts
    940
    Blog Entries
    1

    Default

    Quote Originally Posted by maxtherabbit View Post
    it's SOIC right? just pop it off with a hot air tool, flash it, and solder it back down
    But, you might want to put it in a socket, in case you have to repeat the task.

  9. #9
    Join Date
    Mar 2009
    Location
    Dublin, CA USA
    Posts
    2,906
    Blog Entries
    1

    Default

    Quote Originally Posted by GrizzlyAdams View Post
    ^ This.

    You might have a hard time obtaining a good image to flash onto the chip though. the R610 is UEFI with iDRAC and all the other Dell specific mess, and the layout probably won't match the firmware files the flasher uses.

    I've had to rescue an Intel DG3xH board, and that was a nightmare of pushing small chunks back and forth, mixed with consulting russian forums.

    My Dell R910 boards have occasionally had issues with the tables that keep track of system errors, and there was a specific jumper setting (not documented officially anywhere) that resets those tables.
    I was planning on just flashing it with the raw files from Dell. The mini pro seems to read them just fine.

    As for desoldering, I am thinking I may try that, though I don't have a hot air gun, and I am concerned that my skills are not good enough to solder it back on. Adding a socket is not a bad idea, didn't think they made surface mount sockets.

    IBM 5160 - 360k, 1.44Mb Floppies, NEC V20, 8087-3, 45MB MFM Hard Drive, Vega 7 Graphics, IBM 5154 Monitor running MS-DOS 5.00
    IBM PCJr Model 48360 640kb RAM, NEC V20,, jrIDE Side Cart, 360kb Floppy drives running MS-DOS 5.00
    Evergreen Am5x86-133 64Mb Ram, 8gb HDD, SB16 in a modified ATX case running IBM PC-DOS 7.10

  10. #10
    Join Date
    Mar 2011
    Location
    Atlanta, GA, USA
    Posts
    1,590

    Default

    As GA said, the format as it sits on ROM storage likely isn't 1-for-1 byte compatible with the file format.
    "Good engineers keep thick authoritative books on their shelf. Not for their own reference, but to throw at people who ask stupid questions; hoping a small fragment of knowledge will osmotically transfer with each cranial impact." - Me

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •