Recently I needed to get myself a logic analyzer. But for what I needed I didn’t want to spend much money on one. As I was surfing the web for an answer I was coming along a project called Sigrok. You can find out more about it here (sigrok.org). It’s basically a cross-platform signal analysis software. It’s all Open-Source and it supports many different hardware types. Read below how I came to my super cheap logic analyzer solution.
As I said the software supports various devices. You can find a list on the project page (sigrok.org/wiki/Supported_hardware). The thing I was really interested was a Cypress CY7C68013. Modules with this controller are pretty cheap. I got mine for less than 4 Euros on ebay.
Setting it up was pretty straight forward. See details on how to do this on the project page as well (sigrok.org/wiki/Lcsoft_Mini_Board). The chip runs on 3.3 V and if you want to probe 5V logic signals it is a good idea to add some basic protection. The website describes solutions like adding zener diodes and resistors and I thought I could use some 74HC245 in addition. I created a little board which fits right on top of the module. It looks like this:
Schematics and layout files are on Github. Feel free to use them. Here is an image of the final prototype module. Works really good.
I haven’t tested the speed of the module yet. But decoding an uart works pretty neat. You can record a signal trace and in a second step you can play around with different baud rate for decoding. Changing the baud rate after you recorded some data works pretty good. For example I had an issue with my ESP8266. By connecting the logic analyzer I was able to see that the ESP switched between different baud rates on startup. And I was able to decipher everything without recapturing it.
The conclusion: Really cheap and easy and definitely worth every cent.