[Problem gelöst, FBF neu geflasht über JTag] FBF7050, adam2 Bootloader deadlock?

feadi schrieb:
Hm, the absence of the spartan surprises me. one year ago i taked a look in a 7141 and there was a spartan. it seems that you have a newer version.

try to read the IMPCODE register. in this register is the answer to the question 'is it possible to flash the fbf with this software?'

okay, lets go:
- power down 7141
- connect cable to pc
- start 'wrt.exe -backup:cfe /skipdetect'
- power on 7141

then post wrt.exe's output here.

- Feadi
Ok. Using your modified version of wrt.exe here is what I get if I first enter the command and then power on the fritz

Code:
c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 0

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
    - EJTAG IMPCODE ....... : 10011011111011011011011001110110 (9BEDB676)
    - EJTAG Version ....... : Unknown (4 is a reserved value)
    - EJTAG DMA Support ... : Yes

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...
If I instead first power on the fritz and then enter the command:

Code:
c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 0

CPU Chip ID: 11111111111111111111111111110000 (FFFFFFF0)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
    - EJTAG IMPCODE ....... : 11111111111111111111111111110000 (FFFFFFF0)
    - EJTAG Version ....... : Unknown (7 is a reserved value)
    - EJTAG DMA Support ... : No

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...

I'll keep my fingers crossed.
Thank you
Mike
 
... when I unplug the power I get also this

Code:
wrt54g.c1217: >1<

Probing Flash at (Flash Window: 0x1fc00000) ... wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
Done

*** Unknown or NO Flash Chip Detected ***wrt54g.c1284: >4<

Thank you
 
Im sorry, i forgot one parameter. the right command is:
'wrt.exe -backup:cfe /skipdetect /instrlen:5'

Please try again and post the output.

- Feadi
 
Ok. Here is the output:

Code:
c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5 /nocwd

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
    - EJTAG IMPCODE ....... : 10011011111011011011011001110110 (9BEDB676)
    - EJTAG Version ....... : Unknown (4 is a reserved value)
    - EJTAG DMA Support ... : Yes

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ... Skipped
wrt54g.c1217: >1<

Probing Flash at (Flash Window: 0x1fc00000) ... wrt54g.c1229: >2<
It stops here and only when I unplug the power it prints the following:

Code:
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
wrt54g.c1229: >2<
wrt54g.c1245: >3<
wrt54g.c1260: >3<
wrt54g.c1272: >3<
Done

*** Unknown or NO Flash Chip Detected ***wrt54g.c1284: >4<


 *** REQUESTED OPERATION IS COMPLETE ***
In the command line I added also /nocwd or it would get stuck at "Clearing Watchdog". Besides this, nothing is different.
Thank you
 
Zuletzt bearbeitet:
Your impcode looks bad :(

Code:
                          VVV   000   0    0000   0   0000000000000 
- EJTAG IMPCODE ....... : 010 0 000 1 0 10 0000 0 0 1 0000000000000 0 (41404000)
- EJTAG IMPCODE ....... : 100 1 101 1 1 11 0110 1 1 0 1101100111011 0 (9BEDB676)

VVV stands for version.

In the EJTAG specification is this encoding for those 3 bits:
000 version 1 and 2.0
001 version 2.5
010 version 2.6
011 version 3.1
100 - 111 reserved

either you have a new version of ejtag (i dont think so) or your impcode is corrupted, probably by reflections in your cable.
in first case it is currently not possible to recover your fbf.
second case requires some soldering.

what values does the resistors in your cable have? do you used 100 Ohm ? (if so, try 220 - 500 Ohm)
Try to solder TCK's resistor as close as possible to the fbf, and readout the impcode again.

regards, Feadi
 
Hi,

The resistors are all 100 ohm and the one on the TCK is now soldered directly on the fritz.
Unfortunately I get the same result.

In such case do you think I shoud change it to anything between 220 and 500 ohm?

Ach. I don't have one right now. I need to buy it.

If I undestand correctly the first 3 numbers must be:

000 for version 1 and 2.0
001 for version 2.5
010 for version 2.6
011 for version 3.1

If I manage to have one of those numbers with the new resistor do you think the cable will work?

Thank you
 
You dont need to buy a new one, because 3x 100 Ohm resistors in series have 300 Ohm. ( 100+100+100 Ohm )

Alpamayo schrieb:
If I manage to have one of those numbers with the new resistor do you think the cable will work?

Exactly.

best regards, Feadi
 
Thanks Feadi.

I already tried with 2 resistors I already had with no success.
Tomorrow (Monday) morning I'll buy some new resistors (I don't have others anyway) and will run some tests.

