alexforencich / ftjrev

JTAG reverse engineering software for FTDI compatible cables
49 stars 7 forks source link

Possible issue related to Bus blaster V4 #2

Open razorfish-sl opened 10 years ago

razorfish-sl commented 10 years ago

Looking at the circuit diagrams the busblaster V4

There are changes to the port and also some output enable buffers

This appears to change the way the unit works.

The busblaster v4 works fine with openocd but fails for ftjrev

./ftjrev scan Chain sizing failed

alexforencich commented 10 years ago

Hmm. Looks like ftjrev may need to be modified to support different cables. I have only tested it with one cable.

If you want to modify ftjrev so that it supports multiple cables, I will certainly merge your changes. ftjrev is not particularly well modularized, though, so I'm wondering if some major refactoring would be necessary to properly implement this sort of change.

razorfish-sl commented 10 years ago

I saw this and thought perhaps it was yourself that modded it first time round… http://dangerousprototypes.com/forum/viewtopic.php?f=37&t=3959&view=unread#p39774

Ok…

this change

got it working….

./ftjrev scan Found 2 devices with total IR length of 20 Device 0: IDCODE C2A96093 (MANUF: 049, PART: 2A96, VER: C) Device 1: IDCODE 72AD6093 (MANUF: 049, PART: 2AD6, VER: 7)

As you say the project would need to be modularized with separate libraries for detection & bit banging call outs..

alexforencich commented 10 years ago

Good to hear you got it working.

I am not the original author of ftjrev, otherwise the code would probably be a bit more organized. I was just the first one to get it up on github and add some additional functions. As far as I/O is concerned, you're quite right about wrapping all of the calls with something that can be configured on a per-cable basis. I think ftjrev at the moment is more of a 'well, I had to write this tool for my project and I figured it might be useful to someone else' type of program, so it's not particularly well written or well supported. I do have a need to perform ftjrev type scanning on parts where JTAG is either not available or not working correctly, so I may be writing some more flexible utilities to replace/augment ftjrev.