Due to some global internet issues outside of our control you may have issues accessing PayPal or using GitHub through our site. Please be patient and hopefully they’ll be up and functioning correctly soon!

Creative Commons images are CC BY-NC-SA 3.0

Description: The Bus Pirate v3.6a, created by Ian Lesnet, is a troubleshooting tool that communicates between a PC and any embedded device over 1-wire, 2-wire, 3-wire, UART, I2C, SPI, and HD44780 LCD protocols - all at voltages from 0-5.5VDC. This product eliminates a ton of early prototyping effort when working with new or unknown chips.

Working with the Bus Pirate is simple and effective - type commands into a terminal on your computer, those commands are interpreted by the Bus Pirate and sent via the proper protocol. The Pirate will also interpret data sent from your embedded device back to your computer terminal. A big bonus is the bootloader installed on the PIC, which allows you to easily update the firmware and change the functionality of the board.

The main components of the Bus Pirate are the PIC24FJ64 processor and a FT232RL USB-to-Serial chip. A Mini-B USB connector that has also been populated on the board, provides the power to the Bus Pirate and allows you to interact with via your PC. The major difference in this version of the Bus Pirate comes from the shrouded 0.1" pitch 2x5 pin header, which has been flipped around to help standardize this board. Additionally every pin on this header has been labeled, eliminating the need for a separate I/O pin description document like with earlier versions.

Note: We sell a handy cable to connect the Bus Pirate to the system you are developing, debugging, or reverse engineering.

Note: This product is a collaboration with Ian Lesnet. A portion of each sales goes back to them for product support and continued development.

Get Started with the Bus Pirate Hookup Guide


  • Supported protocols:
    • 1-Wire
    • I2C
    • SPI
    • JTAG
    • Asynchronous serial
    • MIDI
    • PC keyboard
    • HD44780 LCD
    • 2- and 3-wire libraries with bitwise pin control
    • Scriptable binary bitbang, 1-Wire, I2C, SPI, and UART modes
  • 5.5V tolerant pins
  • 6V measurement probe
  • 1Hz - 40MHz frequency measurement
  • 1kHz - 4MHz pulse-width modulator, frequency generator
  • On-board multi-voltage pull-up resistors
  • On-board 3.3volt and 5volt power supplies with software reset
  • Macros for common operations
  • Bus traffic sniffers (SPI, I2C)
  • A bootloader for easy firmware updates
  • Transparent USB->serial mode
  • 10Hz - 1MHz low-speed logic analyzer
  • Scriptable from Perl, Python, etc.
  • Access to PIC24FJ64 ICSP programming port


Recommended Products

Customer Comments

  • Does it handle multi master for I2C?

  • What “kind” of serial device does this show up as / is there a particular driver (for Mac OS X, specifically) required?

  • Will this work for communication between a PC and a peripheral that is only 1.8V tolerant on its GPIO and I2C pins?

    • Not really. I2C is open-drain, so you could hook 1.8V to VPU. You would have to modify the main processor on the Bus Pirate to run at 2.0V for it to register 1.8V as a login level high. SPI is push-pull, so as designed this will drive at 3.3V. In general I’d say this is only for use with 3.3V or 5V parts unless you use an external level shifter.

      • Thanks for the reply. Reason I ask is more and more sensors and AFEs are running at 1.8V native and I’m tired of setting up level shifters!

  • Is there any difference to the Dangerous Prototypes Bus Pirate v3.6? Looks just the same.

    • It is based HIGHLY on their design and they get a royalty. Our older version had the original wire colors that were change at some point. This is a revision to capture that change and we’ve added a few small improvements. Our power rails have less ripple that some customers have complained about. We also labeled the pins so the device is easier to hook up without another reference. It’s largely the same thing though. Their logo is on the back: Back of SparkFun build of Bus Pirate

      • does the mean that your version of this HW conforms to the DP6037 board outline? the image with the rulers suggests that it does not. the pervasive literature out about this suggests that it does.

        • They are the standard 60mm x 37mm that is the DP6037 outline. I verified that in the EAGLE files and with an actual board. We will look into why that image shows them being so much larger.

  • Hookup guide is 404.

Customer Reviews

4.3 out of 5

Based on 9 ratings:

5 star
4 star
3 star
2 star
1 star

1 of 1 found this helpful:

Good product, SOLID customer support