Then I will immediately post the results.
Thanks for your assistance.

Alpamayo
 
Ok. I tried 5 different resistors.
With a 390 ohm resistor (connected directly on the NON powered FBF), and using the original wrt54g.exe, I get:


G:\fritz>wrt54g.exe -flash:custom /skipdetect /instrlen:5 /nocwd /window:90000000 /start:90000000 /lenght:10000

====================================
WRT54G/GS EJTAG Debrick Utility v4.8
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

- EJTAG IMPCODE ....... : 00000000000000000000000000000000 (00000000)
- EJTAG Version ....... : 1 or 2.0
- EJTAG DMA Support ... : Yes

Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Done
Halting Processor ... <Processor did NOT enter Debug Mode!> ... Done
Clearing Watchdog ... Skipped

Probing Flash at (Flash Window: 0x90000000) ... Done

*** Unknown or NO Flash Chip Detected ***

*** REQUESTED OPERATION IS COMPLETE ***


again with NON POWERED FBF

G:\fritz>wrt54g.exe -backup:cfe /skipdetect

====================================
WRT54G/GS EJTAG Debrick Utility v4.8
====================================

Probing bus ... Done

Instruction Length set to 0

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

- EJTAG IMPCODE ....... : 00000000000000000000000000000000 (00000000)
- EJTAG Version ....... : 1 or 2.0
- EJTAG DMA Support ... : Yes

Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Done
Halting Processor ... <Processor did NOT enter Debug Mode!> ... Done
Clearing Watchdog ... Done

Probing Flash at (Flash Window: 0x1fc00000) ... Done

*** Unknown or NO Flash Chip Detected ***

*** REQUESTED OPERATION IS COMPLETE ***

+++++++++++++++++++++++++++++++++++++++++++++++++++

With your wrt.exe

c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 10011011111011011011011001110110 (9BEDB676)
- EJTAG Version ....... : Unknown (4 is a reserved value)
- EJTAG DMA Support ... : Yes

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


With power on and the original wrt54g.exe I instead get:

G:\fritz>wrt54g.exe -backup:cfe /skipdetect

====================================
WRT54G/GS EJTAG Debrick Utility v4.8
====================================

Probing bus ... Done

Instruction Length set to 0

CPU Chip ID: 11111111111111111111111111110000 (FFFFFFF0)
*** CHIP DETECTION OVERRIDDEN ***

- EJTAG IMPCODE ....... : 11111111111111111111111111110000 (FFFFFFF0)
- EJTAG Version ....... : Unknown (7 is a reserved value)
- EJTAG DMA Support ... : No

Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...


Why does the original wrt54g.exe detect the JTAG only when the FBF is not powered?

I tried 5 different resistors:

220 ohm
330 ohm
390 ohm
470 ohm
680 ohm.

Only with 390 and 470 I got unstable results. Sometimes the JTAG was detected, some other times it wasn't (with the other resistors it was always negative).

I also noticed that there was no difference if I soldered the resistor not directly on the FBF. I'm confused.

Thank you

Alpamayo
 
Zuletzt bearbeitet:
Today i took a second look on your FBF, and i found the Spartan. It is labeld '3S250E' and is a Spartan 3E ('XC3S250E'). Then i looked in the Spartan3E datasheet and i found this: (look at picture in attachment)

