SPI Hook

Contents

Description

General Information

The SPI Hook, designed by TinCanTools is an utility board that enables the user to:
1) read, erase, and write files to the MinnowBoard Max/Turbot’s onboard SPI flash,
2) functions as a virtual Serial Port that can communicate with the MinnowBoard Max/Turbot 3) read, erase, and write files to the Intel Galileo2 onboard SPI flash.

Photos

Features

  • Features:
    • Reads, Writes, and Erases the flash onboard the MinnowBoard Max/Turbot and Intel Galileo2
    • Creates a virtual Serial Port to communicate with the MinnowBoard Max/Turbot and Intel Galileo2
    • All cables are included: USB cable, Flash cable, Serial Cable

Quick Instructions

See the Intel Galileo2 SPI-Hook page for instructions specific to that board.

SPI Hook Jumpers

For the MinnowBoard Max, set the jumpers as follows:
SPI (JP1): set to 1.8V (the flash operates at 1.8V)
SERIAL (JP2): set to 3.3V (serial communications operate at 3.3V)
JP3: set to pins 2-3 (this configures the mux signal)

For the MinnowBoard Turbot, set the jumpers as follows:
SPI (JP1): set to 3.3V (the flash operates at 3.3V)
SERIAL (JP2): set to 3.3V (serial communications operate at 3.3V)
JP3: set to pins 2-3 (this configures the mux signal)

Connecting the Cables to the Minnowboard Max

Connect the 6-pin serial cable between the SPI Hook J3 and MBM J4. Make sure the black wire (GND) is toward the SATA connector on the MBM. Make sure the black wire (GND) is connected to Pin #1 on the SPI Hook.

 

Connect the 8-pin ribbon cable between the SPI Hook J2 and MBM J1. Make sure pin #1 (RED stripe) is aligned with pin #1 of both connectors.

 

 

Flashrom Commands

To start with lets just read the flash from the MinnowBoard Max. That way we do not do any destructive writes until we know everything is working ok.

NOTE that you will require flashrom v.0.9.8 at minimum.

Read a flash image from the minnowboard max and write it to filename test.bin

sudo ./flashrom -p ft2232_spi:type=2232h,port=A,divisor=4 -r test.bin

Verify the image against the stored filename test.bin

sudo ./flashrom -p ft2232_spi:type=2232h,port=A,divisor=4 -v test.bin

Write a new image to the Minnowboard Max flash

– to write the image filename test.bin to the minnowboard max:

sudo ./flashrom -p ft2232_spi:type=2232h,port=A,divisor=4 -w test.bin

External Resources

Design Files

Flyswatter

The Flyswatter is a low cost JTAG programmer / debugger for use with ARM (ARM JTAG) and MIPS (MIPS JTAG) cpu cores.

It uses the open source OpenOCD (Open On-Chip Debugger) software to provide debugging and in-system programming of embedded target devices.

Features:

  • USB 2.0 Full Speed device interface (12 Mbits/sec)
  • Can be used to debug and program all ARM and MIPS processors supported by OpenOCD
  • Provides a standard ARM 14-pin (2 x 7)JTAG interface
  • Adds a virtual RS232 serial port to your computer or laptop with full modem signals: TXD, RXD, RTS, CTS, DTR, DSR, DCD, RI
  • Supports target voltages of: 3.3V, 2.5V, 1.8V, 1.5V, 1.2V (voltage range: 1.2V to 3.6V)
  • No external power supply required – the Flyswatter gets its power from the computer’s USB port
  • Open hardware – complete schematic provided
  • Open software – software supported by OpenOCD (open source) debugger
  • Package Includes: Flyswatter board, USB Cable and 8 inch 14-pin JTAG ribbon cable
  • Dimensions: 2.5 inches (width) x 3.0 inches (height)

Supported Devices

OpenOCD supports the following ARM cores:

ARM CORE EXAMPLE PROCESSORS
ARM7TDMI LPC2148, AT91SAM7
ARM720T LH79520, EP7312
ARM9TDMI
ARM920T S3C2410, S3C2440
ARM922T
ARM926EJS S3C2412, STN8811, STN8815
ARM966E STR91XF
ARM11 S3C6400, OMAP2420, MSM7200
ARM1136
ARM1156
ARM1176
CORTEX-M3 LM3S series, STM32 series
CORTEX-A8 OMAP3530 BeagleBoard
CORTEX-A8 DM3730 BeagleBoard-xM
CORTEX-A9 OMAP4430 PandaBoard
XSCALE PXA255, PXA270, IXP42X
MARVEL FEROCEON CPU CORE

