JTAG XSVF player for the Bus Pirate

A new alternative firmware for the Bus Pirate programs JTAG devices like the CPLD development boards using standard (X)SVF programming files.  We also whipped up a PC utility that sends the files to the Bus Pirate from the command prompt. Download the package here.

SVF is a common programming format used in manufacturing. It’s a human-readable list of JTAG instructions that program a chip. The programmer doesn’t actually know anything about the target device, the SVF file just tells it what JTAG instructions to execute and the reply to expect. The tools from several manufacturers can output an SVF-compatible programming file. SVF is used with many devices, but is most commonly used with FPGAs, CPLDs, and other programmable logic.

XSVF is a compressed version of SVF that works better with small devices (like the Bus Pirate). An SVF to XSVF converter is included with the XSVF player firmware.

More info and updated programming instructions are on the wiki. There’s work on a Linux app in the forum.

Join the Conversation


    1. It’s still the original package from when the CPLDs were released last month. Today we did a massive update to the wiki so mere mortals can follow the instructions (was basically beta before), so we thought a post was in order.

      1. ok. So, along those lines, is there a theoretical limit of the number of times i can re-flash the firmware on the bus piratev3? Since I only have one, I tend to go back and forth between the custom JTAG firmware listed above, and the latest standard release firmware.


      2. I think you have at least 100,000 swaps, probably closer to 1,000,000. I’d have to check the datasheet to be sure, but these are also based on temperature extremes. When we did the flash destroyer experiment the EEPROM (not flash…) lasted 12 times longer than rated.

Leave a comment

Your email address will not be published. Required fields are marked *

Notify me of followup comments via e-mail. You can also subscribe without commenting.