1BitSquared's Glasgow "Scots Army Knife" for Electronic Investigation Heads to Crowd Supply
Now in Revision C, the "Scots Army Knife" offers Python-powered features for electrical engineers, hackers, tinkerers, and more.
1BitSquared is preparing to launch a crowdfunding campaign for the Glasgow Interface Explorer, an iCE40 FPGA-powered "Scots Army Knife" for electronics engineers, hackers, tinkerers, and anyone who would like to be able to communicate with a wide range of electronic hardware.
The Glasgow board, currently in Revision C, is designed to offer a broad selection of capabilities with little more than "some wires and, depending on the device under test, external power," its creators boast — in concept similar to the Dangerous Prototypes Bus Pirate, currently undergoing its own shift to an iCE40 FPGA.
While still under active development, the Rev. C design can already: Communicate via UART with automatic detection of the baud rate required; initiate SPI and I2C transactions; read and write to and from 24-series electrically erasable programmable read-only memories (EEPROMs) and 25-series flash memories, the latter with automatic parameter determination via SFDP; read and write any ONFI-compatible flash with automatic parameter determination; program and verify AVR microcontrollers over SPI; play back JTAG SVF files; debug ARC processors over JTAG; debug a subset of MIPS processors via EJATG; program and verify XC9500XL CPLDs; and a range of progressively more esoteric tricks, including synthesise sound via a Yamaha OPL audio chip and play it via a web page and read magnetic flux data from 5.25" or 3.5" floppy drives.
The Glasgow Revision C board includes 16 input/output (I/O) pins with a peak 100MHz frequency, independent direction control, and independent pull-up/down resistors, grouped into two I/O ports compatible with 1V8 to 5V logic. Each port is able to sense and monitor the I/O voltage of the device on test and to provide up to 150mA power — with only devices requiring more than this needing external power. Communication to a host device is provided over a USB 2.0 connection.
The Glasgow software, meanwhile, is written wholly in Python 3 — including the FPGA logic, which is described using the Python-based domain specific language Migen. The hardware and software are all fully open, distributed under the 0-Clause BSD Licence and Apache 2.0 Licence; all files are already published on the project's GitHub repository.
"The Glasgow software is a set of building blocks designed to eliminate incidental complexity," its creators explain. "Each interface is packaged into a self-contained applet that can be used directly from the command line or integrated into a more complex system. Using Glasgow does not require any programming knowledge, though it is much more powerful if you know a bit of Python."
More details, including a form to register for notification when the campaign goes live, can be found on the Glasgow Crowd Supply campaign page.