OpenOCD also supports the following MIPS cores (requires a MIPS 14-Pin JTAG Adapter):

MIPS CORE EXAMPLE PROCESSORS
MIPS M4K

JTAG Adapters

JTAG Adapters plug into the ARM 14-pin connector located on the Flyswatter and change the pin-out to a different JTAG interface. Three JTAG adapters are available for the Flyswatter:

 

ARM 20 pin JTAG Adapter

ARM 20-Pin JTAG Adapter – This adapter converts the Flyswatter’s JTAG interface into a standard ARM 20-pin configuration. The package also includes 14-pin ribbon cable.

 

BeagleBoard JTAG Adapter

BeagleBoard JTAG Adapter – This adapter converts the Flyswatter’s JTAG interface into a standard TI 14-pin JTAG configuration. The package also includes a serial adapter board that converts the DB-9 Male connector located on the Flyswatter to a 10-Pin ribbon cable. This ribbon cable is used on the BeagleBoard Rev B/C boards to interface to the serial port. The 10-pin ribbon cable is included in the package.

 

MIPS 14-Pin JTAG Adapter

MIPS 14-Pin JTAG Adapter – This adapter converts the Flyswatter’s JTAG interface into a standard MIPS 14-pin JTAG configuration. The package also includes 14-pin ribbon cable.

 

Serial Port

The Flyswatter’s serial port provides you with an independent functional “USB to RS-232” serial device. The serial port is completely independent from OpenOCD on both Linux and Windows. You can use the Flyswatter’s serial port and never have to use OpenOCD or JTAG, or you can use it together with OpenOCD and have both a serial port and JTAG interface operating at the same time for debugging your target device.

For Linux, the RS232 driver for the FT2232 is part of the main kernel tree and is provided in most standard Linux distributions. In Windows, you have to load the Windows driver for the FT2232. Once the driver is loaded, Windows will assign a virtual COM port to the Flyswatter’s serial port. It operates just like a standard COM port. You can use the Flyswatter’s serial port on laptops or PC’s that do not have a 9-pin legacy serial connector.

Serial Port Interface

You can use Minicom to communicate with the Flyswatter’s serial port on Linux. See the Minicom page for setup instructions.

Documents

Documents:

Flyswatter How To

The Flyswatter How To and Flyswatter Windows How To guides show a new user how to connect the Flyswatter to the Beagleboard, and how to install and run OpenOCD and GDB Debugger. To reach the guide, follow the link in the section title.

Flyswatter 2

The Flyswatter2 is an high performance USB to JTAG in-circuit debugger and programmer designed for use with ARM and MIPS target devices. It uses the open source OpenOCD (Open On-Chip Debugger) software to provide debugging and in-system programming of embedded target devices.

Features

  • USB 2.0 Hi-speed device interface (480 Mbits/sec)
  • Can be used to debug and program all ARM and MIPS processors supported by OpenOCD
  • Provides a standard ARM 20-pin JTAG interface connector (Male shrouded header, 2 rows x 10 pins)
  • Adds a virtual RS232 serial port to your computer or laptop with full modem signals: TXD, RXD, RTS, CTS, DTR, DSR, DCD, RI
  • Supports target voltages of: 5.0V, 3.3V, 2.5V, 1.8V, 1.6V (voltage range: 1.6V to 5.0V)
  • No external power supply required – the Flyswatter2 gets its power from the computer’s USB port
  • Uses open source software: OpenOCD – Open On-Chip Debugger debugger software
  • Package Includes: Flyswatter2, USB Cable, 12 inch serial cable, and 8 inch 20-pin JTAG ribbon cable
  • Compact Size: 3.15 inches (width) x 2.7 inches (length) x 0.8 inches (height)

Supported Devices

OpenOCD supports the following ARM cores:

