Homebrew Gear (Part 1)
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.