Alpamayo schrieb:
CPU Chip ID: 00000001110000011010000010010011 (01C1A093)

Now i know: wrt.exe is not communicating to the FBF-CPU, it communicates to the spartan!
we have to disable the spartan, so wrt.exe is talking directly to the CPU.

first we can try to set the spartan to BYPASS-MODE. for this, i added three features to the wrt.exe:
- '-testir' is testing the length of the instruction register,
- '/instrpostfix:0' sets devices after the target to BYPASS,
- '/instrprefix:0' sets devices before the target to BYPASS.

now try this:
- connect FBF & power on
- execute 'wrt.exe -testir'

i expect that instruction register length whould be exactly 13. ( 5 FBF-CPU + 8 Spartan )

we dont know which one (CPU or spartan) is the first in the jtag chain, so we have to try both combinations. try this commands:
'wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrpostfix:8'
'wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrprefix:8'

and post the 'CPU Chip ID'.

best regards, Feadi
 

Anhänge

  • spartan.png
    spartan.png
    26.8 KB · Aufrufe: 155
  • wrt.zip
    144.4 KB · Aufrufe: 76
Thanks. Here is a not very conforting result :(

c:\FRITZ\WRT>wrt.exe -testir

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

JTAG IR REGISTER LEN: 0
JTAG IR REGISTER LEN: 0
JTAG IR REGISTER LEN: 0
exit, Premere un tasto per continuare . . .


c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrpostfix:8

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***


reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 01000101001011110110101010011010 (452F6A9A)
- EJTAG Version ....... : 2.6
- EJTAG DMA Support ... : No

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...

but, other times I got:

reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 01000101001011111010101010011010 (452FAA9A)
- EJTAG Version ....... : 2.6
- EJTAG DMA Support ... : Yes

reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 01000110100101111010101010011010 (4697AA9A)
- EJTAG Version ....... : 2.6
- EJTAG DMA Support ... : Yes

and so on.


c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrprefix:8 /nocwd

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***


reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 10001010010111101101011010011010 (8A5ED69A)
- EJTAG Version ....... : Unknown (4 is a reserved value)
- EJTAG DMA Support ... : No

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ... Skipped
1

Probing Flash at (Flash Window: 0x1fc00000) ... 2

other times instead:

reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 10001010010111110101010100111010 (8A5F553A)
- EJTAG Version ....... : Unknown (4 is a reserved value)
- EJTAG DMA Support ... : No


The JTAG wires are super short and on the TCK there is a 390 ohm resistor. The EJTAG IMPCODE is almost always different. :confused:

Alpamayo
 
Alpamayo schrieb:
JTAG IR REGISTER LEN: 0

This must be any other value than Zero. Did you power the FBF before executing 'wrt.exe -testir' ? if yes, this is a cable problem. Maybe a shortcut.

regards, Feadi
 
Thanks Feadi. I will totally remake the cable connections and post the results.
 
I've made the cable all over again (12 cm). I inspected the job with a magnifying glass and I don't seem to see any shortcuts.
Unfortunately the result is not conforting at all.

c:\FRITZ\WRT>wrt.exe -testir

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

JTAG IR REGISTER LEN: 0
JTAG IR REGISTER LEN: 0
JTAG IR REGISTER LEN: 0
exit, Premere un tasto per continuare . . .

c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrpostfix:8

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 11111111111111111111111111111110 (FFFFFFFE)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
- EJTAG IMPCODE ....... : 11111111111111111111111111111110 (FFFFFFFE)
- EJTAG Version ....... : Unknown (7 is a reserved value)
- EJTAG DMA Support ... : No

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...

c:\FRITZ\WRT>wrt.exe -backup:cfe /skipdetect /instrlen:5 /instrprefix:8

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 11111111111111111111111111111110 (FFFFFFFE)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
- EJTAG IMPCODE ....... : 11111111111111111111111111111110 (FFFFFFFE)
- EJTAG Version ....... : Unknown (7 is a reserved value)
- EJTAG DMA Support ... : No

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... <Processor Entered Debug Mode!> ... Done
Clearing Watchdog ...

G:\fritz>wrt54g.exe -probeonly

====================================
WRT54G/GS EJTAG Debrick Utility v4.8
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 10000000111000001010000010010011 (80E0A093)
*** Unknown or NO CPU Chip ID Detected ***

*** Possible Causes:
1) WRT54G/GS is not Connected.
2) WRT54G/GS is not Powered On.
3) Improper JTAG Cable.
4) Unrecognized CPU Chip ID.

