Channels ▼

Al Williams

Dr. Dobb's Bloggers

Homebrew Gear (Part 1)

April 18, 2010

I like to have my own test gear for my personal projects but it is often disappointing to use a $40000 scope at work and then go home to a $400 scope (although the performance of $400 scopes has gone up lately if you know how to shop).

I tend to buy older gear (My workhorse analog scope is a Tek almost as old as I am and I use an old Gould logical analyzer that weighs more than all the PCs in my house put together). I also don't mind homebrewing gear when it makes sense.Lately I've noticed some of my friends in small- to medium-sized companies are starting to want to know more about how to get stuff on the cheap -- I guess budgets are tight everywhere.

While I like the Gould, its hardly portable. But a 32-bit 100Mhz logic analyzer can be pretty expensive. There are some "USB-based" logic analyzers that are inexpensive now, but they aren't really professional analyzers. They are typically just USB inputs and some PC software. I know from experience that even with everything tuned "just so" getting 24MHz performance in the software and on the USB bus is nothing short of a miracle. The ZeroPlus units seem to be the exception. Cheap analyzers that just use the USB for communications. However, they charge you for protocol modules so they might not be as cheap as you think.

On the other hand, there is at least one open source alternative out there that runs on the Digilent Spartan board (the same one I use to test CPU designs). I started with the "small" board for about $100 and later bought the "bigger" board (the boards are the same size, but have different capacity FPGAs on them). So I had a spare "small" board floating around. Seems like it would make a good logic analyzer.

I wasn't the only one who thought that apparently. Sump.org has the design files for converting one of these boards into a pretty nice analyzer. Up to 200MHz for 16 channels or 100MHz for 32. A Java front end (using RXTX for serial I/O) that works anywhere Java (and RXTX) works. It is sophisticated enough to do state analysis, I2C, and SPI and has a four-stage trigger. Not bad for $100.

Of course, the inputs are 3.3V so if you want something else, you will need to build a little adapter. Also, I was surprised that while the analyzer has a sample clock output, it doesn't have a trigger output so you could use it to trigger a digital storage scope. Well, it has one now since I added it.

If you like, someone is selling a board made just for the logic analyzer software, but it only buffers 16 channels (a shame). But, it is less than $50, so probably a good deal. I notice they claim to have a trigger output too so either I missed it in the original firmware, or they also added something similar.

Of course, if money's no object there are plenty of big name logic analyzers that will run rings around this one. But for $50 or $100 bucks you get a lot of capability if you can live with the limitations.

Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 


Video