-
-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Discussion] Runtime library alternatives #5
Comments
Dear Elmu, I agree that the thirty-party runtime library is now an overkill for this project, but was the only option readily available when the project was created. Your research is really appreciated and I invite you to create a PR to improve the project and reduce dependencies on thirty-party runtime libraries. |
Hello I tell you that I already wrote the C# code that communicates directly with the oscilloscope over USB without needing ANY external installation except the tiny driver of 24 Kilobyte. I found that your oscilloscope uses a very different Waveform command than mine. |
Hello Leonardo Rigol is selling chinese crap. Every day I find a new bug in my oscilloscope and must implement another workaround. The programmers manual of your scope is extremely poor. It gives nearly no detail. I wanted to write you a personal message on Github, but this feature does not exist. Can you write me ? |
Hi Elmue, |
I wrote you 2 emails. |
We were able to get in touch and a new version based on the tiny "USB Test and Measurement Device (IVI)" driver is now available here https://github.com/electro-logic/Oscilloscope/tree/TinyDriver (credits to @Elmue for the new driver code) |
Your project requires to install 1 Giagabyte of Stuff from NI and IVI and fill the disk with nonsense that nobody ever needs.
There are 7 services running in the background from this installation.
You require this installation from the poor user just to send a few primitive text commands to the oscilloscope.
The only really required installation is the USB driver which has a size of 24 Kilobyte.
All the other stuff is a huge tremendous waste of disk space.
What the one Gigabyte of useless installation does is only to add a header of 12 bytes to each text command and send it to the USB device. The oscilloscope then responds with the same 12 byte header and another text string.
And therefore you force the poor user to install one GIGAbyte of nonsense ??
Please have a look at this project which does the same as your NI + IVI installation:
https://github.com/klasyc/ScpiNet
I extracted the really required stuff from this project and ended up in ONE file of C# code with 420 lines of code.
This one tiny C# class does exactly the same as your 1 Gigabyte installation !!!
Can you believe this ?
The author of ScpiNet says exactly the same in his introduction ReadMe:
"The most of manufacturers provide their own libraries like Tektronix's [TekVISA] or National Instruments' [NI-VISA]. Unfortunately, in my opinion these libraries are too heavy, create unwanted software dependencies, make installation packages larger, usually focus on one manufacturer hardware only and in the end they only provide a "pipe" which is able to transfer the SCPI commands. The goal of this project is to create a simple, lightweight and manufacturer-independent library which can talk to any SCPI device over USB or Ethernet."
He did an excellent work.
His code is not very clean, but it works.
The only required installation is the USB driver, nothing else.
And the USB driver consists of only 3 tiny files:
ausbtmc.inf (2 kB)
ausbtmc.cat (9 kB)
amd64\ausbtmc.sys (24 kB)
You find them on your disk, but Windows has renamed them into OEMXX.inf and OEMXX.cat and copied them into different folders.
The text was updated successfully, but these errors were encountered: