You are currently browsing the category archive for the ‘Bus Pirate’ category.
Major changes include:
- OpenOCD JTAG debugging support (thanks robots!)
- New speed settings in I2C, raw2/3wire, updated also in binmode
- Fixed error in 1-wire reset command in binmode (thanks Mike!)
- Includes pirate-loader console app
- Minor bug fixes
Michal Demin posted a tutorial for the OpenOCD JTAG debugging support he added to the Bus Pirate.
Some time ago, I have added support to OpenOCD to be able to use Buspirate as JTAG interface. This how-to will show you, how to setup all the things necessary.
Things you will need:
– Computer with OpenOCD installed
– target with JTAG
– luck 🙂
Edouard Lafargue let us republish his demonstration of a Noritake GU140x32-7002 Serial VFD screen (may prompt about a secure certificate).
The Noritake VFD used here is a “Show and Tell” 140×32 semi-graphical VFD. This display has the big advantage of being able to display graphics and manage so-called ’user windows’, making it a good choice for stepping up from standard text-based LCDs or VFDs towards a more graphical approach.
This tutorial first shows how to interface with the device using async mode, and then how to use a simple python script to display GIF black and white images on the display.
W1N9Zr0 posted this full-featured Bus Pirate case in the forum:
Here is my take on a Bus Pirate case. It’s made of a PS2 game case and integrates two breadboards, the bus pirate and an A23 12v battery for PIC programming.
Flickr photoset. Be sure to check out the forum thread if you’re interested in PIC programming with the Bus Pirate, W1N9Zr0 has successfully programmed a few PICs with custom software that uses the raw2wire binmode.
0x0064 REM basictest 0x006E LET A=C+16 0x0078 FOR B=1 TO 5 0x007D FOR D=0 TO 2 0x0082 PRINT "A=";A;" B=";B;" D=";D 0x0087 NEXT D 0x008C NEXT B 0x00C8 INPUT "Enter C",C 0x00D2 GOSUB 1000 0x00DC IF C=20 THEN PRINT "C=20!!"; ELSE PRINT "C!=20"; 0x00E6 END 0x03E8 PRINT "C=";C 0x03F2 RETURN 0xFFFF END
Sjaak demonstrated a basic scripting language that could be integrated into the Bus Pirate terminal. Take a look and tell us what you think.
In preparation for the v4.2 Bus Pirate firmware release, here’s an instruction guide for upgrading with the ds30 Loader GUI.
Firmware v4+ requires a new bootloader. The new bootloader is an adaptation of the open source ds30 Loader. The new bootloader v4+ uses a new upgrade application, the old P24qp.exe (P24qp.py) will not work with the new bootloader.
This guide describes how to use the ds30 Loader GUI application, it should work with Windows (.NET) and Linux and Mac (Mono). If you’d prefer, there’s also a Pirate-Loader console application for all platforms that doesn’t require .NET or Mono.
ROM programmers and motherboard hackers will be happy to know that there’s a new release of Flashrom for Windows, ported by pgeorgi and posted informally in the forum.
Flashrom is an open source utility for working with flash storage chips. It supports a bunch of flash chips commonly used on motherboards to hold the system BIOS. biosflasher (Carl-Daniel Hailfinger) added Bus Pirate support to Flashrom, pgeorgi has been compiling a version for the Bus Pirate on Windows.
The Parallax board reads passive RFID EM4100 type RFID tags, and outputs the tag ID as simple serial data at 2400bps. It’s the first inexpensive RFID reader to catch on with hobbyists.
Today we’re giving away an assembled Bus Pirate high-voltage programming adapter. It has a 5pin PIC programming header, a 6pin AVR programming header, and a small 13volt boost-converter power supply. A 13volt supply is needed to program PIC 12/16/18F microcontrollers, and clear the RESET fuse in AVRs. It’s doesn’t do much right now though, because there’s no support for it in any programming apps.
This will eventually be available at Seeed Studio, but you can get a preview of the hardware by leaving a comment below. Let us know what you want to do with it, on Monday we’ll send the adapter to a commenter with an interesting idea. If you don’t have any ideas you can endorse another comment, we’ll take popularity into account when we give it away.
Sjaak has been hard at work on a new terminal interface for the Bus Pirate. There are exciting new features like:
- A command history (h menu)
- Multiple command sequences can be processed at once
- ASCII character values are sent to the bus when entered between quotes (“text”)
- Mode changes now include an exit option
- Massively improved code structure, more unified, less space used
This is a massive update to the firmware, and it probably won’t be incorporated until after the next few releases, but this is your chance to try it out now. You can test the latest nightly compile, but remember that this is only a preview, some modes are not ported to the new framework. This firmware requires that you’ve upgraded to the v4+ bootloader.
Read more about the new firmware, see a demo of new features, and help with development, in the forum.
will_j posted this picture of his Bus Pirate in use as a transparent USB->serial bridge to a Wavecom GSM modem.
Thanks for the tip!
Sjaak posted this demo of a KS0074 serial LCD in the forum:
I needed to test the SPI library with the newterm branch. I had a nice display from a dead Siemens phone. It uses a KS0074 display (which is an sort of SPI version of the good old HD44780). I found the datasheet and some example code on the internet (sorry only German is available). During the testing I found out the Bus Pirate spits out the bits the other way around then in the code/datasheet.
Please find attached my version of a quick reference card. The information is, due to the limitation of the sheet not very much. I tried to get the most important infos on it.
It is a LaTeX-file based on the pgf/tikz package. I documented the file in a way that even a LaTeX-novice should be able to modify the colour code to his needs. I created this card with the pcb-board of the Bus Pirate V3 in mind. It will fit exactly under the pcb and thus people can stick it there by double sided tape or whatever.
Anyhow, any changes and suggestions are welcome. I published it under GNU Free Documentation License, thus you can do whatever you like with it.
Thanks for the tip!
Here’s a quick and dirty perl script to display ‘BPv3’ on a Sure Electronics 8×32 LEd Matrix display.
You can also use a 16×24 display if you change the second command code to 44 from 40.
Any improvements gratefully received – i.e. a nice character lookup table process would be good!
Thanks for the tip!
The HMC6352 is a simple compass chip with an I2C interface. If your next unmanned vehicle needs a compass, check out this chip. It has multiple operating modes that balance power use and update frequency. Continuous acquisition provides rapid heading updates, while query acquisitions save power by only measuring only when it’s needed.
Thanks to SparkFun for sending this part to demo. If you don’t want to solder the 24pin lead-less chip yourself, you can get it on a breakout board at SparkFun.
You can preorder assembled Bus Pirate hardware at Seeed Studio for $30, including worldwide shipping.
I made up a sticker for the combo of the seeed case and breakout harness, thought others might find it useful… Unlike in the above picture, I connect the cable with Black to GND, which puts the two EZHook-like hooks on MISO/MOSI. Thought others might find it handy. It also includes the LED names and a gratuitous barcode since the project lacks a real logo.
Thanks for the link!
Tired of the /dev/tty.usbserial-XXXXXXXX address of the Bus Pirate? Piotr developed a utility to edit the EEROM in the FTDI chip on the Bus Pirate, this gives your Bus Pirate a consistent name on MacOSX. Grab the utility here, and follow this how-to submitted by Piotr. Thanks for the tip!
If you have a few FTDI USB devices in your system it might be confusing which /dev/tty.usbserial-XXXXXXXX points to the correct device, as the default isn’t very meaningful. Luckily with MacOSX and the FTDI USB to serial drivers there’s an easy way to change that!
The FT232R uses an internal EEPROM memory to store chip configuration. Programming it lets you change values such as PID, VID, Required Current, CBUS pins config, … and USB device description, which is what we want to change.
By default your Bus Pirate is detected as FTDI, FT232R USB UART with some random serial number like A600blSc. We can change it to anything, up to 46 ASCII characters, and get our device named the way we want. There are Windows tools for this available on FTDI Chip site, but there was none for MacOSX. Since playing with the EEPROM can render your FT232R useless, or at least make you unsolder it, I thought a simple tool which won’t let you break the device would be useful.
That’s why I wrote the Pirate Rename utility. It uses a modified open source library called libftdi-1.0 to talk to the FTDI chip and libusb-1.0.0. They are both embedded in the application bundle so you don’t need to worry about it.
This demo is what the Bus Pirate is all about. A AT45DB041D 4Mbit flash memory stores the FPGA design on the open source logic analyzer project currently known as SUMP PUMP. We’ve worked with EEPROMs in the past, but this chip is a different beast.
Follow along as we use the Bus Pirate to learn about this chip before writing firmware for the logic analyzer.
Gatsu made a unique DIY Bus Pirate case for a v2go:
Here is something I cooked up a while as a case for my BP v2.go. Its a DV tape case. The inside is 46mm x 68mm so it would fit a v3 as well.
The board is fixed to the bottom with a double layer of double sided tape. The cut outs were just done with a scalpel as the material is quite soft.
Thanks for the tip! Via the forum.
This how-to describes the Pirate-Loader console program that uploads new firmware to Bus Pirates with bootloader v4+. Piotr whipped up this easy to use console app with versions for Windows, Linux, and Mac (source). The first release is here, though the latest console app will be included in future firmware upgrade archives.
The ds30 Loader v4 bootloader in the Bus Pirate has a GUI update application that works on Windows (.NET), Linux, and Mac (Mono), but it presents problems on some systems and many users would prefer not to install .net or Mono. If you don’t like the GUI updater, now you can use this simple command line application instead.
A demonstration of the Pirate-Loader update utility follows.