Skip to main content
Topic: urJTAG for Bus Blaster v2 JTAG B (Read 41026 times) previous topic - next topic

urJTAG for Bus Blaster v2 JTAG B

I just got rid of the school project of mine and have some spare time to look at urJtag. Hopefully I will come up with a solution for BBv2 :-)

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #1
That would be fantastic, thank you. I'm planning to order an initial batch of v2 on Monday. The BBv1 should be on sale this week, and I think it will probably be limited to the initial batch, sold at cost, because I would prefer to support the v2 in the long run.

I'm willing to sell v2 as is, and hope the internal connection can be used later. It's not ideal, but if we wait for me to add every feature before a launch then there would never be any new projects ;) At least it can be in the hands of skilled programmers who might be interested in getting it going.

If you find that you have time to work on this, I'll solder up another BBv2 (got some extra FT2232H last week) and send it to you. I have 32 and 64 macrocell CPLDs at your earlier request :)

Otherwise, anyone who comes across this post can consider this a bounty - I'll send a BBv2 prototype (assembled) to anyone who contributes a way to program the CPLD with interface B. urJTAG would be handy, but anything open source and distributable is fine.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #2
Here it is - attached. It applies against latest UrJtag git.

Git repo:
git clone git://urjtag.git.sourceforge.net/gitroot/urjtag/urjtag

What it does, it adds parameter "interface". So far there is no explicit BBv2 support added, Just choose something very similar :-).
When initializing cable you can add parameter "interface=X" and it will set the FTDI interface. (0,1=A, 2=B, 3=C, 4=D)

eg:
cable ARM-USB-OCD interface=2
(It does change the behaviour of the led, so i guess it does work).

If this gets the BBv2 working, I will add it's own configuration - most of the adapters use other pins for leds and buffers, it could interfere with CPLD pin configuration, burn something, etc... If you decide to send me one, i would probably want the 64macrocell one :-)

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #3
Thank you so much! I sent this on to the urJTAG development list, hoping for a reply. I'm going to solder you a BBv2 today, and then we'll try to get it compiling for some immediate feedback and gratification.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #4
I just had to try it :)

I'm following these instructions:
http://urjtag.sourceforge.net/book/_com ... ation.html

I already use mingw for simple stuff, but I'm really inexperienced with dependencies and build tools on the desktop. So I downloaded and installed the needed stuff:

Quote
To run autogen.sh, you need autoconf and automake, bison, and a recent flex.

http://gnuwin32.sourceforge.net/packages/autoconf.htm
http://gnuwin32.sourceforge.net/packages/automake.htm
http://gnuwin32.sourceforge.net/packages/bison.htm

Quote
The distributed source tarball contains source pregenerated with a current flex version; flex therefore is only needed if you want to compile code checked out from our Subversion repository. Flex 2.5.4a as it comes with most but the very latest Cygwin release cannot build the scanners for BSDL and SVF. Building these files requires Flex 2.5.33 or newer. The configure script will compare the available Flex version against these preconditions and enables or disables the related features.

http://gnuwin32.sourceforge.net/packages/flex.htm

I could only find the 2.5.4a flex compiled for windows. We're just desperate for a chain test now, so I guess disabling these features is ok.

Quote
libtool should be available
http://gnuwin32.sourceforge.net/packages/libtool.htm

Quote
and "devel" versions of the following packages: gettext, readline (not needed, but really eases interactive use), ioperm (needed only for Cygwin)
http://gnuwin32.sourceforge.net/packages/gettext.htm
http://gnuwin32.sourceforge.net/packages/readline.htm
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #5
[quote author="ian"]
Thank you so much! I sent this on to the urJTAG development list, hoping for a reply. I'm going to solder you a BBv2 today, and then we'll try to get it compiling for some immediate feedback and gratification.
[/quote]

Wasn't really supposed to go to main repository :-). I think urJtag needs some changes to the driver handling to better support this.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #6
I just wondered if there was anyone on the list interested in working with us. It doesn't seem like it's too active, the list is l ow traffic, last release over a year ago. Kinda surprising, I see it as the most popular app for CPLD and fpga out there. Just about everyone uses it.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #7
Hello all,

Just joined the list, I like what your doing here and am interested in helping/testing.
I'm pretty familiar with urjtag/openocd, etc... I program mostly on the linux side, but have been known to produce a few, win32/win 7 x64 apps.
Let me know if I can help...

I will try to find a link now to get your board.

