Getting started with logic analyzers - MacOS version
Posted: Sun Aug 13, 2023 7:21 pm
Or, 3 days in dependency hell.
Hi guys, I just got back from visiting the late '90s, where I tried to build a project in Slackware linux... wait, that's not right. Actually, I just spent the weekend trying to install SIGROK on my 10 year old MacBook pro. The short answer is, this cannot be done.
Both Ed (BigEd) and George (gfoot) have advised me to acquire an inexpensive logic analyzer board and come to grips with Hoglet's decoder for the 6502. I figured it was about time to do that. If you are, like me, a relative newcomer to electronics and have only a hazy concept of why a logic analyzer is different from a logic probe and how what you use it for is different from what you use your oscilloscope for, have I got a great video for you: https://www.youtube.com/watch?v=dobU-b0_L1I
This video is from the author of the SIGROK "Pulseview" software and covers all kinds of important stuff, including what a logic analyzer is for, which inexpensive hardware boards you might want, where to buy them, and the difference between good and bad probes. Towards the end there's even a circuit simulation showing the effect of probe inductance on a transmission line that made me think about posting this to the "high speed digital circuits" thread. Anyway, it's a great video. If you're not already an expert, go watch it!
I picked up two inexpensive logic analyzers from Amazon. An 8 channel one, and a 16 channel one. Both of these boards use the open-source Fx2lafw firmware. The 16-channel one is the same board recommended for use with Hoglet's decoder, since you really need 12 channels to get the best results with it. The 8-channel board came with a USB cable and some female/female Dupont wires. The 16-channel board came with... the 16-channel board. Neither board had any kind of manual so I had to dig around through a whole pile of excessively bad documentation to figure out some basic things. In particular, the Lcsoft Mini Board is just a devboard with all of its microcontroller pins broken out into headers. It's not immediately obvious which of those pins are used by the FX2lafw firmware as the logic analyzer channels. At long last I found what I needed buried in this guide:In order to capture data for Hoglet's decoder to decode you need some software such as sigrok-cli or PulseView to communicate with the logic analyzer hardware. This is where things get sticky. The SIGROK project appears to have been all but abandoned. The SIGROK wiki suggests that for best results you should use the NIGHTLY build packages, rather than the stable release versions. Unfortunately, the nightly build links on the SIGROK downloads page have been broken since February 2023. That page suggests using an Archive.org snapshot to download nightly builds from December of 2022. Unfortunately, those Archive.org links are also corrupted. So I spent the next three days typing into my MacOS terminal trying to trace the dependency chain in order to build from source. (I could have done this with one command in Ubuntu!
) The SIGROK wiki suggests that the best (only) way to do this is to use Homebrew, which failed immediately for me. I went through a whole process of cloning git repositories trying to build the dependencies by hand, and finally determined that the actual problem is that two upstream packages (QT5.5 and Python2) have dropped support for MacOS Catalina.
And... that's pretty much where I am right now. I can't use sigrok-cli (there is no release version of it for Mac) and the release version of PulseView (0.42) is truly truly awful. As in, can't type into configuration fields because all keypresses are captured and interpreted as navigation commands for the main window, awful
The laptop I normally use for my retrocomputing activities is a Thinkpad X41. It *does* have USB 2.0, but it only has a 1.5GHz Centrino processor and 1.5GB of RAM, so I'm not sure it will be able to keep up. I guess my next project is to install SIGROK on it and find out!
Hi guys, I just got back from visiting the late '90s, where I tried to build a project in Slackware linux... wait, that's not right. Actually, I just spent the weekend trying to install SIGROK on my 10 year old MacBook pro. The short answer is, this cannot be done.
Both Ed (BigEd) and George (gfoot) have advised me to acquire an inexpensive logic analyzer board and come to grips with Hoglet's decoder for the 6502. I figured it was about time to do that. If you are, like me, a relative newcomer to electronics and have only a hazy concept of why a logic analyzer is different from a logic probe and how what you use it for is different from what you use your oscilloscope for, have I got a great video for you: https://www.youtube.com/watch?v=dobU-b0_L1I
This video is from the author of the SIGROK "Pulseview" software and covers all kinds of important stuff, including what a logic analyzer is for, which inexpensive hardware boards you might want, where to buy them, and the difference between good and bad probes. Towards the end there's even a circuit simulation showing the effect of probe inductance on a transmission line that made me think about posting this to the "high speed digital circuits" thread. Anyway, it's a great video. If you're not already an expert, go watch it!
I picked up two inexpensive logic analyzers from Amazon. An 8 channel one, and a 16 channel one. Both of these boards use the open-source Fx2lafw firmware. The 16-channel one is the same board recommended for use with Hoglet's decoder, since you really need 12 channels to get the best results with it. The 8-channel board came with a USB cable and some female/female Dupont wires. The 16-channel board came with... the 16-channel board. Neither board had any kind of manual so I had to dig around through a whole pile of excessively bad documentation to figure out some basic things. In particular, the Lcsoft Mini Board is just a devboard with all of its microcontroller pins broken out into headers. It's not immediately obvious which of those pins are used by the FX2lafw firmware as the logic analyzer channels. At long last I found what I needed buried in this guide:
Quote:
Note that pins PB0-PB7 and PD0-PD7 on the board act as channels 0-7 and 8-16 respectively.
The laptop I normally use for my retrocomputing activities is a Thinkpad X41. It *does* have USB 2.0, but it only has a 1.5GHz Centrino processor and 1.5GB of RAM, so I'm not sure it will be able to keep up. I guess my next project is to install SIGROK on it and find out!