It seems bus pirates go between 30-40 bucks, not very expensive but....
From what I've read all they do is convert 1 protocol to another, in which case I already have a 'bus pirate' called an Arduino, from usb to ttl (thanks to ftdi or atmega16u2) then spit out the data to connected device!
So is there an advantage to bus pirate over an Arduino? Can't yet find one...
You can program an Arduino to convert it in a bus pirate. Arduino can do as a bus pirate, but it has many other capabilities.
Bus pirate is for guys who wish to do reverse engineering or debug unkown devices with a tool that comes pre programmed to do that stuff.