Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

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

Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Mon Nov 26, 2012 6:30 pm

Hi,
not too long ago I bought a BusPirate v3.a basically to dump the contents of a 1-Wire DS2430 EEPROM in a printer (Fargo PRO-L), as a tool to backup and change the parameters stored in that memory. I was able to test the BP succesfully with an off-circuit 1-wire DS button, I guess the readings were succesful since everytime I've got consistent dumps (not knowing what they have stored).
I've been checking in some forums that users have been using the BP to repair a laptop broken BIOS, to update the firmware of the BIOS Flash chip (SPI), this is where I've failed to make it work. I've also tried to use with an off-circuit 93C46B 3-Wire Serial EEPROM, now that I was able to somehow make it work I always get different results (Data), today I remembered that the BP has a "self-test" function and decided to give it a go, here are my results:

Code: Select all
HiZ>i
Bus Pirate v3.a
Firmware v6.1 r1676  Bootloader v4.1
DEVID:0x0447 REVID:0x3003 (24FJ64GA002 A3)
http://dangerousprototypes.com

HiZ>~
Disconnect any devices
Connect (Vpu to +5V) and (ADC to +3.3V)
Space to continue

Ctrl
AUX OK
MODE LED OK
PULLUP H OK
PULLUP L OK
VREG OK

ADC and supply
5V(4.98) OK
VPU(4.98) OK
3.3V(3.26) OK
ADC(3.27) OK

Bus high
MOSI OK
CLK OK
MISO OK
CS OK

Bus Hi-Z 0
MOSI FAIL
CLK OK
MISO OK
CS OK

Bus Hi-Z 1
MOSI OK
CLK OK
MISO OK
CS OK

MODE and VREG LEDs should be on!
Any key to exit
Found 1 errors.

HiZ>


Thanks in advance,
DRGN997
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby tayken » Mon Nov 26, 2012 9:13 pm

Hmm, can you tell me which version of the firmware you are using? If it is an old one, can you update to a more recent one and do the selftest again? If the problem continues, I'll ask for more stuff to check.

The problem is in open drain mode MOSI pin is not seeing ground. If it was "Hi-Z 1" error, it was easy but this requires some investigation.
User avatar
tayken
Developer
Developer
 
Posts: 1376
Joined: Sat Dec 12, 2009 10:58 am
Location: Tokyo, Japan

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Mon Nov 26, 2012 9:32 pm

Hi tayken,
firmware version it's included in the log that I've posted, you probably overlooked it, here it is anyway:

Firmware v6.1
Bus Pirate v3.a

Originally was running Firmware v5.0 (or v5.1, don't remember) and I did the upgrade today after all the trouble I was having, then I tried the self-test and encountered 1 error. I was thinking of a firmware bug too, but the self-test was run with the latest firmware version. Maybe at some point I caused some damage to a component, that's why I pointed out that at some point was able to use BP with a 1-Wire DS button and tried SPI In-Circuit programming in a laptop without success.
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby tayken » Mon Nov 26, 2012 10:14 pm

Damn! Yep, I overlooked it. :)

OK, I have a manual check program for you. First connect VPU to +5V and MOSI to ADC (Or you can just use a multimeter on MOSI pin):

Then do the following:
Code: Select all
HiZ>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>7
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>1
CS:
1. CS
2. /CS *default

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

(1)>1
Ready
3WIRE>W
POWER SUPPLIES ON
3WIRE>P
Pull-up resistors ON
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>-
DATA OUTPUT, 1
3WIRE>d
VOLTAGE PROBE: 3.30V
3WIRE>_
DATA OUTPUT, 0
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>


After this, can you tell me what the voltage levels are?
User avatar
tayken
Developer
Developer
 
Posts: 1376
Joined: Sat Dec 12, 2009 10:58 am
Location: Tokyo, Japan

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Mon Nov 26, 2012 11:37 pm

I did followed your instructions and this is what I've got (connections made: connected VPU to +5V and MOSI to ADC), there are some differences from what you posted:

Code: Select all
HiZ>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>7
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>1
CS:
1. CS
2. /CS *default

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

(1)>1
Ready
3WIRE>W
POWER SUPPLIES ON
3WIRE>P
Pull-up resistors ON
3WIRE>d
VOLTAGE PROBE: 4.00V
3WIRE>-
DATA OUTPUT, 1
3WIRE>d
VOLTAGE PROBE: 4.53V
3WIRE>_
DATA OUTPUT, 0
3WIRE>d
VOLTAGE PROBE: 4.00V
3WIRE>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      I      I   
GND      3.27V   4.98V   4.00V   4.98V   L      L      H      H      H   
3WIRE>
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby tayken » Tue Nov 27, 2012 1:34 am

