EEVblog Electronics Community Forum

Electronics => Beginners => Topic started by: Grzegorz2121 on February 09, 2016, 06:16:41 pm

Title: FFT function in rigol 1054z
Post by: Grzegorz2121 on February 09, 2016, 06:16:41 pm
Hello all! I'm grzegorz (you can call me greg) and i'm electronic hobbyist.

Some time ago i saw video from eevblog channel:
https://www.youtube.com/watch?v=07VkEUUd0eo (https://www.youtube.com/watch?v=07VkEUUd0eo)

Dave was talking that rigol 1054z have terrible fft function.

Because I brought that 1054z oscilloscope few weeks ago I wanted to test it.

I used signal generator from my phone.
And test results can be seen in attachments.

Now I'm learning about RF signals so I need spectrum analyzer to see if my VCO or other radio circuit work.
Unfortunately i don't have that money to buy extra lab equipment.

But i think that FFT from rigol is good for me. I didn't have super ultra precision but it can do it job in my case :)
(I only need to know what harmonics, carrier waves and modulation waves are present in waveform)

I think that Dave exaggerated quality of FFT function in rigol 1054z.

Tell me what are you thinking!
Title: Re: FFT function in rigol 1054z
Post by: ataradov on February 09, 2016, 07:27:13 pm
It is probably good enough for anything a phone can generate. It is not good for any reasonably high frequency signals.

Try to generate a sum of two tones - 1 kHz and 1.1 kHz and see if that FFT can resolve them properly.
Title: Re: FFT function in rigol 1054z
Post by: miguelvp on February 10, 2016, 05:39:03 am
I mentioned it on the FFT video thread, but if you change the time base to fine (vernier mode) instead of coarse and you adjust it, you get better FFT results.
Changing mem depth also helps on the response.

Edit: at least it makes a difference on my DS2000 series scope, not sure on the DS1000z ones, but I would think it should have similar effects.
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on February 10, 2016, 08:27:43 am
not sure on the DS1000z ones, but I would think it should have similar effects.
i dont think ds1000z can do vernier mode timescale, only v/div vernier and zoom mode if one press the timescale knob.
Title: Re: FFT function in rigol 1054z
Post by: miguelvp on February 10, 2016, 08:44:01 am
not sure on the DS1000z ones, but I would think it should have similar effects.
i dont think ds1000z can do vernier mode timescale, only v/div vernier and zoom mode if one press the timescale knob.

Bummer, I did look at the programming manuals for both the DS1000z and the DS2000/a and sure enough, only the DS2000 has a vernier mode, or selection between coarse and fine mode for the timebase.
Title: Re: FFT function in rigol 1054z
Post by: Grzegorz2121 on February 10, 2016, 01:50:42 pm
I can't generate modulated or sum of frequencies on my phone.
I just set very high frequency on my phone and that's waveform of that.

In options I have delayed timebase (thats that vernier mode?) but i can't use it with FFT.
When i captured that modulated waveform i used delayed timebase and marks to find carrier and modulated frequency.
Then I use this data to find it on FFT.

I want to know if this FFT can be useful in experiments with simple radio- transmitter, receiver :)
Title: Re: FFT function in rigol 1054z
Post by: ataradov on February 10, 2016, 05:08:38 pm
I want to know if this FFT can be useful in experiments with simple radio- transmitter, receiver :)
To a certain degree, yes. But if you want to go really deep, then just download traces and do analysis on a PC.
Title: Re: FFT function in rigol 1054z
Post by: Grzegorz2121 on February 11, 2016, 11:22:18 am
Can you say what fft program is the best on PC? (and free)

And how to send signal to PC?
Title: Re: FFT function in rigol 1054z
Post by: Karel on February 11, 2016, 11:37:50 am
Can you say what fft program is the best on PC? (and free)

And how to send signal to PC?

One option is to use DSRemote to download the data onto your pc.
Then open the file in Scilab. Both are free.

http://www.scilab.org/ (http://www.scilab.org/)

http://www.teuniz.net/DSRemote/ (http://www.teuniz.net/DSRemote/)
Title: Re: FFT function in rigol 1054z
Post by: kerrsmith on February 11, 2016, 03:27:03 pm
Can you say what fft program is the best on PC? (and free)

