Bus Pirate: First steps

From Embedded Lab Vienna for IoT & Security
Revision as of 16:25, 5 November 2019 by Jostrowski (talk | contribs)
Jump to navigation Jump to search

Summary

Here the upgrade process for the Bus Pirate v3.6 will be showcased.

This will use the tutorial provided by the manufacture and the github repository

Description

The Bus Pirate is an open source hacker multi-tool that talks to electronic stuff. It's got a bunch of features an intrepid hacker might need to prototype their next project. The Bus Pirate is used through a simple terminal interface.

Protocols

  • 1-Wire
  • I2C
  • SPI
  • JTAG
  • Asynchronous serial
  • MIDI
  • PC keyboard
  • HD44780 LCD
  • 2- and 3-wire libraries with bitwise pin control
  • Scriptable binary bitbang, 1-Wire, I2C, SPI, and UART modes.

Application Support

  • AVRDude AVR programmer (AVRDude v5.8+, firmware v4 (any) or v5.9+)
  • OpenOCD JTAG debugger
  • flashrom bios/flash programmer

Windows

comming soon..

Linux

For some strange reason the flash-firmware tool (called pirate-loader) did not work for me.
This is why I recommend using Windows to install a new Firmware.

Communicate with the Bus Pirate

Install minicom serial reader/writer
sudo apt install minicom
Connect BusPirate to the computer
Check on what port the Bus Pirate connected to:
dmesg | tail
j@laptop:~$ dmesg | tail
[  760.610683] ftdi_sio 1-1.2:1.0: device disconnected
[  765.780110] usb 1-1.2: new full-speed USB device number 7 using xhci_hcd
[  765.887218] usb 1-1.2: New USB device found, idVendor=0403, idProduct=6001
[  765.887224] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  765.887227] usb 1-1.2: Product: FT232R USB UART
[  765.887230] usb 1-1.2: Manufacturer: FTDI
[  765.887233] usb 1-1.2: SerialNumber: A907NRH0
[  765.890644] ftdi_sio 1-1.2:1.0: FTDI USB Serial Device converter detected
[  765.890768] usb 1-1.2: Detected FT232RL
[  765.891161] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
Configure minicom
minicom -s
select Serial port setup
set to following parameters:
   +-----------------------------------------------------------------------+
   | A -    Serial Device      : /dev/ttyUSB0                              |
   | B - Lockfile Location     : /var/lock                                 |
   | C -   Callin Program      :                                           |
   | D -  Callout Program      :                                           |
   | E -    Bps/Par/Bits       : 115200 8N1                                |
   | F - Hardware Flow Control : No                                        |
   | G - Software Flow Control : No                                        |
   |                                                                       |
   |    Change which setting?                                              |
   +-----------------------------------------------------------------------+
Then Save setup as dfl
Connect to Bus Pirate
sudo minicom
Press Enter and following should be displayed:
Welcome to minicom 2.7.1
OPTIONS: I18n 
Compiled on Aug 13 2017, 15:25:34.
Port /dev/ttyUSB0, 16:23:34
Press CTRL-A Z for help on special keys
HiZ>

If Hiz/> is not being displayed the connection was not successful

Get Bus Pirate version
Enter: i
HiZ>i
Bus Pirate v3b
Firmware v5.10 (r559)  Bootloader v4.4
DEVID:0x0447 REVID:0x3046 (24FJ64GA002 B8)
http://dangerousprototypes.com

Hardware v3b and v3.5 shipped with bootloader v4+, continue below

Hardware v3a and v2go shipped with bootloader v2, please see the upgrade guide


For all commands visit the manufactures website

Update Firmware

Build the [source code yourself]

or use a precompiled binary of the firmware (easier)

Download firmware v7 for Bus Pirate v3.6
sudo apt install subversion
svn export https://github.com/mikebdp2/Bus_Pirate/trunk/package_latest/BPv3 buspirate

To flash the new firmware you need the ds30-pirate-loader tool

For some reason the binary pirate-loader_lnx did not work for me

Used Hardware

Bus Pirate v3.6 Universal serial interface

References