For some real fun, check out these GitHub repositories:
https://github.com/Siglent/FindKeys
https://github.com/Siglent/TryKeys
Purely for educational purposes only. User is expected to comply with all applicable state, county, federal and international laws
This is almost awesome and almost worked swimmingly well.
The Tek 475 here decided to go traceless. I'd been sorely tempted by the low end Rigol for the last few years, but the Siglent at 200MHz with four channels felt like a more compelling addition. Don't need the 200MHz, don't actually need any of the other features either, don't even use a scope often anymore, but it's always fun to hack, and being able to log in to your devices to poke around is fun. Aside from not immediately figuring out that the unit came with DHCP disabled, all of that went very well and I had the eevblog-modified OS loaded and running without much ado.
However, when I got to the github projects above, my code development environment is much closer to working on a VT100 than it is a PC with an IDE. There was a little irony that a user with a handle of VT100 posted a bunch of Microsoft-dependent stuff. I didn't have Visual Studio loaded anywhere, and how to use it wasn't entirely clear to me, as my development environment is usually just vi, cc, make, and the rest of the UNIX stack. I figure if someone who's written tons of C had issues figuring this out, maybe non-developers or other old UNIX farts might have trouble too. If this turns out to be helpful to someone, here's a few notes, hard won through about eight hours of persistence and one trashed VM, hopefully a clue or two for anyone similarly clueless-ish about Visual Studio:
Visual Studio is huge. It almost overflowed my 50GB Windows lab VM's. I installed Visual Studio Community 2017 with the Visual Studio Installer downloaded from Microsoft. Under "Workloads" I had it install .NET Desktop Development, Desktop development with C++, and .NET Core cross platform development. I also selected "NuGet targets and build tasks" under "Installation details" the second time around, because something went tragically wrong with my first VM, and NuGet wasn't working correctly. Some of these selections are needlessly sloppy, I'm sure.
Once in Visual Studio 2017, I went to "File -> Open -> Open from Source Control", plugged in the FindKeys github URL, and it picked it up, bringing up a "Solution Explorer" window. After spending some time looking around and wondering where a "build" button or key was, I opened "Program.cs" in the editor to look at it and suddenly "Build" became available in the menu bar. Yay for obtuseness. It built the FindKeys.dll just fine, depositing it in C:\Users\username\source\repos\FindKeys\bin\Debug\netcoreapp2.1, so I just moved the memory dump bin file to that directory and ran it there, and it worked.
At this point, things went off the rails unrecoverably on the first VM. I tried to do the same process for TryKeys and it went seriously sideways. It needed a package called "LiteGuard" and I couldn't figure out how to install it. For whatever reason, NuGet was broken and unusable in the first VM. Being unfamiliar with the tool and thinking myself just too dumb for modern tools, I wasted several hours stuck trying to remediate that. Install-Package simply wasn't there or was broken or something. So I switched to a different lab VM, installed Visual Studio again, and went to do TryKeys again.
This bombed as the build still needed "LiteGuard". Trying to install that, it refused. It really wanted a project name. So I knew I wasn't really doing this correctly, but I didn't really care, so I exited out of VS to dump the mess, launched VS again, did "New -> Project from Existing Code", specified "Visual C#", pointed the dir at C:\Users\username\source\repos\TryKeys, and named it "TryKeys". Then I was finally able to successfully go to "Tools -> NuGet Package Manager -> Package Manager Console" and entered
PM> Install-Package LiteGuard -Project TryKeys
It still presented an error but it seemed to complete, so I again opened Program.cs, ran "Build", and it built, and ran great.
Y'all are welcome to explain in excruciating detail how I made this more complicated than needed or went about it entirely the wrong way. :-) I just felt it would be a shame if the effort put into these two fine Siglent tools was not accessible to someone without any coding experience. Thanks for the tools.