Help dumping the 25Q32JVSIQ EEPROM

Hacking multi-tool. Get one for $30, including worldwide shipping.

Help dumping the 25Q32JVSIQ EEPROM

Postby bZm » Sun Jul 09, 2017 12:20 pm

Hello, bit new to all of this; bought a bus pirate yesterday and an IC clip from sparkfun. I have an old belkin router that has the following chip: 25Q32JVSIQ

I have the datasheet (forums wont let me post link because I'm a new user).

I was using the following post as help: http://dangerousprototypes.com/forum/viewtopic.php?f=4&t=7950#p63904

I was using flashrom Bus Pirate docs as a pin out reference; and noticed that most of the time all output is 0xFF; so I reversed the MOSI/MISO based on http://dangerousprototypes.com/docs/Bus_Pirate_I/O_Pin_Descriptions (seemed backwards?). I then noticed that virtually all output was 0x00.

One other thing that I've noticed is that I only see output when I boot up the device; if I give it power to VCC I don't see anything.

I've tried [0x9F rrr] to no avail.

I think I have the PINs correct; my current setup:

Code: Select all
/CS -> WHITE -> CS
DO -> GREY -> MOSI
GND -> BROWN -> GND
VCC -> RED -> 3v3
CLK -> PURPLE -> CLK
DI -> BLACK -> MISO


I noticed that if I reverse MISO/MOSI PINs upon reading I'm seeing 0xFF or 0x00 (currently its 0x00 with pinout above).

My configuration:

Code: Select all
SPI>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)
(1)>5
Set speed:
1. 30KHz
2. 125KHz
3. 250KHz
4. 1MHz
(1)>4
Clock polarity:
1. Idle low *default
2. Idle high
(1)>
Output clock edge:
1. Idle to active
2. Active to idle *default
(2)>
Input sample phase:
1. Middle *default
2. End
(1)>
CS:
1. CS
2. /CS *default
(2)>
Select output type:
1. Open drain (H=Hi-Z, L=GND)
2. Normal (H=3.3V, L=GND)
(1)>


When I try to read with the JEDEC:

Code: Select all
SPI>[0x9F rrr]
/CS ENABLED
WRITE: 0x9F
READ: 0x00
READ: 0x00
READ: 0x00
/CS DISABLED


Any help is much appreciated; thanks!
bZm
Newbie
Newbie
 
Posts: 3
Joined: Sun Jul 09, 2017 12:07 pm

Re: Help dumping the 25Q32JVSIQ EEPROM

Postby USBEprom » Sun Jul 09, 2017 3:39 pm

Hi bZm.

bZm wrote:
I think I have the PINs correct; my current setup:

Code: Select all
/CS -> WHITE -> CS
DO -> GREY -> MOSI
GND -> BROWN -> GND
VCC -> RED -> 3v3
CLK -> PURPLE -> CLK
DI -> BLACK -> MISO




It seems to be the probe cable pin reference for Seeed Studio or Adafruit and it does not match with the SparkFun one.
Please take a look at this:

http://dangerousprototypes.com/docs/Com ... le_pinouts

I guess the chip you wrote is this:

https://www.winbond.com/resource-files/ ... 302016.pdf

However, also based on the datasheet, DO/(IO1) [Data Output/(Data Input Output 1)] is MISO, not MOSI as you have used.
Same error for DI/(IO0) [Data Input/(Data Input Output 0) which is MOSI, not MISO as you used it.
Unless you remove the chip from the board the Bus Pirate can not power the whole device, so the correct way is booting up it with the its own power supply omitting to link the 3,3V from the Bus Pirate.
So in the end, actually for SparkFun Bus Pirate and its own cable the real connections are these:

SparkFun cable pin reference:

/CS -> RED -> CS
DO -> BROWN -> MISO
GND -> BLACK -> GND
CLK -> YELLOW -> CLK
DI -> ORANGE -> MOSI


Finally, as explained in the above link, since the power supply for the chip should be 3,3V, better if you check it with a voltmeter before connect the Bus Pirate, for 'Select output type:' you need to choose '2. Normal (H=3.3V, L=GND)', not '1. Open drain (H=Hi-Z, L=GND)' as you did.
So please use this:

Select output type:
1. Open drain (H=Hi-Z, L=GND)
2. Normal (H=3.3V, L=GND)
(2)>


Repeat that in order to avoid to damage your Bus Pirate or something else, it is better if you check the real power supply voltage value with a voltmeter before starting to connect all things.
In case the actual value for the supply voltage is 5V then you need to use the pull-up resistors which are required for mixed-voltage interfacing and course choose '1. Open drain (H=Hi-Z, L=GND)' for 'Select output type:'.
Please pay close attention to this thing!
Let us know.

Be seeing you.

U.Sb
USBEprom
Full Member
Full Member
 
Posts: 121
Joined: Wed Mar 14, 2012 4:09 pm

Re: Help dumping the 25Q32JVSIQ EEPROM

Postby bZm » Mon Jul 10, 2017 1:05 am

Hi USBEprom,

Thanks for the help; cant believe I missed that sparkfun pinout... Thought the one on their site was relevant.

I did the pinout as suggested but still receive all 0x00 when running the following:

Code: Select all
SPI>[0x9f rrr]
/CS ENABLED
WRITE: 0x9F
READ: 0x00
READ: 0x00
READ: 0x00


On the datasheet, it says:

After power-up, /CS must transition from high to low before a new instruction will be accepted.


I'm interpreting this as I must prefix everything with ] first? So, I tried the following:

Code: Select all
SPI>][0x9f rrr]
/CS DISABLED
/CS ENABLED
WRITE: 0x9F
READ: 0x00
READ: 0x00
READ: 0x00


The voltages are the following:

Code: Select all
SPI>v
Pinstates:
1.(BR)   2.(RD)   3.(OR)   4.(YW)   5.(GN)   6.(BL)   7.(PU)   8.(GR)   9.(WT)   0.(Blk)
GND   3.3V   5.0V   ADC   VPU   AUX   CLK   MOSI   CS   MISO
P   P   P   I   I   I   O   O   O   I   
GND   0.00V   1.09V   0.98V   0.00V   L   L   H   L   L   


Thanks again!
bZm
Newbie
Newbie
 
Posts: 3
Joined: Sun Jul 09, 2017 12:07 pm

Re: Help dumping the 25Q32JVSIQ EEPROM

Postby bZm » Mon Jul 10, 2017 1:40 pm

One thing that I noticed is if I have the IC Clip on the chip while the board boots all the lights stay on (not sure why?). If I remove the clip and boot the board the lights all come on and then flicker; like its able to complete the boot. Any idea why its doing this?
bZm
Newbie
Newbie
 
Posts: 3
Joined: Sun Jul 09, 2017 12:07 pm

Re: Help dumping the 25Q32JVSIQ EEPROM

Postby USBEprom » Mon Jul 10, 2017 2:24 pm

Hi bZm.

bZm wrote:The voltages are the following:

Code: Select all
SPI>v
Pinstates:
1.(BR)   2.(RD)   3.(OR)   4.(YW)   5.(GN)   6.(BL)   7.(PU)   8.(GR)   9.(WT)   0.(Blk)
GND   3.3V   5.0V   ADC   VPU   AUX   CLK   MOSI   CS   MISO
P   P   P   I   I   I   O   O   O   I   
GND   0.00V   1.09V   0.98V   0.00V   L   L   H   L   L   



Something is wrong because you have 1.09V on +5V, seems that CS is set wrong too and even 0.98V on ADC is weird.
Pay close attention to what you are doing, you might be damaging something!
Have you checked the actual voltage value of the power supply?
Is it +5V or +3,3V?
Unless the chip is alone the Bus Pirate can not power the whole device, so the correct way is booting up the router with its own power supply omitting to link the 3,3V from the Bus Pirate.
If the power supply voltage is 5V then you must use the pull-up resistors which are required for mixed-voltage interfacing and course choose '1. Open drain (H=Hi-Z, L=GND)' for 'Select output type:'.
Are you sure belkin is on while you are trying to access the chip?
Feed voltage it is surely wrong, maybe you are using wrong wires, check out all them before to go ahead or you could break something!
[0x9f rrr] or ][0x9f rrr] should work anyway, it does not matter if power supply voltage is correct and all the needed wires are hooked right.
At first you must use low speeds for SPI, the 4MHz you wrote yesterday could be too much.
Only after being verified that everything works properly you will be able to increase the speed.
Instead to use 'v (Show volts/states)' try to use 'i (Versioninfo/statusinfo)'.

bZm wrote:One thing that I noticed is if I have the IC Clip on the chip while the board boots all the lights stay on (not sure why?). If I remove the clip and boot the board the lights all come on and then flicker; like its able to complete the boot. Any idea why its doing this?


I know nothing, maybe it is matter of wrong wires .
Anyway before all you must check them together with the power supply voltage.
Another thing could be that the Bus Pirate should be set HiZ while booting belkin otherwise it is possible there are interferences among the devices.

Be seeing you.

U.Sb
USBEprom
Full Member
Full Member
 
Posts: 121
Joined: Wed Mar 14, 2012 4:09 pm


Return to Bus Pirate Support