*(Double posting this here - as well as the other Rigol thread - since John South might see it here and offer some feedback)*
I've been working on a new version of my Rigol software for the last couple of days, and I seem to have found the first bug in the DS2000 that is, IMO, rather a serious one:
I don't seem to be able to read the contents of the DSO memory reliably when the scope is in the STOP state - in other words, I can't get the full sample depth out of the scope (getting just the displayed data is not a problem) - which is a big deal if anyone is planning to do any post-processing with 3rd party software, including MATLAB or LabVIEW (one of the big selling points of the Rigol scope over it's competitors).
Here is the procedure to use copied from the Rigol DS2000 programming guide:
Procedures of the internal memory waveform data reading:
S1. :STOP
The internal memory waveform data can only be read in STOP state
S2. :WAV:SOURce CHAN1
Set the channel source to be read
S3. :WAV:MODE RAW
Set the waveform mode to RAW
S4. :WAV:RESet
Reset the waveform reading
S5. :WAV:BEGin
Start the waveform reading
S6. :WAV:STATus?
1) IDLE
:WAV:DATA?
:WAV: END
2) READ
:WAV:DATA?
Repeat S6
This order of commands does NOT work correctly with the DS2000 - it doesn't return or read the correct number of samples when run as a loop if the memory depth is set to anything higher than 14k. In fact, you can test that it doesn't work correctly by just using Rigol's own software Ultra Sigma:
Just set the memory depth to >= 140k; STOP the scope; start Ultra Sigma; type in the listed SCPI commands one by one; and you will see it fail.
Perhaps the correct method has changed since the programming guide was published by Rigol - I've passed this info along to my dealer to pass to Rigol, We'll see what they have to say about it.
I can also confirm this behavior with the 00.01.00.00.03 firmware. 1400 points "all the time".
Curiously theres a bandwidth license option in there also, not sure if thats for the DS2072.
The firmware seems to be a menagerie of code supporting many different models.
-M