This Perl script demonstrates a way to get the Bus Pirate hardware and firmware version from binary mode. The approach is pretty simple: enter binary mode, reset from binary mode, parse the version information shown on reset (same as ‘i’ in the user terminal).
Note that the latest firmware, v2.8, changes the order of version info in the display. The current formatting will be retained for the foreseeable future. If this inconsistency with earlier versions is a problem for your script, you could search the output for key words that precede the version strings (“Firmware v” and “Bus Pirate v”) for a more robust identification routine.
Submit your scripts by the end of this weekend for a Bus Pirate probe cable kit.