And how to send signal to PC?

The following is for a software spectrum analyser for the Rigol 1000 series oscilloscopes - I have been testing it recently and it works really well.

http://rheslip.blogspot.ca/2015/09/software-spectrum-analyzer-for-rigol.html (http://rheslip.blogspot.ca/2015/09/software-spectrum-analyzer-for-rigol.html)

There is a detailed walk through of how to get it up and running (on Windows 7 64bit) on the site in the comments section and on the project's Github page:

https://github.com/rheslip/PyDSA (https://github.com/rheslip/PyDSA)
Title: Re: FFT function in rigol 1054z
Post by: Grzegorz2121 on February 12, 2016, 07:18:45 pm
Thanks. I will try it tomorrow! I just received mail with my parts so i will build something!
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on February 12, 2016, 09:01:16 pm
There is a detailed walk through of how to get it up and running (on Windows 7 64bit)
instead of walk through, since they are at it, why dont just give the *.exe? no need to walk through, man i really dont get it this people. we lazy fat Windowers only want to plug n play.
Title: Re: FFT function in rigol 1054z
Post by: kerrsmith on February 13, 2016, 03:29:03 pm
There is a detailed walk through of how to get it up and running (on Windows 7 64bit)
instead of walk through, since they are at it, why dont just give the *.exe? no need to walk through, man i really dont get it this people. we lazy fat Windowers only want to plug n play.

There is currently no .exe version available as the person who created the original code had it working for the DS1000E series scopes in Python and it was his own code that he created and posted about on his blog as something he thought others might like to take a look at, try out and see what they could do with it.

I saw a link on the forum and took a look myself and saw it would not work on my scope (DS1054Z) and having never used Python before thought it would be fun to have a look and see if I could convert the relevant parts of the code and get it running for my scope.

After a while I got it working and thought I would post a detailed set of instructions so others could download the code and get it running for themselves using Python from scratch.  Having the program run from source code means it is very easy to modify it if you think it could be done a different way.  The reason for the detailed instructions is that it takes a bit of effort to get Python installed with all the required extras so it will run the code but once this is done you are free to easily make changes and tweak the code.

I am sure that if people were interested the original creator might be interested in making it a standalone executable but at the minute he has created the code as a kind of proof of concept and I thought others might be interested in taking a look as his current progress (which is extremely impressive I think).

I will certainly have a look and see if it could be made in to an .exe file, I have never used Python until now so this might be an interesting thing to try and learn how to do.  If you have any suggestions as to how this can be done please let me know as it does sound like a good idea.
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on February 13, 2016, 04:33:30 pm
I saw a link on the forum and took a look myself and saw it would not work on my scope (DS1054Z)
i saw their code, there is upgraded version for DS1054Z, but the biggest hinder is the need to install phyton interpreter.
Title: Re: FFT function in rigol 1054z
Post by: kerrsmith on February 13, 2016, 05:44:31 pm
I saw a link on the forum and took a look myself and saw it would not work on my scope (DS1054Z)
i saw their code, there is upgraded version for DS1054Z, but the biggest hinder is the need to install phyton interpreter.

Yes, this is correct. The DS1054Z version is the one I modified to make it work on my scope and the blog author was kind enough to post my new code to his blog and to his Github repository.

The reason I wrote the detailed instructions was due to the fact it took a while to get all the necessary Python packages installed and I thought it would help people get started testing the code a bit quicker if they could follow a step by step guide.

I certainly agree that it is a bit of a process getting Python plus required packages up and running - once it is done though it is really easy to run the code and certainly worth the effort I think if you want a really easy to use software spectrum analyser.
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on February 13, 2016, 06:28:48 pm
The DS1054Z version is the one I modified..
oic, good job  :-+ but.. since you are at it. why dont just give the *.exe? no need to walk through, we lazy fat Windowers only want to plug n play.
Title: Re: FFT function in rigol 1054z
Post by: Bryan on February 13, 2016, 09:11:03 pm
Quote
The following is for a software spectrum analyser for the Rigol 1000 series oscilloscopes - I have been testing it recently and it works really well.

