Author Topic: Free DS6000/DS1000Z software  (Read 23452 times)

0 Members and 1 Guest are viewing this topic.

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Free DS6000/DS1000Z software
« on: June 09, 2015, 09:34:01 am »
 
The following users thanked this post: BravoV, mrflibble, ebclr, evb149, RoGeorge, Axk

Offline Anand

  • Contributor
  • Posts: 36
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #1 on: June 09, 2015, 10:20:39 am »
Very cool!  ;D
For the visual signal representation, do you get raw samples from the scope and draw them?
If so, how fast is it?

(I'm using Perl / GD::Simple and it takes a whooping 12 seconds to generate an image from 1Meg points).
« Last Edit: June 09, 2015, 10:27:20 am by Anand »
trashf.
 

Offline dom0

  • Super Contributor
  • ***
  • Posts: 1483
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #2 on: June 09, 2015, 10:31:52 am »
For the visual signal representation, do you get raw samples from the scope and draw them?

Looks to me like a screen grab from the scope itself.

(I'm using Perl / GD::Simple and it takes a whooping 12 seconds to generate an image from 1Meg points).

As expected from a software renderer (Although GD2 is also one of the slower software renderers, QPainter is, for example, much faster, and can render about 15 Mpoints/s on an average desktop machine). These things should be done on the graphics card, a while ago I wrote a many-trace renderer that easily handled a few dozen Mpoints with fluent scrolling and zooming - that's just not hard in GL. In fact, if you optimize this a bit more (and don't need streamed writes as I required), you'll be quickly able to render almost as many points as fit into the RAM of the GPU fluently.
,
 

Offline Anand

  • Contributor
  • Posts: 36
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #3 on: June 09, 2015, 07:18:20 pm »
Quote from: dom0 on Today at 13:31:52
As expected from a software renderer (Although GD2 is also one of the slower software renderers, QPainter is, for example, much faster, and can render about 15 Mpoints/s on an average desktop machine). These things should be done on the graphics card, a while ago I wrote a many-trace renderer that easily handled a few dozen Mpoints with fluent scrolling and zooming - that's just not hard in GL. In fact, if you optimize this a bit more (and don't need streamed writes as I required), you'll be quickly able to render almost as many points as fit into the RAM of the GPU fluently.

Can you help me go in the right direction with some reading materials / code (if available) etc.?
What programming language / modules / apis etc.?
trashf.
 

Offline dom0

  • Super Contributor
  • ***
  • Posts: 1483
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #4 on: June 09, 2015, 07:51:56 pm »
OpenGL and GLSL (plus utilities and the like, but Qt has those built-in anyway) is pretty much all you need, but since it's a somewhat intricate API/ecosystem it will probably take some time for a complete beginner to success.
OTOH rendering graphs is not that hard (cf. with what you usually do in 3D), especially if you don't need a lot of fancy features (like dashed or dotted or so lines, which are actually not that easy to accurately implement on the GPU). Also, outsourcing certain things to the Qt side of things certainly makes things simpler, e.g. text rendering. The widget I talked about above is about 2000 lines of code, so it's not much actually.
,
 

Offline miguelvp

  • Super Contributor
  • ***
  • Posts: 5550
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #5 on: June 09, 2015, 10:30:20 pm »
For the visual signal representation, do you get raw samples from the scope and draw them?

Looks to me like a screen grab from the scope itself.

Looking at the code it seems to be grabbing the waveforms. But only looked at the code for 2 minutes.

Edit: Oh, it can save both waveforms and display, looks interesting.
« Last Edit: June 09, 2015, 10:35:14 pm by miguelvp »
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #6 on: June 10, 2015, 07:49:37 am »
It downloads the waveform data and plots it on the screen.
You can resize the window, you can even make it fullscreen.
The number of waveforms/second depends on the model. The DS1054Z is slow,
depending on the number of channels active, 8 waveforms/second.
The DS6000 is faster with the screenupdates, but slower when you want to save a screenshot.

The DS6000 uses fullspeed USB (12Mb), The DS1054Z uses highspeed USB (480Mb) but there is no advantage in that.
It looks like the oscilloscopes are optimized for fast internal updates, not for fast updates via (usb)tmc/scpi/lxi.

Anyway, the program (including the plotting and painting algorithm) is much faster than what the oscilloscopes can provide.
The (connection of) oscilloscopes are the bottleneck, not the program.

In addition, instead of using the dials to change the timebasescale or triggerlevel/position,
you can drag the yellow/orange arrows aside the the plot in order to change those levels/position.

 

Offline miguelvp

  • Super Contributor
  • ***
  • Posts: 5550
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #7 on: June 10, 2015, 08:10:41 am »
Karel I did play with the MTU to achieve the 4 second transfer time over Ethernet (on a DS2000 series one), before that change I was getting the screen capture in 2 minutes and 41 seconds.

Still being all text based it's probably not too quick but still fast enough to control the scope if you look at the request and response timing with the proper maximum transmission unit set right:



Response time from the scope is just about 3ms from each request getting the screen chunks.

I only adapted an existing script to use forum member alex.forencich vxi11 python script and change the MTU to do a screen capture over ethernet:

https://www.eevblog.com/forum/testgear/python-based-instrument-control/msg676772/#msg676772

But I would guess for simple commands the MTU would not be exceeded so it might be just the initial processing that takes some time.
 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #8 on: June 10, 2015, 05:19:18 pm »

http://www.teuniz.net/DSRemote/
I would love to try this software, but when I go to install the libqt4-dev package, my system tells me it will _remove_ a lot of installed packages that I use all the time!  (Ubuntu). So I chickened out....  I really don't want to give up Kodi, Stellarium, KStars, WINE,  the Gnome interface, etc. 
The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #9 on: June 10, 2015, 05:50:49 pm »
I would love to try this software, but when I go to install the libqt4-dev package, my system tells me it will _remove_ a lot of installed packages that I use all the time!  (Ubuntu). So I chickened out....  I really don't want to give up Kodi, Stellarium, KStars, WINE,  the Gnome interface, etc.

There must be some error. Ask for help here: http://ubuntuforums.org
 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #10 on: July 09, 2015, 10:36:24 am »
I would love to try this software, but when I go to install the libqt4-dev package, my system tells me it will _remove_ a lot of installed packages that I use all the time!  (Ubuntu). So I chickened out....  I really don't want to give up Kodi, Stellarium, KStars, WINE,  the Gnome interface, etc.

There must be some error. Ask for help here: http://ubuntuforums.org

Well, I decided to install it on another computer. Linux Ubuntu 14. The qt4 packages installed without wanting to remove everything else! So I used git to retrieve the DSRemote files from github. The program compiled without errors and runs... looks beautiful. BUT... I can't connect to the scope. I have the DS1054Z connected to my LAN router, and can telnet to the scope with no problems, can control it fully over the telnet connection, so I know the LAN connection part of the chain is all good. But when I run DSRemote, the only thing I see under the Settings menu is "Activate", which apparently does nothing. There is no place to tell it that I want to connect using LAN and an IP address.

I'd really like to get this working. It would be a great boon to me to be able to access the scope using the DSRemote software from the computer in the other room, while the scope is sitting nice and comfortably in my lab.
The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #11 on: July 09, 2015, 11:42:12 am »
BUT... I can't connect to the scope. I have the DS1054Z connected to my LAN router, and can telnet to the scope with no problems, can control it fully over the telnet connection, so I know the LAN connection part of the chain is all good. But when I run DSRemote, the only thing I see under the Settings menu is "Activate", which apparently does nothing. There is no place to tell it that I want to connect using LAN and an IP address.

How does the settings menu look like?

Mine looks like this: (see attachment)

After clicking on apply, go to the device menu and click on connect.
« Last Edit: July 09, 2015, 11:44:24 am by Karel »
 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #12 on: July 09, 2015, 03:17:41 pm »
BUT... I can't connect to the scope. I have the DS1054Z connected to my LAN router, and can telnet to the scope with no problems, can control it fully over the telnet connection, so I know the LAN connection part of the chain is all good. But when I run DSRemote, the only thing I see under the Settings menu is "Activate", which apparently does nothing. There is no place to tell it that I want to connect using LAN and an IP address.

How does the settings menu look like?

Mine looks like this: (see attachment)

After clicking on apply, go to the device menu and click on connect.
I just get a single small dropdown box below the "Settings" in the top menu bar, with the single word "Activate" in it. The main screen looks just like yours, but I never see the Settings box that you show. Clicking on the "Activate" item does nothing.
The easiest person to fool is yourself. -- Richard Feynman
 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #13 on: July 09, 2015, 04:05:30 pm »
Ah, OK, I got it working now, by starting the program as root. So it's a permissions issue.

Thanks! There are still a few bugs to work out but it's working well enough for my purposes now.

Now I can show people my work without having to let them stumble around in the lab itself!

The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #14 on: July 10, 2015, 07:49:52 am »
There's a newer version available that fixes this problem (it was related to how Ubuntu's Unity desktop deals with dropdown menu's).

By the way, never run normal programs as root...

 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #15 on: July 10, 2015, 10:22:28 am »
There's a newer version available that fixes this problem (it was related to how Ubuntu's Unity desktop deals with dropdown menu's).

I did have a sneaking feeling that it had something to do with the Unity desktop. I usually use Gnome Classic on my main computer but the one up front is running Unity.
Quote
By the way, never run normal programs as root...
Of course not.

So is the newer version on github? So how do I proceed then, to uninstall the old and install the newer? Do I simply delete the dsremote directory entirely and start over?
The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #16 on: July 10, 2015, 11:00:58 am »
So is the newer version on github? So how do I proceed then, to uninstall the old and install the newer? Do I simply delete the dsremote directory entirely and start over?

Yes.

Deleting the directory and starting from scratch is one option.

Another option is:

Open a console, cd to the source directory and enter the following commands:

