A Guide to the BusPirate Version 4.0

by aCol

PDF Version Here. More information in the PDF, Contact: aCol@darknedgy.net

1. Introduction

This document was written because I found myself at a loss when I first encountering the BusPirate Version 4. Initially I wanted the BPv3/BPv3.5 but due to a small error on my side, I ended up with the BPv4. Since I didn’t want to go through the lengthy process of sending it back in (if that’s even possible, I never bothered to find out), I decided to stick with what I got. This document is made specifically for Windows 8 / Windows 8.1 - however, it should work on Windows 7 too. You just have to adapt it for that environment. Neither the author, nor the publishers are responsible for any kind of damage you might encounter when following this guide. This document has been proof-read multiple times by different people. Should you find an error, please feel free to leave a comment. The target audience is all people with intermediate knowledge of computers and those who need the BusPirate software for whatever reason. It is assumed that the user has a basic understanding of the Windows operating system.

After following this guide, you should have a fully set up BusPirate Version 4.0 at your service. Please note that as a German, I was too lazy to set my computers language to English, so any pictures of Windows are German as well. They should be self-explanatory, regardless.

2. Requirements

You need the following hardware and software to successfully work through this guide:

  1. A computer which you have administrator access to, preferably running Windows 8 or 8.1
  2. A BusPirate Version 4.0 (shortened to “BPv4” in this document)
  3. A terminal emulator, here I make use of PuTTy
  4. About an hour of free time, depending on how quickly you can get through the steps.
  5. A Mini-B USB cable

miniusb

3. Getting started

First, connect the BPv4 via USB. I strongly advise against the use of anything like a USB Hub, USB ports in your keyboard, etc. Plug it directly into one of the computers USB ports! Windows 8 will almost certainly fail to find the corresponding driver for this hardware. The device will be displayed as “CDC-Test” in the device manager.

manager Windows being Windows. The BusPirate is displayed as CDC Test

4. Installing the drivers

There appear to be two necessary drivers: The FTDI Chipset driver, and the BPv4 driver files.

FTDI Download Page BusPirate Download Page

The FTDI driver is for using virtual COM ports. The BusPirate driver is for communication with the BusPirate itself. As of this writing, BusPirate package v6.1 is out. You can use the FTDI Driver Version 2.12.00, it works fine for me. If it doesn’t work, please feel free to contact me so I can find the error and correct it in this document.

Download the FTDI driver and run the installer as administrator (you have to install it as administrator, else it will not work because of permission problems). After installing the FTDI driver (and if you really want to play it safe, restarting your PC), I had to get Windows 8.1 to allow the usage of unsigned drivers. You can find information on how to do that here.

After Windows accepts those unsigned drivers (don’t pester me about security, this is just about getting the BPv4 to work, not about locking your machine down to an acceptable level), extract the BusPirate package. It should be a zip file. Now you have be sure your BusPirate is connected with your PC. It should be shown as CDC Test in your device manager. Right click onto the “CDC Test” text, and select “Update driver”.

Manager2 Windows driver update

Select the path to your BPv4-inf-driver directory, it should have been extracted along with all the other stuff in the package. Windows will then annoy you because of security concerns.

warning Windows being annoying again

Install the driver anyways. It should be pretty trustable. Windows should now install the driver without annoying you further, if it does, something is wrong. Feel free to leave a descriptive comment in that case. If you check your device manager, it should now display an item called “BusPirate v4 (COMx)”, where x is the COM-Port number windows assigned to it. In my case, it is COM3. In your case, it might be different.

manager 3 The device manager showing you the BusPirate and which COM port it is assigned to.

You have now successfully installed the necessary drivers.

4. Communication with the BusPirate

Now that the PC is able to recognize the BusPirate, we want to communicate with it. This is done over a serial connection. You have to use a Terminal Emulator of your choice, though this guide uses PuTTy, since it has proven itself to be quite good. Other viable alternatives are:

It really depends on your personal preference though. More information on this topic can be found here. For those who are not familiar with PuTTy: It works without having to be installed. It’s a stand-alone executable.

The following settings have to be configured in PuTTy:

putty1

Session settings.

putty2

Terminal settings.

Also you have to set the Serial Settings:

putty3

Serial Settings.

After these are set, all you have to do is click “Open”. You will get an empty terminal with a cursor in the top right corner. Once you hit enter, it will display “HiZ>”. To navigate, enter the “?” character (without quotation marks) and hit enter again. It will display a well formatted help text.

5. Getting the most out of your BusPirate

The problem I had with my stock BusPirate was that there was no UART mode when I tried to use it. I found this is due to old firmware on the device. To get the most out of your BusPirate, you might want to upgrade your firmware (caution: If you do something wrong, you can seriously damage your device. Everybody who ever modified an Android phone knows this. The process is called “bricking”).

The firmware is also in the BusPirate package you had extracted to a location of your choosing. Information on upgrading firmware can be found here. The process is quite simple: Murder Clippy, remove the wire insulation of your paperclip (if it has one). Disconnect the BusPirate from your computer, connect PGD and PGC on the device (see picture) and connect it to your computer again.

pgc PGC and PGD have to be connected by a conductive material to force the BusPirate into Bootloader mode.

Now the BusPirate will enter Bootloader mode. Windows will show the BusPirate as “USB Serial Port” in the device manager, at least it did that when I did this. Windows might ask for a driver, it did not ask me for one though. Just follow the instructions in the document linked above in that case. You already know how to determine the COM port the device is assigned to. You will need that now. Enter your “BPv4-firmware” folder. Right click on the “BPv4-update-v6.1.bat” and select “Edit”. Change –dev=“COM3” to your needs and save the file. Then just run the batch file. If all is successful, you should see something like this.

firmware Successful Firmware Update.

Now disconnect the BusPirate from your PC again, and remove the conductive material shorting out PGC and PGD. Then reconnect it to your PC and open up a connection like in step 4. Enter the character “i” and hit enter, and it should show you version information.

firmware2

The BusPirate Shows: It has the latest firmware installed.

6. Making the BusPirate easier to use

While there are probe kits with reference sheets available, there is a small problem with them: Sometimes the colours don’t match with the reference sheet. This is hideous and allows errors to sneak into your work, which can seriously make your day bad. An easy way to prevent this is to label the cables as shown in this image:

wires Labeled probe kit. Makes life easier.

Further information

For more information, see the PDF’s “Further Information” section, which has links to various resources.

Note of thanks

I’d like to give a big thanks to the people from darknedgy.net who published this guide for me - I mean I could have found somewhere else to publish it, but that would be boring. I’d also like to thank my brother, who made the quick and dirty pictures of the BusPirate and the ProbeKit. As well as my father, who actually got so angry over the documentation at the BusPirate that I decided to make this guide. Special thanks to absent and V.R., yes, I made both of them proof read this guide.

The people from StackEdit did a great job making an online Markdown editor. It is what I used to finally edit this guide since darknedgy also uses Markdown for their blog section. The guide should now have everything necessary for the readers to start into the wonderful world of hardware hacking, as well as bricking your own phone/router/etc.

I also want to thank Dangerous Prototypes and Seeedstudio for bringing such great hardware onto the market. Also the guys from Hackaday.com, who actually got me more and more interested by posting all the cool hacks some people do out there. Finally I want to thank you, the readers, especially those who point out any errors in this document, making the quality of it better by doing so. May you have a great experiance when doing whatever the … you want to with the BusPirate v4.