http://rheslip.blogspot.ca/2015/09/software-spectrum-analyzer-for-rigol.html (http://rheslip.blogspot.ca/2015/09/software-spectrum-analyzer-for-rigol.html)

There is a detailed walk through of how to get it up and running (on Windows 7 64bit) on the site in the comments section and on the project's Github page:

https://github.com/rheslip/PyDSA (https://github.com/rheslip/PyDSA)

I was able to get this working on Windows 10 64 bit and I don't have a  clue about Pythona and Linux, but did learn a bit over a frustrating few hours. In short the instructions will not work and fail when trying to install numby. With a  bit of googling I found that one needs to use the MiniConda distribution. Now working on getting this to work in a VM Virtual box with Ubuntu. Fun stuff.

Oh  and should add I don't have a DS1054Z but a DS1052E, still works.

Title: Re: FFT function in rigol 1054z
Post by: kerrsmith on February 14, 2016, 10:35:39 am

I was able to get this working on Windows 10 64 bit and I don't have a  clue about Pythona and Linux, but did learn a bit over a frustrating few hours. In short the instructions will not work and fail when trying to install numby. With a  bit of googling I found that one needs to use the MiniConda distribution. Now working on getting this to work in a VM Virtual box with Ubuntu. Fun stuff.

Oh  and should add I don't have a DS1054Z but a DS1052E, still works.

It did take me quite a while to get it up and running in Window 7 64bit (hence the instructions) as I had never used Python before, I assume Windows 10 must work slightly differently. I just checked out the Microsoft Visual C++ Compiler for Python 2.7 I used to get Numpy to install and it says it requires Windows 7, Windows 8 or Windows 8.1 so this could be where the issue was you had with Windows 10.

I am sure that the owner of the blog would be very happy to receive details on how you got it to install and run on Windows 10.
Title: Re: FFT function in rigol 1054z
Post by: kerrsmith on February 14, 2016, 10:39:03 am
The DS1054Z version is the one I modified..
oic, good job  :-+ but.. since you are at it. why dont just give the *.exe? no need to walk through, we lazy fat Windowers only want to plug n play.

I will have a look and see how you go about creating an executable from Python code - I have never really used Python until now so I don't know anything about doing this but I am sure there is plenty of information available once I begin searching around on Google.
Title: Re: FFT function in rigol 1054z
Post by: Bryan on February 14, 2016, 11:16:44 am
Quote
I am sure that the owner of the blog would be very happy to receive details on how you got it to install and run on Windows 10.

Aa per my previous post I used the MiniConda 2.7 distribution for python. I am very new to this so really don't know why it worked.

http://conda.pydata.org/miniconda.html (http://conda.pydata.org/miniconda.html)

Title: Re: FFT function in rigol 1054z
Post by: Eutectic on February 28, 2016, 10:53:55 pm
One option is to use DSRemote to download the data onto your pc.
Then open the file in Scilab. Both are free.

http://www.scilab.org/ (http://www.scilab.org/)

http://www.teuniz.net/DSRemote/ (http://www.teuniz.net/DSRemote/)

Thanks for the tip to use DSRemote and Scilab.  Very cool utilities!
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on March 20, 2016, 11:25:29 am
the latest DS1000Z fw only capable around 12-15Kpts, very little hope the jam-packed mcu can do more. this free tool can extend the capabality by doing 200Kpts FFT or more in the future, so now we can harness the true meaning of deep memory FFT...

http://www.soasystem.com/download/visadso/ (http://www.soasystem.com/download/visadso/)
http://www.soasystem.com/download/visadso/screenshot/screenshot.html (http://www.soasystem.com/download/visadso/screenshot/screenshot.html)

