Bus Pirate
The Bus Pirate is a flexible electronic device that interfaces with low-level communication buses and has the ability to program various microcontrollers. It was developed as an open-source hardware and software project.[1][2]
Overview
A primary usage case for this device as intended by the designers is to "eliminate a ton of early prototyping effort with new or unknown chips."[1] Using a Bus Pirate, developers can use a serial terminal to interface with devices over a variety of hardware protocols, such as SPI and 1-Wire.
The Bus Pirate is capable of programming low-end microcontrollers, such as Atmel AVRs and Microchip PICs. Programming using more advanced protocols such as JTAG and SWD is possible, but is discouraged due to hardware speed limitations.
The Bus Pirate v3.6 is based on an PIC24 MCU (SSOP), and communicates with a host computer with either a USB interface with a FT232RL (SSOP) or an on-chip USB module.
The Bus Pirate was designed by Ian Lesnet of Dangerous Prototypes.[3]
Feature list
Support for many serial protocols with line levels of 0 – 5.5 volts:
- 1-Wire
- I²C
- SPI
- JTAG
- Asynchronous serial
- MIDI
- PC keyboard
- HD44780 LCD
- UART
- 2- and 3-wire libraries with bitwise pin control
- Scriptable binary bit-banging in Perl, Python, etc.
Other capabilities:
- 0 – 6 volt measurement probe
- 1 Hz – 40 MHz frequency measurement
- 1 kHz – 4 MHz pulse-width modulator, frequency generator
- On-board multi-voltage pull-up resistors
- On-board 3.3 volt and 5 volt power supplies with software reset
- Macros for common operations
- Bus traffic sniffers (SPI, I²C)
- A bootloader for easy firmware updates
- Transparent USB -> serial mode
- 10 Hz – 1 MHz SUMP compatible low-speed logic analyzer
- AVR STK500 v2 programmer clone, supported in AVRDude programmer software
Hardware differences
Bus Pirate v4.0[4] | Bus Pirate v3.6 | |
---|---|---|
MCU | Microchip PIC24FJ256GB106 | Microchip PIC24FJ64GA002 |
Flash | 256K | 64K |
SRAM | 16K | 8K |
USB (to host) | USB peripheral inside PIC24 | FTDI FT232RL |
I/O pins | 7 (6x2 pin header) | 5 (5x2 pin header) |
Development Status | Active | Active |
Lifecycle | Experimental | Mature |
The PCB size was changed to 60 mm x 37 mm in the Bus Pirate v4 so it would match the mounting holes for "Sick of Beige" DP6037 case.[5][6]
The v3.x hardware uses a 5x2 header. The v4.0 hardware uses a 6x2 header, which is an uncommon ribbon cable size, where as 7x2 and 8x2 are common ribbon cable headers.
References
- 1 2 Bus Pirate v3.6; SeeedStudio.
- ↑ Bus Pirate v4; SeeedStudio.
- ↑ "Bus Pirate - v3.6a - TOL-12942 - SparkFun Electronics". www.sparkfun.com. Retrieved 2017-03-29.
- ↑ Bus Pirate v4 vs v3 comparison; Dangerous Prototypes.
- ↑ Bus Pirate v3.6; Dangerous Prototypes.
- ↑ Sick of Beige compatible cases; Dangerous Prototypes.
External links
- Official website - dangerousprototypes.com
- Bus Pirate Source Code - code.google.com