I bought a bus pirate over a year ago, and when I finally got it out to play with, it didn’t work and failed the self test. Spark fun sent me a replacement 14mo later, free of charge, no questions asked.

The bus pirate is very handy, and spark fun is worth buying from.

1 of 1 found this helpful:

Best 30 bucks I ever spent

Needed to develop a 9 bit serial library for DotNet and Arduino. Bus Pirate was the perfect tool for the job. Easy to setup, worked perfectly with the OLS logic analyzer software. No glitches or workarounds needed. All for thirty dollars.

1 of 1 found this helpful:

Really handy device

I needed to have a quick and easy means of testing an I2C interface for a work related project. I came across the Bus Pirate so ordered one. Simple to set up with the help of the tutorials and had it up and running in the lab in no time. I’ve not tried the other interfaces as yet, but I’ve been extremely pleased with what I needed it for.

3 of 4 found this helpful:

What a handy tool

I was able to get a couple of I2C peripherals figured out in an afternoon. It’s great to be able to play around without having to write a line of code. I’m almost didn’t buy one but I’m sure glad I did.

1 of 2 found this helpful:

Very helpful and easy to use

Used the Bus Pirate to test UART. It only took a few minutes to set up this tool and confirm that UART was working. I look forward to using this tool to test my future projects. Amazing product overall!

1 of 3 found this helpful:

This is a nice little board.

It came right up when I got it and I think I’ll use it.

On the pro side, There appears to be a large number of python scripts for working with various parts. The rest of the documentation is voluminous.

There are a few issues that I have with it, however.

The first issue is that it will only work when plugged into a USB port on my laptop. This could be my issue in the form of my lack of knowledge about USB but I do have other devices that just work on my hub. If every device needs to plug into the PC instead of a hub, there are not enough USB ports to do everything that I’d like to do at the same time. It comes up with the red led light by the USB labeled LED on the bus pirate when plugged into a hub. It also won’t come up with Terra Term without getting in and seeing what serial port it connected with.

Another issue is that most of the parts with which it would communicate are surface mount devices. That makes it hard to use it with those devices without making a board for them or wiring them up which would be a complex and intricate task.

The manual isn’t perfect either. For example, after a mode is entered, how does one exit that mode? While, I just figured that out, it isn’t clear from the help menu & I had to spend time that I probably shouldn’t have to get it to work.

Regardless, it appears like a tool that I will be glad to have in my tool box once I’ve played around with it for a bit..

Great for decoding serial/MIDI

I’d give it 4 ½ stars just because some of the documentation for operation and firmware versions is confusing. That being said, I’m really happy with it. While it decodes MIDI, there’s not much info on the web about it, so I made a video here: https://youtu.be/ICzDtjcUjbs

0 of 1 found this helpful:


Either I am the dumbest person in the world or this thing is the worst purchase ever!

I followed the hookup guide to the letter and the functionality is so basic. For example, I was able to wire up a MCP23017 and enter I2C mode. From there I turn on power (W) then turned on pullups (P). Okay great right? So I scanned for addresses and found 0X40. I issued some bits needed to turn GPIO to outputs then turned on some LEDs. No problem so far.

Then I head over to Dangerous Prototypes, this documentation is so outdated and no longer is supported. His videos are from along time ago even. I downloaded OLS to my mac and struggled to make it even open. Okay now what? So I watched some old youtube (the only ones out there) and tried to see if I can even get some data to capture. Yeah RIGHT!!!! This thing is so epicly not worth your money! It wouldn’t even read an I2C stream from the Particle Photon. Ultimately, I wish I would have saved myself a lot of anger and frustration. Now to save nearly $200 for a better product.

Sorry about the issues and that this didn’t work for you. Please contact us if you wish to initiate an RMA. Thanks https://www.sparkfun.com/returns

Neat little hacking device ;)

Ok, so not really “hacking”, but the bus pirate saved my laptop after a bad BIOS flash.

I have an old ThinkPad T60 that I was experimenting with Coreboot/LIbreboot on. One of the ROMs I flashed to the laptop had a problem and the machine failed to boot! Using the bus pirate (which I was able to upgrade to firmware 6.2 beta to get faster SPI speeds), I was able to reflash the BIOS chip directly!

SparkFun’s version works perfectly with flashrom and all other bus pirate tools :)

Related Tutorials