50Hz RBW is very close to their SA resolution. this SW FFT goes all the way to DC, up to max nyquist 500MHz (10GHz pre-interpolated short mem DS1000Z)
(http://www.soasystem.com/download/visadso/screenshot/2.jpg)
(http://www.soasystem.com/download/visadso/screenshot/3.jpg)

Title: Re: FFT function in rigol 1054z
Post by: Bryan on March 20, 2016, 11:47:50 am
Not working under Windows 10. When trying to install. "Cannot start main setup program(Create Process() returned error code 0x00000020H"
Title: Re: FFT function in rigol 1054z
Post by: Mechatrommer on March 20, 2016, 01:53:02 pm
Not working under Windows 10. When trying to install. "Cannot start main setup program(Create Process() returned error code 0x00000020H"
sorry i've been unable to reproduce this error on both of my "fresh installed" Win10 32 and 64 bit. according to msdn site:

https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx (https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx)

ERROR_SHARING_VIOLATION
32 (0x20)
The process cannot access the file because it is being used by another process.

my suggestion, maybe you want to restart your computer, close any programs that may lock related files of the installation. or maybe try unzip all the installation files into a folder in your PC and install from there. or may even redownload from the download link again. i wish i can advice to "run as administrator", but i'm sorry.

the following may give you some hint? i'm not sure if they are related...
https://www.google.com/search?client=opera&q=error+code+0x00000020H&sourceid=opera&ie=UTF-8&oe=UTF-8 (https://www.google.com/search?client=opera&q=error+code+0x00000020H&sourceid=opera&ie=UTF-8&oe=UTF-8)
https://support.microsoft.com/en-us/kb/216231 (https://support.microsoft.com/en-us/kb/216231)
Title: Re: FFT function in rigol 1054z
Post by: danadak on March 20, 2016, 09:21:01 pm
I used the Miniconda distribution, as well as the Python.org, and when
I try to run PyDSA a dos screen flashes and thats it. Cannot pause the
screen, for all I know it ran bumpy, lumpy, numpy, and stumpy and
PC decided it liked non of them.

Heklp, flashing DOS screens take me back to late 80's....

Regards, Dana.
Title: Re: FFT function in rigol 1054z
Post by: Bryan on March 21, 2016, 09:56:46 am
Not working under Windows 10. When trying to install. "Cannot start main setup program(Create Process() returned error code 0x00000020H"
sorry i've been unable to reproduce this error on both of my "fresh installed" Win10 32 and 64 bit. according to msdn site:

https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx (https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx)

ERROR_SHARING_VIOLATION
32 (0x20)
The process cannot access the file because it is being used by another process.

my suggestion, maybe you want to restart your computer, close any programs that may lock related files of the installation. or maybe try unzip all the installation files into a folder in your PC and install from there. or may even redownload from the download link again. i wish i can advice to "run as administrator", but i'm sorry.

the following may give you some hint? i'm not sure if they are related...
https://www.google.com/search?client=opera&q=error+code+0x00000020H&sourceid=opera&ie=UTF-8&oe=UTF-8 (https://www.google.com/search?client=opera&q=error+code+0x00000020H&sourceid=opera&ie=UTF-8&oe=UTF-8)
https://support.microsoft.com/en-us/kb/216231 (https://support.microsoft.com/en-us/kb/216231)


Looked at the installation log and it reported that it could not create a directory on c:\. I had the installation files on another drive. Copied the installation files to c:\ and ran as a administrator after a reboot. Managed to get through the installation program to close to the end and it kept reporting it could not find a file. Tried again after another reboot and still no luck, same a error as previous. Did a reboot and was able to get to what I think was close to the end of the installation, but it failed. Tried again and get the same error as before. Here is a snippet of the log

ACTION: RegKey: "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "SharedDLLs"

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\VB6STKIT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\STDOLE2.TLB"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\ASYCFILT.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\OLEPRO32.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\OLEAUT32.DLL"
(File currently on disk was already up to date)

ACTION: SystemFile: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"
(File currently on disk was already up to date)

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\COMCAT.DLL"

ACTION: TLBRegister: "C:\WINDOWS\SYSTEM32\STDOLE2.TLB"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\OLEPRO32.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\OLEAUT32.DLL"

ACTION: DllSelfRegister: "C:\WINDOWS\SYSTEM32\msvbvm60.dll"

NOTE: End of the bootstrapper section

NOTE: Now spawning the main Setup program 'Setup1.exe'....

*** ERROR: Cannot start main setup program!  (CreateProcess() returned error code 0x00000020H)
*** ERROR: (User Responded with 'OK')