make distclean

git pull https://github.com/Teuniz/DSRemote.git

qmake

make -j16

sudo make install



Edit: changed "git pull" to "git pull https://github.com/Teuniz/DSRemote.git"


« Last Edit: July 10, 2015, 11:07:20 am by Karel »
 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #17 on: July 10, 2015, 01:49:00 pm »
Thanks...OK, that's all taken care of now and the Setup window appears as it should, and the scope connects. But there is still a problem with at least two things:

First, the horizontal timebase. It gets "stuck" at 100 ns/div and won't go to slower settings -- see the first screenshot below for the SCPI commands it is sending as I try to go to longer timebases. It does this whether I use the mouse, scrollwheel, or keyboard shortcuts to try to increase the timebase setting.

Second, the program still fails to connect if there is some complex setup on the scope. I've tried removing item by item from the setup to see what is preventing the connection, and so far I've had no luck. If I start the scope from Default setup and add all 4 channels with basic settings, the program connects and works fine. But if I try to connect to the complex setup the software fails. See the second screenshot below. You can see that the program did set up the channel settings, vertical scales, baseline positions properly, but apparently failed before it set the trigger level (should be up at CH3 somewhere) and disconnected.

The third screenshot below is from the scope itself, showing the setup and waveforms that were current when the program failed to connect in the second screenshot.


So... starting with the complex setup, first I removed the Labels from the channels. Connect failed.
Then I turned off the Math trace. Connect failed.
Then I turned off the Vernier vertical scale settings and set the odd ones to 10v/div. Connect failed.
Then I turned off all channels except CH1. Connect failed.
Then I set the number of Averages to 2 in the Acquire menu. Connect failed.

Then I gave up to go get breakfast.

« Last Edit: July 10, 2015, 01:58:10 pm by alsetalokin4017 »
The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #18 on: July 15, 2015, 06:23:48 pm »
Latest version solves the "timebase getting stuck" bug.

The "not able to connect" problem is caused by a bug in the firmware.
When a certain setup file is loaded in the scope, the trigger sweep mode is not set correctly.
When this happens, the command :TRIG:SWE? returns "command error".

A work around is to press the trigger mode button on the scope at least once, after loading the setup file.

It's reported to Rigol.

 

Offline alsetalokin4017

  • Super Contributor
  • ***
  • Posts: 2055
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #19 on: July 16, 2015, 07:51:25 pm »
YES!
I can confirm both of those. The timebase setting problem is solved now, and I can connect to the complex setup by cycling the Trigger Mode setting on the scope so that one of the mode lights comes on,before I try to connect with the DSRemote software. Thanks !!

The "bug" is that the scope evidently sometimes doesn't really know what the Trigger Mode is, and none of the three Mode lights come on, and in the Trigger Menu the Sweep menu item that should read "Auto", "Normal", or "Single" is blank. For some reason my complex setup sometimes causes my scope to not have any LEDs on in the Trigger Mode panel, and has the Sweep item blank, until the Mode button is pressed.
The easiest person to fool is yourself. -- Richard Feynman
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #20 on: August 29, 2015, 03:24:57 pm »
There is a new version of DSRemote: http://www.teuniz.net/DSRemote/

What's new is that it uses multi-threading in order to keep the gui responsive and snappy.


 

Offline timofonic

  • Frequent Contributor
  • **
  • Posts: 904
  • Country: es
  • Eternal Wannabe Geek
Re: Free DS6000/DS1000Z software
« Reply #21 on: August 29, 2015, 04:37:25 pm »
What do you think of Sigrok? Why using this software instead?

Just a question, I consider more universal projects to be more future proof.
« Last Edit: August 29, 2015, 04:39:22 pm by Circuiteromalaguito »
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #22 on: August 29, 2015, 05:06:42 pm »
What do you think of Sigrok?

Correct me if I'm wrong but it doesn't support the DS6104. It also does not save the scope's (deep) waveform data in the EDF format.

Have you tried Sigrok? If so, do you like it?
 

Offline KarelTopic starter

  • Super Contributor
  • ***
  • Posts: 2214
  • Country: 00
Re: Free DS6000/DS1000Z software
« Reply #23 on: January 09, 2016, 01:51:43 pm »
There's a newer version of DSRemote that supports FFT.




 

Offline scottie4442

  • Supporter
  • ****
  • Posts: 32
  • Country: us
Re: Free DS6000/DS1000Z software
« Reply #24 on: April 02, 2016, 06:11:56 pm »
Tried to get DSRemote working on my Linux Mint 17.3 laptop.  I followed the instructions and got the git downloaded, compiled and installed.  Ran dsremote and it starts fine but when I try to connect to the scope it says "cannot open device /dev/usbtmc0".  I have check ls -l /dev/usbtmc* and it is coming up on usbtmc0, so that is right. I also put the udev rule in so that the permissions are correct for this device, I do have rw permissions for group usbtmc and I am a member of the group.  not sure what to do after this. any help would be appreciated. Thanks
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf