Thursday, March 29, 2012

Saleae Logic as USBee ZX

I liked the Saleae Logic physical device, but the USBee Suite software better. Given my experience, this is possible. Mike Chrisco did some really good work in his “USBee SX/ZX Hack”. My starting point was a Windows 7 Pro 64bit system with USBee, Saleae and Cyprus software already installed. It took me a while, but here are the things I found unique along the way:

The version 3.4.7 of CyConsole that I used ONLY works with the CyUSB.Sys driver. So I had to edit the CyUsb.inf file. Using the “Cypress CyUsb.sys Programmer’s Reference” I added “%VID_0925&PID_3881.DeviceDesc%=CyUsb, USB\VID_0925&PID_3881”(without the quotes) to sections [Device],[Device.NT], [Device.Ntx86] and [Device.Ntamd64] and “VID_0925&PID_3881.DeviceDesc="Saleae Logic"” (without the outer quotes) to section [String]. Then using section “Windows Vista and 7”, reinstalled the CyUSB.sys driver for the Saleae Logic device (note that the system must be rebooted with “Disable Driver Signature Enforcement” for the driver to work with CyConsole).

Then I followed the steps in “USBeeSX/ZX Hack”. Note: the verifcation read string for the Saleae unit is "C0 25 09 81 38 00 00 00". Next I rebooted the system, checked that the device was recognized as the USBee ZX, started up USBee Suite and captured the first data of an I2C exchange.

No other testing has been done yet, but at least it functions as a logic analyzer. Big thanks to Mike for his trail-blazing work.