Home > Electronics > Quick reference for SparkFun Bus Pirate cable

Quick reference for SparkFun Bus Pirate cable

Recently I bought Bus Pirate v3 from SparkFun. It seems to be a great little tool when debugging devices and trying to figure out proprietary protocols. Unfortunately there’s no pinout listed for cable in the Sparkfun’s pages. I found this forum post from “adamoutler” which contains very nice reference sheet for the SeeedStudio cable. Only problem was that although the SeeedStudio cable looks identical to SparkFun’s its colors seem to be in reverse order!
I updated the sheet to match SparkFun’s cable:

SparkFun BusPirate cable pinout

Printable PDF and openoffice file can be downloaded here: http://iki.fi/antibore/BusPirateReference.zip

Categories: Electronics Tags: , ,
  1. Sam
    06/07/2011 at 00:15

    I read your post on the SparkFun Bus Pirate page, and followed you to here… Thank you *very* much for providing this cable pinout sheet for the SparkFun board, with its different (non-standard?) version of the cabling. This is much neater than my handwritten notes đŸ™‚ I’m amazed that SparkFun chose to change the pinout in their version, but your diagram helps to reduce the chances of me making a mistake. Thanks again!

  2. 26/08/2011 at 10:21

    Thank you for sharing about piret cable.It would be more interesting if you clearly express the matter.

  3. asbokid
    16/09/2011 at 03:59

    Sparkfun are fools for doing this.

    I’ve just wrecked a Bus Pirate because of this carelessness.

    If I find that Sparkfun have trashed the development PCB I will be more than pissed off!

    What’s the point in having a reversed cable (and a reversed pinout sheet)?!

    This reversal means that the pinstates shown in the firmware are also back-to-front.

    How could these morons get it so wrong?

    This is what the Sparkfun-supplied firmware reports…

    1.(BR) 2.(RD) 3.(OR) 4.(YW) 5.(GN) 6.(BL) 7.(PU) 8.(GR) 9.(WT) 0.(Blk)

    But this is what the firmware SHOULD report..
    1.(Blk) 2.(WT) 3.(GR) 4.(PU) 5.(BL) 6.(GN) 7.(YW) 8.(OR) 9.(RE) 0.(BR)

    Idiots! No wonder the team at dangerousprototypes are annoyed by Sparkfun ripping off their design: They end picking up the pieces from the fine mess that Sparkfun has created!

    • 16/09/2011 at 19:19

      I agree. It was a nasty surprise for me also. If they had to do non-compatible cable, they could at least have picked different colors.

  4. Nick
    17/01/2012 at 23:13

    I got a Bus Pirate from SparkFun yesterday (Free Day, yay!), and this chart was awesome to help remember which probe was which. But today I’ve found an easy fix which is a safer, more permanent solution: Pop the plastic shroud off the SparkFun BP’s pins, flip it around, and slide it back on.

    The shroud is only held in place around the pins by friction. I used a plastic spudger to get it started, but most anything will do, there’s a good bit of clearance under the shroud to start prying it up with. Do be careful to not bend the pins by doing one side too much before going back to the other side — do it in small steps, and be careful at the end that you are going up, straight off the pins. Then it is just a matter of pressing it back down in the correct orientation.

    The shroud should have the key pointing toward the pirate’s USB port, and the arrow indicating pin 1 should be the ground pin (top-left corner if you have the BP sitting with the text readable and the USB port on the left).

    The problem is *not* with SparkFun’s probe cables, they have the same pinout as Adafruit or Seeed cables (pin 1, with an arrow indicator, is brown, pin 10 is black). SparkFun do *look* backwards, because they send the cable out over the keyed-side, but that doesn’t change the pin-out at all! It does mean the cable exits the BP to the convenient side on backwards SparkFun boards, and in an inconvenient direction (over the USB port) on correct (or fixed) Bus Pirate boards. So that’s the one down-side to fixing the BP if you own a SparkFun cable.

    The problem very much lays with SparkFun-manufactured Bus Pirates themselves. SparkFun have simply installed the IDC shroud in the wrong direction, and continue to install it in the wrong direction. As proof, observe that the shroud has an arrow indicator for pin 1, and you can see that it is pointing at the MISO/RX pin, not the ground pin which Bus Pirate’s software considers pin 1. So, when you put *any manufacturer’s* keyed cable into a SparkFun BP, pin 1 will always be MISO instead of ground, with all the other pin order reversed to match too.

    This is *not just* a matter of the colors being annoyingly different on a probe cable! There are a (growing) number of accessory boards for Bus Pirates, which usually have a matching keyed IDC plug. That means if you hook up a keyed ribbon cable from a SparkFun-manufactured Bus Pirate to an accessory board, you will be connecting it backwards, and probably grounding pins and sending 5V down other pins that you shouldn’t be!

    I’m disappointed SparkFun sell their version of the Bus Pirate with this error present, it would be a simple fix to manufacture them correctly. Ordering official Seeed-manufactured Bus Pirates is obviously preferable, if you can wait for the shipping. But if you do have a SparkFun board, flipping the shroud around to be the correct orientation is so simple that it’s the safest way to go, instead of working around the problem until one day you forget.

  5. 27/03/2012 at 10:30

    Thank you Nick. You are right it was easy to fix. I was too lazy to find the appropriate tool, so I used to paperclips.

  1. 21/09/2011 at 16:28

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: