This is an old version, see the latest version on the documentation wiki.
Interfacing a new microchip can be a hassle. Breadboarding a circuit, writing code, hauling out the programmer, or maybe even prototyping a PCB. We never seem to get it right on the first try.
The ‘Bus Pirate’ is a universal bus interface that talks to most chips from a PC serial terminal, eliminating a ton of early prototyping effort when working with new or unknown chips. Many serial protocols are supported at 0-5.5volts, more can be added.
Protocols (bus modes)
- Asynchronous serial
- PC keyboard
- HD44780 LCD
- 2- and 3-wire libraries with bitwise pin control
- Scriptable binary bitbang, 1-Wire, I2C, SPI, and UART modes
- 0-5.5volt tolerant pins
- 0-6volt 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
- AVR STK500 v2 programmer clone
- Scriptable from Perl, Python, etc.
- Translations (currently Spanish and Italian)
- Public domain (Creative Commons Zero) source. Prototype with the Bus Pirate, then use the code in your project however you want.
Applications with Bus Pirate support
The Bus Pirate is used through a simple terminal interface, but these applications also support the Bus Pirate as a programming device, etc.