P.S. Could not find a way to get this board online, could you please contact me via e-mail, or your chioce on how I might get my hands on one of these ?

Regards,

Tornado

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #8
[quote author="ian"]
I just wondered if there was anyone on the list interested in working with us. It doesn't seem like it's too active, the list is l ow traffic, last release over a year ago. Kinda surprising, I see it as the most popular app for CPLD and fpga out there. Just about everyone uses it.
[/quote]

I guess many use build-in tools in the FPGA devel kit like Impact. Anyways there is some development going on in the repository. The 0.10 vs HEAD has some changed in the drivers that I noticed.

[quote author="tjtag"]
Just joined the list, I like what your doing here and am interested in helping/testing.
I'm pretty familiar with urjtag/openocd, etc... I program mostly on the linux side, but have been known to produce a few, win32/win 7 x64 apps.
Let me know if I can help...

I will try to find a link now to get your board.

P.S. Could not find a way to get this board online, could you please contact me via e-mail, or your choice on how I might get my hands on one of these ?
[/quote]

You cannot get them on-line. It all depends on Ian's good will :-) And you should probably be familiar with internal structure of those programs.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #9
robots,

Thanks for the reply,

Actually I write my own software, but it's mostly mips/and atheros based. I use urjtag and openocd for arm targets mostly. I'm adding ft2232h to my software, and looks like this board would do the job.

Regards,

Tornado

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #10
I always check people's custom email URLs, and I think tjtag is a master wrt hacker:
http://www.tiaowiki.com/w/TJTAG

I also sent an email:
What robots said - BBv1 will be on the shelves in a moment. I like BBv2 so much more that I've already requested the production prototype be built.
I can send a PCB and some of the parts, but I only had one extra FT2232H and it will go in robots PCB. I can probably get some more if you're really eager to work on it ;)

In terms of what still needs to be done:
1. Make it self-programmable by enabling the JTAG_B interface of urJTAG, we'll need our own custom compiles while we wait for urJTAG to catch up. I work in embedded stuff without much desktop programming experience, so compile environment setup is always a weak point for me.

2. Add a Bus Blaster v2 cable type that ensures all pins are happy (as noted by robots above)

3. A self-test app that twiddles the pins for manufacturing verification.

Any help at all is always appreciated.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #11
Back to topic :-)

I just received mail - BBv2 (with a ugly little cable, that is going to be replaced with something better looking) I couldn't wait to try it.
Code: [Select]
robot@robot ~/urjtag/bin $ ./jtag 

UrJTAG 0.10 #
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.

jtag.c:518 main() Warning: UrJTAG may damage your hardware!
Type "quit" to exit, "help" for help.

Couldn't connect to suitable USB device.
jtag> cable  ARM-USB-OCD interface=2 vid=0x0403 pid=0x6010
Connected to libftdi driver.
jtag> bsdl path /opt/Xilinx/12.3/ISE_DS/ISE/xbr/data
jtag> detect
IR length: 8
Chain length: 1
Device Id: 00000110111000011100000010010011 (0x06E1C093)
  Filename:     /opt/Xilinx/12.3/ISE_DS/ISE/xbr/data/xc2c32_1532.bsd
jtag>
As you can see it works :-)

ARM-USB-OCD is _NOT_ the best choice. I have to look for a safer option.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #12
While I was posting :)

tjtag compiled urJTAG with the patch on windows and I tested it with the BBv2. The interface used doesn't seem to switch. I connected a CPLD DEV board with two devices to the A interface, and they are detected with all interface= settings.  Screen shot of the test attached. I used the jtagkey device type because the ft2232 just shows an error (because it is stuck on the A interface with jtagkey buffer).

Does it need to be ARM-USB-OCD specifically? I think Ft2232 is the best for B, and the A is a clone of jtagkey with the bitstream installed.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #13
Fantastic, congratulations!  I'm glad the hardware is working :)

We compiled against the current trunk, was the patch against the .10 version instead?

I'll post a copy of the svf so you don't ahve to dig in SVN for it.
Got a question? Please ask in the forum for the fastest answers.

Re: urJTAG for Bus Blaster v2 JTAG B

Reply #14
The problem i see is that my patch is only for libftdi, not the libfd2xx :-) (experimental patch was that, I can make some for the ftd2xx it it helps)

I guess that the TGT led is useless , It seems the CPLD is leaking 0.5 volts, and that makes it glow. Maybe Have the led connected to the spare FT2232 GPIOs ?

The ARM-USB-OCD was used because it was in the urjtag history, and I didn't remember any other name.