I have a v2go, so I believe some resistor values are different, that is why sometimes the voltages are different.

After checking that out, I can say that open-drain is toast. You may still be able to use it, can you do the same test with selecting the normal output and without the power supplies and pullups? Sth like this:
Code: Select all
HiZ>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>7
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>1
CS:
1. CS
2. /CS *default

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

(1)>2
Ready
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>-
DATA OUTPUT, 1
3WIRE>d
VOLTAGE PROBE: 3.27V
3WIRE>_
DATA OUTPUT, 0
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>


That way I can determine if the whole pin got damaged, or just the open-drain transistor.
User avatar
tayken
Developer
Developer
 
Posts: 1376
Joined: Sat Dec 12, 2009 10:58 am
Location: Tokyo, Japan

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Tue Nov 27, 2012 2:17 am

I did the same as the previous post (connections made: connected VPU to +5V and MOSI to ADC), results were similar to what you've posted:

Code: Select all
HiZ>m
1. HiZ
2. 1-WIRE
3. UART
4. I2C
5. SPI
6. 2WIRE
7. 3WIRE
8. LCD
x. exit(without change)

(1)>7
Set speed:
1. ~5KHz
2. ~50KHz
3. ~100KHz
4. ~400KHz

(1)>1
CS:
1. CS
2. /CS *default

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

(1)>2
Ready
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>-
DATA OUTPUT, 1
3WIRE>d
VOLTAGE PROBE: 3.28V
3WIRE>_
DATA OUTPUT, 0
3WIRE>d
VOLTAGE PROBE: 0.00V
3WIRE>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   0.00V   0.00V   0.00V   L      L      L      H      L   
3WIRE>


Thanks for the help so far and I hope it can be easily fixed, I have some equipment to remove any of the chips if necessary.
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby tayken » Tue Nov 27, 2012 2:41 am

Well, the problem seems to be in the uC, specifically MISO pin open-drain transistor, probably it got a voltage more than 6 V. Funny thing is the voltage level changes even in open drain mode, strange. You can still use it in normal mode, no harm there. But if you want to interface it with another IC in another voltage level (say 5 V), you cannot do it. The only repair I can suggest is replacing the uC with a new one.
User avatar
tayken
Developer
Developer
 
Posts: 1376
Joined: Sat Dec 12, 2009 10:58 am
Location: Tokyo, Japan

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Tue Nov 27, 2012 11:02 pm

The uC full part number should be PIC24FJ64GA002-I/SS, right? Is there a slight possibility that it could be something else besides the uC?
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby tayken » Tue Nov 27, 2012 11:29 pm

drgn997 wrote:The uC full part number should be PIC24FJ64GA002-I/SS, right?

Yep, it is the SSOP28 package on v3.x

drgn997 wrote:Is there a slight possibility that it could be something else besides the uC?

I really don't think so. If the problem was on Hi-Z 1, then I would say the problem is the CD4066D or the pullup resistor. If it was PCB defect, it would show up as MOSI pin failing all tests. You may want to do a visual test for a bad solder joint, but all high-low state measurements are internal, so that shouldn't show up as an error like this.

If you don't trust yourself with a soldering iron, I can help. :) I'll also ask Ian if there can be another problem I missed.
User avatar
tayken
Developer
Developer
 
Posts: 1376
Joined: Sat Dec 12, 2009 10:58 am
Location: Tokyo, Japan

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby drgn997 » Tue Dec 04, 2012 9:45 am

tayken, thanks for your help! I'll report back in about 4-5 weeks once I receive the uC and get it replaced.

DRGN997

Edit: I received a replacement chip that was bought online (Jan 7th), but not being able to program it had to abandon this for a while, I'll report back once I get the uC programmed + replaced. This BP was bought from Seed Studio.
Last edited by drgn997 on Tue Sep 10, 2013 11:52 pm, edited 1 time in total.
drgn997
Newbie
Newbie
 
Posts: 6
Joined: Mon Nov 26, 2012 5:48 pm

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby ian » Wed Dec 05, 2012 1:36 am

This is a strange one, I have not seen it before. If there is no obvious soldering bridge I would assume chip defect.

If it is a Seeed Studio board please contact Seeed for a replacement and reference this thread. I'm sorry about the defect.
User avatar
ian
Crew
Crew
 
Posts: 10561
Joined: Mon Jul 06, 2009 6:14 am

Re: Self-test fail, Bus Hi-Z 0 -> MOSI FAIL

Postby luftek » Mon Jul 21, 2014 12:53 pm

deleted
Let air fill your lungs! :)
luftek
Newbie
Newbie
 
Posts: 16
Joined: Wed Nov 27, 2013 5:14 am
Location: Maribor, Slovenia


Return to Bus Pirate Support