Skip to main content
Topic: BusBlaster v4.1a can't connect to JTAG (Read 49 times) previous topic - next topic

BusBlaster v4.1a can't connect to JTAG

Hello everyone,

let me explain you my situation first so that you understand what I want to achieve:
I am currently trying to read out the NAND Flash from a chip that I have here. First I tried to use the BusPirate v4 to do so. Unfortunately it didn't work, I had several issues with flashrom and my other attempts to communicate with the SPI NAND Flash didn't work either.
So I searched for an other option and I saw that I can read out my NAND Flash via JTAG as well. Apparently there is a readmem command, so I wanted to try that out (at this point I don't really care much if it takes way longer like that because I am stagnating for weeks at the same point).

I connected my BusBlaster v4.1a with the corresponding pins and my first attempt was with UrJTAG.
This is the result:
Code: [Select]
UrJTAG 0.10 #1502
Copyright (C) 2002, 2003 ETC s.r.o.
Copyright (C) 2007, 2008, 2009 Kolja Waschk and the respective authors

UrJTAG is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
There is absolutely no warranty for UrJTAG.

WARNING: UrJTAG may damage your hardware!
Type "quit" to exit, "help" for help.

jtag> cable jtagkey pid=0x6010 vid=0x0403 interface=0
Connected to libftd2xx driver.
jtag> detect
Warning: TDO seems to be stuck at 1
jtag>

I looked that up, first I thought I may have connected something wrong, unfortunately I found several posts about the exact same problem. I didn't find a solution though.

So I got curious if it's maybe a problem with UrJTAG so I tried out to access JTAG via OpenOCD.
This is what I got:
Code: [Select]
~/openocd/tcl$ openocd -f interface/ftdi/dp_busblaster.cfg -f target/qualcomm_qca4531.cfg 
Open On-Chip Debugger 0.10.0+dev-00924-g16496488 (2019-08-22-10:23)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
Info : If you need SWD support, flash KT-Link buffer from https://github.com/bharrisau/busblaster
and use dp_busblaster_kt-link.cfg instead
adapter speed: 2000 kHz

Info : auto-selecting first available session transport "jtag". To override use 'transport select <transport>'.
qca4531_ddr2_550_550_init
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 2000 kHz
Error: JTAG scan chain interrogation failed: all ones
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway...
Error: qca4531.cpu: IR capture error; saw 0x1f not 0x01
Warn : Bypassing JTAG setup events due to errors
Error: isa info not available, failed to read cp0 config register: 0
Error: The 'mww' command must be used after 'init'.
Error executing event halted on target qca4531.cpu:

Info : Listening on port 3333 for gdb connections

I have no idea if I am doing something really wrong of if the chip or the BBv4.1a is broken or something else.
Does anyone have an idea what I can try out else or what I can do to fix these issues?

 

Re: BusBlaster v4.1a can't connect to JTAG

Reply #1
Can you check the soldering on your board? At one point people were having problems as they had bad solder joints.

Also can you try
Code: [Select]
cable jtagkey pid=0x6010 vid=0x0403 interface=1
and see if you can detect the CPLD correctly?

Also I would reprogram the CPLD with the jtagkey bitstream, just in case it had the selftest bitstream.

Re: BusBlaster v4.1a can't connect to JTAG

Reply #2
I will come back to you later.

Re: BusBlaster v4.1a can't connect to JTAG

Reply #3
Can you check the soldering on your board? At one point people were having problems as they had bad solder joints.

Also can you try
Code: [Select]
cable jtagkey pid=0x6010 vid=0x0403 interface=1
and see if you can detect the CPLD correctly?

Also I would reprogram the CPLD with the jtagkey bitstream, just in case it had the selftest bitstream.

Hello tayken,

first of all thanks for trying to help me.

I checked the soldering on my board. It looks good to me, there are no pins or components that are desoldered. They are all soldered well to the Board.

Besides of that I tried out using interface=1 instead of interface=0. The result is still the same. It connects to the libftd2xx driver but detect produces the same output as before.

I wanted to reprogram the CPLD but the problem is that on the dangerous prototypes website is written that to do so you need to use a patched .exe file of UrJTAG but I can't find this specific file.
Can you tell me where I can download this patched file?

Re: BusBlaster v4.1a can't connect to JTAG

Reply #4
EDIT:
I managed to find the patched version (at least I think so).
It is named jtag-rev11.exe

I just wanted to see what happens when I try to connect it interface=0 and I got this:

discovery.c:117 urj_tap_detect_register_size() Warning: TDO seems to be stuck at 1
Error: parse.c:208 urj_parse_file() no error: Cannot open file 'C:\Users\XXXXXX/.jtag/rc' to parse

Same result for interface=1.
Don't know if that's better though.

I am still looking for the correct bsdl and svf files for my Bus Blaster v4.1a

EDIT:
I found this on GitHub. Can you please verify that these are the bsdl and svf files that I am looking for?
https://github.com/gbraad/dangerous-prototypes-open-hardware/tree/master/Bus_Blaster/manufacturing_resources/v4.1/Programming

Re: BusBlaster v4.1a can't connect to JTAG

Reply #5
That does seem to be the patched urtjag, bdsl, and svf for the 4.1.
Got a question? Please ask in the forum for the fastest answers.

Re: BusBlaster v4.1a can't connect to JTAG

Reply #6
XC2C64A_VQ100.bsdl, bbv4.svf. these should be the right files. And you should be targeting interface 1, if I recall correctly (because the JTAG tools all use interface 0).

If this is v4, is there some kind of jumper or something that needs to be set for programming mode? That might be the one with the 44 pin CPLD.
Got a question? Please ask in the forum for the fastest answers.

Re: BusBlaster v4.1a can't connect to JTAG

Reply #7
Hello ian,

yes I needed to set a Jumper to access Update Buffer Mode, I was only able to reprogram the CPLD after setting it.
There is also an other Mode, called Normal Mode but I have no idea what it does.
 
Edit:
I found something about normal mode on the dp site. Can't really tell if I need that though:
When MODE is set to normal, the secondary JTAG interface of the FT2232 is connected to multipurpose pins on the CPLD.

Btw I followed the instructions to reprogram it and now I get a different error :/

jtag> cable jtagkey vid=0x0403 pid=0x6010 interface=0
Connected to libftd2xx driver.
jtag> detect
discovery.c:117 urj_tap_detect_register_size() Warning: TDO seems to be stuck at 0
Error: usbconn/libftd2xx.c:127 usbconn_ftd2xx_flush() ftdi/ftd2xx error: FT_Write() failed: io error
jtag> reset
jtag> cable jtagkey vid=0x0403 pid=0x6010 interface=1
Connected to libftd2xx driver.
jtag> detect
discovery.c:117 urj_tap_detect_register_size() Warning: TDO seems to be stuck at 1
Error: part.c:450 urj_part_parts_set_instruction() invalid parameter: NULL parts

When I place the jumper in normal mode I get the same error that I posted before in Reply #4