DIY logic analyzers

In Internet there seems to be many plans for DIY logic analyzers:
Open source logic analyzer
OpenBench Logic Sniffer
Openbench Logic Sniffer
SUMP FPGA Based Logic Analyzer
FLASH – PLAICE: Programmer, Logic Analyzer and In-Circuit Emulator Project
A logic analyzer using the PC’s parallel port
A logic analyzer using the PC’s parallel port
MiniLA – logic analyzer SW & HW
The “Sump” Logic Analyzer (video demo)
Prototype: Openbench Logic Sniffer logic analyzer

There seems to be many open hardware projects, but what is lacking is good software for them. Some logic analyzer use SUMP PC Client and there is also Java Logic Analyzer Client project (jlac).

I would like to see on this Open Source world is some kind of common format logic analyzer data presentation and maybe common API for accessing the information. In this way it would be easy to write all kinds of applications that decode data and hardware that captures the data independently. It would be easy to integrate different things easily. This would benefit everyone. I would want something like what Wireshark did for network traffic analyzing.

First I though maybe I need to start some of my own code to start this if there is nothing else. For presenting logic data with timestamps one format that come to my mind was Comtrade. Comtrade is a standard for common format for electric power systems transient data exchange. It allows storing many channels of time stamped analogue and digital data. The data is normally in CSV format, so it would be easy to use. There are some standard sample rates but maybe we could use also other rates. Time stamping work at least to microsecond resolution. There are many Comtrade viewing programs, both free and commercial.

Another project that looked interesting was Comedi. The Comedi project develops open-source drivers, tools, and libraries for data acquisition. Comedi is a free software project that develops drivers, tools, and libraries for various forms of data acquisition: reading and writing of analog signals; reading and writing of digital inputs/outputs; pulse and frequency counting; pulse generation; reading encoders; etc. Comedi is a collection of drivers for a variety of common data acquisition plug-in boards in Linux.

I did not go to the trouble of writing my own code for a while. Then about half year ago I saw announcement of Sigrok: An Open Source Logic Analyzer. The sigrok project aims at creating a portable, cross-platform, Free/Libre/Open-Source signal analysis software suite (client) that supports various device types. This was what I was thinking of the end results should be. I start to follow how this project will succeed in their aims. Looks interesting at this point.

7 Comments

  1. ADT San Antonio says:
    I’ve read some just right stuff here. Definitely price bookmarking for revisiting. I surprise how much attempt you put to create such a excellent informative web site.
    Reply
  2. Tomi Engdahl says:
    Turning the Stellaris Launchpad into a logic analyzer
    http://hackaday.com/2013/01/27/turning-the-stellaris-launchpad-into-a-logic-analyzer/

    If you have a Stellaris Launchpad sitting around, have a go at using it as a logic analyzer

    This build turns the Launchpad into a 10 MHz, 8-channel logic analyzer with a 16 kB buffer comparable with just about every piece of software thanks to the SUMP protocol.

    Reply
  3. Open Logic Sniffer software and hardware « Tomi Engdahl’s ePanorama blog says:
    [...] (I have not yet tested it with real hardware). The software seem to be considerably getter than some other free logic analyzer software I have checked over years. Logic Sniffer Java client is worth to check out if you are looking for [...]
    Reply
  4. Tomi Engdahl says:
    Comtrade (IEEE Std C37.111-1999) is a common format for electric power systems transient data exchange. It allows storing many channels of time stamped analogue and digital data.

    The time stamp has a base unit of microseconds. The elapsed time from the Þrst data sample in a data Þle to the sample marked by any time stamp Þeld in that data Þle is the product of the time stamp for that data sample and the time multiplier in the confguration file (timestamp ´ * timemult).

    timemult is the multiplication factor for the time differential (timestamp). It is real numeric value. Typically it is integer (for example 1000 for timestamps in milliseconds).

    That timemult can also be in standard floating point notation, meaning more accurate than microsecond time stamps are possible (for example nanoseconds with value 0.001)

    Reply
  5. boost alexa, like, view says:
    I have been browsing on-line more than three hours lately, but I never discovered any attention-grabbing article like yours. It’s lovely price sufficient for me. In my opinion, if all site owners and bloggers made good content material as you probably did, the web can be a lot more helpful than ever before.
    Reply
  6. Tomi Engdahl says:
    ProduinoCY7C68013A-56 USB Logic Analyzer Development Board for Arduino – Blue + Black
    http://dx.com/p/produinocy7c68013a-56-usb-logic-analyzer-development-board-for-arduino-blue-black-290156#.UuYFbLSxVaQ

    CY7C68013A-56 chipset: Low-power version; Enhanced 51-core; 16KB program data areas; 48MHz frequency

    All GPIO are lead out through 2.4mm pin header
    Achieve logic analyzer functions with certain firmware

    Reply
  7. Tomi Engdahl says:
    Quite interesting hack:

    Turning An Analog Scope Into A Logic Analyzer
    http://hackaday.com/2014/04/09/turning-an-analog-scope-into-a-logic-analyzer/

    Reply

Leave a Comment

Your email address will not be published. Required fields are marked *

*