Skip to main content
Topic: FTjrev (Read 6540 times) previous topic - next topic

FTjrev

Hi All,
I'm trying to use my BusBlaster with FTjrev (nsa unaligned org/jrev.php) to reverse-engineer connectivity between chips on a board.
I can list the devices chain on the board using UrJTAG, but so far I can't get anything out of FTjrev.

Did anyone of you already tested this tool ? Is there another opensource alternative ?

Thanks,
Wil

PS: Sorry for the malformed URL, I had to find a way to bypass the 'first post spam filter' :).

Re: FTjrev

Reply #1
Hi Wil,

The only info I see on the webpage about the expected programmer is:
Quote
If you have an FT2232-based JTAG cable, you can try FTjrev. You need files from the DLC-5 jrev archive above, too.

The most common FT2232 JTAG cable has a JTAGkey type buffer (Bus Blaster default). Maybe they want a raw FT2232 chip without a buffer? The PICOtap buffer might work, if the reset pin is the same (or unneeded):
http://dangerousprototypes.com/docs/Bus ... ic#PicoTAP

I checked the source .c file in the FTjrev download. I can't tell for sure, but I think it is targeting a bare FT2232 chip. I think all it needs is for the buffer pin to be enabled, then it should work with the JTAGkey style buffer too:
http://dangerousprototypes.com/docs/Bus ... ic#jtagkey
Got a question? Please ask in the forum for the fastest answers.

 

Re: FTjrev

Reply #2
Hello ian,

Thanks for the information. You are right, it works with the PicoTAP
buffer (the reset pin is not used).
My previous tests where performed with the JTAGKey buffer, but it
seems that FTjrev doesn't know about the buffer enable pin.

Thanks again for your help !
Wil

Re: FTjrev

Reply #3
Glad you got it working, thanks for the update!
Got a question? Please ask in the forum for the fastest answers.

Re: FTjrev

Reply #4
Hi ian,

I forgot to mention that you need to modify the USB VendorID and ProductID
for FTjrev to work with the BusBlaster (with PicoTAP buffer logic).

Here is a patch:
Code: [Select]
--- ftjrev.c_orig       2012-04-26 22:27:05.000000000 +0200
+++ ftjrev.c    2012-04-27 09:43:18.000000000 +0200
@@ -80,7 +80,7 @@
        uint8_t latency;
        ftdi_init(&ctx);
        ftdi_set_interface(&ctx, INTERFACE_A);
-      if(ftdi_usb_open(&ctx, 0x8482, 0x1002))
+      if(ftdi_usb_open(&ctx, 0x0403, 0x6010))
                return 1;
        ftdi_usb_reset(&ctx);
        ftdi_set_latency_timer(&ctx, 1);

I also managed to make it work with the JTAGKey buffer logic.
For this, you will need this patch (along with the previous one):
Code: [Select]
--- ftjrev.c_orig       2012-04-26 22:27:05.000000000 +0200
+++ ftjrev.c    2012-04-27 09:44:13.000000000 +0200
@@ -90,7 +90,7 @@
        if(ftdi_set_bitmode(&ctx, 0x0B, BITMODE_MPSSE))
                return 1;
        setspeed(1);
-      setgpio(9);
+      setgpio(8);
        ftdi_usb_purge_buffers(&ctx);
        return 0;
 }

Modified source code can be downloaded here
(original code is licensed under the terms of GPLv2 or later).

William

Re: FTjrev

Reply #5
Thanks for all the info William. I added a FTjrev entry to the Bus Blaster wiki page.
Got a question? Please ask in the forum for the fastest answers.

Re: FTjrev

Reply #6
Hi,

There is now an improved version of ftjrev.

Wil