Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Linux support for International Test Instruments' 1480A USB protocol analyzer

branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

README
User-space driver and tools for ITI1480A USB analyser.
http://github.com/vpelletier/ITI1480A-linux

Disclaimer:
  I am not affiliated with International Test Instruments in any way. They
  kindly accepted that I start reverse-engineering their windows-only software
  so I could try to use a device I bought from them with Linux only. I had no
  privileged access to any documentation of any kind.

  This is a work in progress, so it is not very user friendly yet.

Dependencies:
- python 2.4+ [1]
- libusb 1.0 [2]
- python-libusb1 [3]
- cycfx2prog [4]
- ulpitest.rbf from "1480A USB Protocol Analyzer Software" [5]
  (and a way to install it: wine, Windows, ...)
- either ITI1480A.spt from "1480A USB Protocol Analyzer Software" [5], or
  fx2lib [8] and sdcc [9], see sources in CY7C68013A directory
- udev [6]
- ply (python lex yacc) [7]

Install:
- Install udev/ITI1480A.rules to /etc/udev/rules.d
  NOTE: this udev configuration file will make the analyser available to the
  plugdev user group, so that you don't need to be root to access it. This
  might not be what you want, or might even not be an existing user group in
  your distro (Debian here).
- Install udev/ITI1480A.sh to /lib/udev
- Install firmware. There are two possibilities:
  Using ITI's ITI1480A.spt:
  - Extract Cypress FX2 firmware:
      spt2hex.py /path/to/ITI1480A.spt
    This can generate several files, use the highest-numbered one
    (ITI1480A_1.hex is assumed here).
  - Install ITI1480A_1.hex to /lib/firmware/ITI1480A.hex
  Otherwise, Using bundled firmware sources:
  - Build the firmware:
    cd CY7C68013A
    FX2LIBDIR=/path_to/fx2lib/ make
  - Install:
    cp build/ITI1480A.ihx /lib/firmware
- (Re)plug your protocol analyser

To start a capture, run
  capture.py -f /path/to/ulpitest.rbf > out.usb
SIGINT (^C)/SIGTERM to stop the capture and exit
SIGTSTP to pause the analyser, SIGCONT to resume

There is at the moment no GUI to inspect dumps and control the analyser. To
get a human-friendly dump, you can use display.py:
  Examining a previous capture session:
    display.py < out.usb

  Watching current capture session (no save):
    capture.py -f /path/to/ulpitest.rbf | display.py -f

  Watching and saving current capture session:
    capture.py -f /path/to/ulpitest.rbf | display.py -ft > out.usb

Well, actually, there is a GUI. Look in wxwidget directory. But don't expect
too much.

[1] http://python.org/
[2] http://www.libusb.org/wiki/libusb-1.0
[3] http://pypi.python.org/pypi/libusb1
[4] http://www.triplespark.net/elec/periph/USB-FX2/software/
[5] http://www.internationaltestinstruments.com/ , can be installed with wine
[6] Should come with your distro... Intergation with other similar mechanisms
    are welcome.
[7] http://www.dabeaz.com/ply/
    See also https://github.com/vpelletier/ply for higher parsing speed.
[8] https://github.com/mulicheng/fx2lib
[9] http://sdcc.sourceforge.net
Something went wrong with that request. Please try again.