wrt.exe -flash:custom /noerase /nobreak /nodma /skipdetect /instrlen:5 /window:0x90000000 /start:0x90000000 /length:0x10000 /nocwd

====================================
WRT54G/GS EJTAG Debrick Utility v4.5
====================================

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000000 (00000000)
*** CHIP DETECTION OVERRIDDEN ***

reading IMPCODE register... 00000000000000000000000000000000 (00000000)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
reading IMPCODE register... 11111111111111111111111111111111 (FFFFFFFF)
- EJTAG IMPCODE ....... : 01100110111101101101011001110110 (66F6D676)
- EJTAG Version ....... : Unknown (3 is a reserved value)
- EJTAG DMA Support ... : No
*** DMA Mode Forced Off ***

Premere un tasto per continuare . . .
Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... Skipped
Clearing Watchdog ... Skipped
1

Probing Flash at (Flash Window: 0x90000000) ... 2


The resistor on the TCK is 390 ohm.

I'm starting to believe that some hardware components in the FBF might be compromised. I don't know really what to think. :(

Alpamayo
 
Zuletzt bearbeitet:
Do you own a Ohm-Meter and a Volt-Meter? If so, use this testprogram (in attachment) and the Voltmeter to ensure that the signals arrive the FBF. Use the ohm-meter to measure the overall resistance from pc connector to FBF.

If you dont own this intrumenst, i will check it for you. you just have to pay for shipment in both directions.

best regards, Feadi
 

Anhänge

  • feadi-jtag.zip
    135.3 KB · Aufrufe: 160
Yes, I do have one that I use to measure voltages mainly. It's also an Ohm-meter.
I'll do my best to measure the signals, but ... I'm not sure I understand exactly how your progam works.
If you could give me step-by-step instructions I'd appreciate it. Or, if you prefer, I will send you my fritz directly and, of course, I will pay the two-way shipment.

Thanks so much.
Alpamayo
 
Zuletzt bearbeitet:
okay, step by step:
- connect & power FBF
- start feadi-jtag
- press '2' <return>
- now the program shows you the state of TDI, TDO, TMS & TCK
- use the voltmeter to measure voltages (TDI,TMS,TCK) on the FBF side (should be 3,3 V)
- press '1', '3', '4', <return>
- and use the voltmeter to measure voltages again (TDI,TMS,TCK) (should be 0 V)

regards, Feadi
 
ok, I did it. It was exactly like you said. Those were the signals expected.

Is it good or bad? :)

Alpamayo
 
okay, thats well.

now measure the overall resistance of TDI,TDO,TMS and TCK, try this:
- poweroff FBF
- disconnect FBF from PC
- use ohm-meter on:
-- pcconnector[2] and fbf[TDI]
-- pcconnector[3] and fbf[TCK]
-- pcconnector[4] and fbf[TMS]
-- pcconnector[13] and fbf[TDO]
-- pcconnector[GND] and fbf[GND]

and post values.

best regards, Feadi
 
Ok. Here are the values:

-- pcconnector[2] and fbf[TDI] ----------------> 100 ohm
-- pcconnector[3] and fbf[TCK] ----------------> +/-360 ohm (the ohm-meter is analogic)
-- pcconnector[4] and fbf[TMS]----------------->100 ohm
-- pcconnector[13] and fbf[TDO]---------------> 100 ohm
-- pcconnector[GND] and fbf[GND]-------------> 0 ohm

So, I guess the readings are ok, right?

Regards, Alpamayo
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.