ARM CORE EXAMPLE PROCESSORS
ARM7TDMI LPC2148, AT91SAM7
ARM720T LH79520, EP7312
ARM9TDMI
ARM920T S3C2410, S3C2440
ARM922T
ARM926EJS S3C2412, STN8811, STN8815
ARM966E STR91XF
ARM11 S3C6400, OMAP2420, MSM7200
ARM1136
ARM1156
ARM1176
CORTEX-M3 LM3S series, STM32 series
CORTEX-A8 OMAP3530 BeagleBoard
CORTEX-A8 DM3730 BeagleBoard-xM
CORTEX-A9 OMAP4430 PandaBoard
XSCALE PXA255, PXA270, IXP42X
MARVEL FEROCEON CPU CORE

OpenOCD also supports the following MIPS cores (requires a ARM20MIPS14 MIPS JTAG Adapter):

MIPS CORE EXAMPLE PROCESSORS
MIPS M4K, MIPS32

JTAG Interface

The Flyswatter provides a standard ARM-compatible 20-pin JTAG interface. The JTAG interface connects to the target device with a 20-pin ribbon cable. This connection enables access to the on-chip debug module which is integrated into the ARM CPU. The debug module enables a programmer to debug the software on an embedded target system.

The second purpose of the JTAG interface is to allow the programming of NOR and NAND FLASH memory devices that are connected to or embedded within the target CPU.

JTAG Connector Pinout

Serial Port Interface

The Flyswatter2’s serial port provides you with an independent functional “USB to RS-232” serial device. The serial port is completely independent from OpenOCD on both Linux and Windows. You can use the Flyswatter2’s serial port without having to use OpenOCD or JTAG, or you can use it together with OpenOCD and have both a serial port and JTAG interface operating at the same time for debugging and communicating with your target device.

For Linux, the RS232 driver for the FT2232 is part of the main kernel tree and is provided in most standard Linux distributions. In Windows, you have to load the Windows driver for the FT2232. Once the driver is loaded, Windows will assign a virtual COM port to the Flyswatter2’s serial port. It operates just like a standard COM port. You can use the Flyswatter2’s serial port on laptops or PC’s that do not have a 9-pin legacy serial connector.

Supports all standard baud rates: 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200

You can use Minicom to communicate with the Flyswatter2’s serial port on Linux. See the Minicom page for setup instructions.

Flyswatter2 How To Guides

BeagleBone Black – Linux

This guide walk a first time user through connecting the Flyswatter2 to the BeagleBone Black Board, and installing and running OpenOCD and GDB Debugger.

Olimex LPC-P2148 – Linux

Olimex LPC-P2148 – Windows

These guides walk a first time user through connecting the Flyswatter2 to the Olimex LPC-P2148 Prototype Board, and installing and running OpenOCD and GDB Debugger.

Olimex PIC-P32MX – Linux

Olimex PIC-P32MX – Windows

These guides walk a first time user through connecting the Flyswatter2 to the Olimex PIC-P32MX board, and installing and running OpenOCD and GDB Debugger.

Beagleboard – Linux

Beagleboard – Windows

These guides provide a first time user with instructions for the Beagleboard, and installing and running OpenOCD and GDB Debugger.

Beagleboard XM – Linux

Beagleboard XM – Windows

These guides provide a first time user with instructions for the TI Beagleboard XM, and installing and running OpenOCD and GDB Debugger.

Pandaboard – Linux

Pandaboard – Windows

These guides provide a first time user with instructions for the TI Pandaboard, and installing and running OpenOCD and GDB Debugger.

RouterStation Pro – Windows

These guides walk a first time user through connecting the Flyswatter2 to the Ubiquiti RouterStation Pro, and installing and running OpenOCD and GDB Debugger.

Flyswatter2 LPC2214 How To Linux

These guides walk a first time user through connecting the Flyswatter2 to the MikroElektronika LPC2214 mikroBoard, and installing and running OpenOCD, GDB Debugger and Eclipse.

Silverjaw

 

Description

General Information

The Silverjaw Lure, designed by TinCanTools is an mSATA+mPCIe dual-port MinnowboardMax extension board.

Photos

Features

  • Features:
    • Dual mPCIE and mSATA sockets
    • supports half-size and full-size cards
    • Boot from a memory card in the mSATA socket
    • efficient switching power supplies
    • same footprint as the Minnowboard Max

Reference Material

Design Files