Bus Pirate

From flashrom
Revision as of 19:48, 8 August 2012 by Idwer (talk | contribs)
Jump to: navigation, search
Bus Pirate v3, front
Bus Pirate v3, back
Recovering a bricked SPI based device using a Bus Pirate

The Bus Pirate is an open source design for a multi-purpose chip-level serial protocol transceiver and debugger. Flashrom supports the Bus Pirate for SPI programming. It also has SPI sniffing functionality, which may come in useful for analysing chip or programmer behaviour.

They are available for around US$30 from various sources.

Usage

$ flashrom -p buspirate_spi:dev=/dev/device,spispeed=frequency 

Example:

$ flashrom -p buspirate_spi:dev=/dev/ttyUSB0,spispeed=1M

Trouble Shooting

The Bus Pirate has various options for SPI communication. Many SPI chips support the JEDEC standard identify command, which can be issued from the Bus Pirate prompt like this:

[0x9f r:4]

You'll need to refer to the flash chip datasheet to see how it should respond to this.

In circuit programming it often possible, so long as no other devices on the SPI bus are trying to access the device.

See also ISP for more details about in-system flashing in general.

Speedup

A beta firmware build exists, to speed up the buspirate. See this post on dangerousprototypes.com: http://dangerousprototypes.com/forum/viewtopic.php?f=40&t=3864&start=15#p41505

http://dangerousprototypes.com/docs/Bus_Pirate#Firmware_upgrades