Author Topic: DG1000Z Arbitrary Waveform Function Generator  (Read 23899 times)

0 Members and 1 Guest are viewing this topic.

Offline alex.forencich

  • Frequent Contributor
  • **
  • Posts: 397
  • Country: us
    • Alex Forencich
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #25 on: December 12, 2014, 06:48:01 pm »
It's not so good for I2C as it is electrically incompatible. First, I2C is an open drain interface - it gets pulled low, but floats high with pull-up resistors. Second, the slave is supposed to be able to stall the bus by holding the clock line low, and the master must wait until the clock line rises before sending the next bit. The arb just plays back the trace without looking at the level, so it cannot be stalled by the slave.

So you can try it, but it might not work very well if the slave tries to stall the bus.
« Last Edit: December 12, 2014, 08:24:39 pm by alex.forencich »
Python-based instrument control: Python IVI, Python VXI-11, Python USBTMC
 

Offline onesixright

  • Frequent Contributor
  • **
  • Posts: 624
  • Country: nl
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #26 on: December 12, 2014, 08:23:40 pm »
Thank you, that makes sense.

Waiting for my DG1062Z, I will give it a try!
 

Offline Wuerstchenhund

  • Super Contributor
  • ***
  • Posts: 3088
  • Country: gb
  • Able to drop by occasionally only
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #27 on: December 12, 2014, 09:23:38 pm »
I actually meant more, can a (i.e. DG1000Z series) burst a I2C signal (i.e. a char) to a LCD (via MCP23006) ?

Not really. Aside from the electrical interface differences, the AWG isn't really a bus device, i.e. it can't react to bus controls.

If you want to create some logical I2C/SPI sequence for demo purposes (i.e. playing with decoding functionality on a scope) then this should be possible. But as a true bus device (i.e. to communicate with other devices) it's unlikely to work.

Quote
Anyway you can capture the Wave (DSO), send it to your AWG and replay it ?

I guess so, if you have a Rigol scope (which I don't). I've never tried importing a csv waveform file from one of my scopes, but I doubt that will work without some modifications to the file.
 

Offline bronson

  • Regular Contributor
  • *
  • Posts: 172
  • Country: us
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #28 on: December 13, 2014, 04:37:41 am »
I2C & SPI?  Sounds like a job for a Bus Pirate?
 

Offline onesixright

  • Frequent Contributor
  • **
  • Posts: 624
  • Country: nl
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #29 on: December 13, 2014, 11:15:11 am »
I got a Salea. It snot about capturing the signal, that itself i can do.

The question is if you could generate a I2C/SPI signal on a AWG. I hope you could set the CLK on CH1 and the data on CH2 (atleast for I2C). Of course thats a one-way street.
 

Offline bronson

  • Regular Contributor
  • *
  • Posts: 172
  • Country: us
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #30 on: December 15, 2014, 08:12:21 am »
Sure, of course you could kind of use an arb to generate I2C/SPI, just like you could kind use a weed whacker to mow a lawn.  But using the right tool for the job makes life so much nicer.

I'm not quite sure what this thought experiment is supposed to produce?  The bus pirate generates both protocols -- correctly and trivially -- and costs $30.  If this js just about experimenting with the arb, why not ask it do something closer to what it was designed for?
 

Offline dadler

  • Supporter
  • ****
  • Posts: 851
  • Country: us
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #31 on: February 05, 2015, 10:10:54 am »
Firmware 00.01.07.00.02 is out for the DG1000Z series. This includes bootloader 01.05, if you do not have it already.

Firmware: https://dl.dropboxusercontent.com/s/4zpm630fkoourlq/DG1000Z_00_01_07_Update.zip
Update Instructions: https://dl.dropboxusercontent.com/s/tclmmzp80nioqim/DG1KZ_Firmware_Update_Procedure.pdf

Before:


After:


I haven't noticed anything different after the update.

Does anyone know how the Arb16M option is unlocked on the DG1000Z series? Mine shows "Arb16M: Uninstalled", but I can't find a menu option. :SYSTem:OPTion:INSTall <random letters> just hangs.
« Last Edit: February 05, 2015, 10:30:47 am by dadler »
 

Offline BloodyCactus

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
    • Kråketær
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #32 on: February 05, 2015, 02:37:20 pm »
is there a change list? I'm still on 00.01.05.00.01
-- Aussie living in the USA --
 

Offline Wuerstchenhund

  • Super Contributor
  • ***
  • Posts: 3088
  • Country: gb
  • Able to drop by occasionally only
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #33 on: February 06, 2015, 05:49:22 pm »
It seems the 25MHz square wave is still pretty much crap after upgrading mine from 00.1.04 to 00.1.07.
 

Offline trukresom

  • Contributor
  • Posts: 28
  • Country: fr
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #34 on: February 07, 2015, 08:52:35 pm »
Recently I purchased an DG1062Z with the 16MByte option. Owning already an DG4162Z
the only reason to do this was the possibility to generate 2 arbitrary waveforms with reasonable
length and reasonable costs to feed the I/Q-Modulation Inputs of a Vector Signal Generator.

During my experiments I observed a certain number of characteristics which could be
interesting to know before buying a DG1062Z as arbitrary generator. Here are my
findings with an instrument with firmware 01.07.00.02 installed:

In all documents where the specifications of the instrument are listed we can read
under the section 'Arbitrary Waveform' that the Sample Rate is specified to 200 MS/s.
To my surprise, the actual sampling rate setting on the DG1062 in the mode
[Arb] -> [ArbMode-> [SRate] is limited to 60 MS/s. Indeed on page 2-18 of
the User Guide I could find a mention of this.
 
Generating long arbitrary sequences is only possible by downloading
data with the :SOURCE<n>:TRACE:DATA:DAC16 VOLATILE,<flag>,<data>
command, because this is the only SCPI-command which has the <flag> = {CON|END}
argument which allows the download of multiple blocks to the DDRII internal memory.
But as opposed to the Programming Guide (p. 2-173) the packet size must not
exceed 8192 samples, otherwise an error occurs.
   
The output can be generated in 2 modes:
      [ArbMode] -> [Freq] and  [ArbMode] -> [SRate]
   
  A. [ArbMode] -> [Freq]
   
  * Even if a long sequence (> 8192 points) is downloaded with the SCPI-command
    mentioned above, the sequence restarts from the beginning after 8192 samples.
  * If a shorter sequence is loaded, the sequence length remains
    8192 but to complete the sequence to 8192 points, previously
    loaded, old memory contents are inserted.
  * The sample rate is always 8192 * f, where f is the frequency setting.
  * There are apparently 2 asynchronouly superposed (cascaded) sampling
    systems; one with a frequency of 8192 * f and a second one fixed at
    200 MS/s. Cascading these samplers produces a jitter of 5 ns.
    This behavior is similar to the DG4162 whose sampling rate is 500 MS/s
    and therefore produces a 2ns jitter.
  * No interpolation takes place between the samples.
    So, the sequence 0,0.1,0.2,0.3,0.4,0.5.... produces a staircase.

  B. [ArbMode] -> [SRate]
   
  * Generating long arbitrary sequences (> 8192 samples) is only possible
    in this mode.
  * The sampling rate is limited to 60 MS/s which is not in accordance with
    the specification.
  * A linear interpolation is done between the samples. I find that this is
    good behaviour in that it gives smoother waveforms with less undesired
    harmonics. The drawback is that the rise time of a signal cannot be
    lower than the sample interval.
  * With the 16M memory option one can effectively generate waveforms with
    16 Msamples on each channel simultaneously.
  * As opposed to the mode ArbMode->Freq there is no jitter due to interferences
    between samplers.
  * Downloading a sequence of 16 Msamples in one channel takes
    125 s over the LAN (120 kS/s or 2Mbit/s). This is not very exciting on a
    100 Mb/s Network but for my application it is acceptable.
  * While downloading data, the output of the concerned channel is
    stopped while the other continues to work.
  * As expected, pressing the function [Align Phase] synchronizes both channels
    if both channels are set to the same sampling rate and are loaded with
    sequences of same length.
 

Offline matts-uk

  • Contributor
  • Posts: 37
  • Country: gb
  • select * from user where clue = null
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #35 on: April 24, 2015, 06:24:16 am »
Hi

The postman delivered my new DG1032Z a couple days ago.  I have done my best to interpret the interesting grammar of the user manual and pretty much found my way around the, not so intuitive, user interface.  A couple functions have completely stumped me though, to the point I am doubting if they work at all.  I raised a support ticket with Rigol yesterday but while I am waiting for a response, I was wondering whether anyone on EEVBlog who has one of these instruments, could help shed some light.

The firmware version is;
Software: 00.01.07.00.02
FPGA: 00.01.00.19
Bootloader: 01.05

1. How do you load/save files in a folder on a USB memory stick?
I can load/save in the root.  I can create a new folder.  I can't for the life of me find a way to 'open' a folder.

2. Has anyone managed to get the 'Seamless DSO Integration' feature to work, with a DS2072A or any other scope for that matter?
I plugged the USB lead supplied with the DG1032Z into the back of my DS2072A and the front of the DG1032Z.  Nothing happens!  The scope does not automatically enter stop mode.  The scope does not show up in the 'Store' browser.  The USB indicator on the DG1032Z does not show up in the interface.

For giggles, I though I would try plugging the lead in the back of the DG1032Z and the front of the DS2072A but the DG1032Z crashed, so I haven't tried it again.

The scope firmware is 00.03.03.SP1, Hardware Version 2.0
The scope USB Device setting is on Computer but of course I tried it on Pictbridge too.
The scope's GPIB ID is set to 1 and the DG1032Z is set to 2

 

Offline Steve25

  • Newbie
  • Posts: 2
  • Country: gb
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #36 on: April 25, 2015, 11:11:21 am »
Hi Matts,

I have been able to save & load from a folder no problem on my DG1032Z.

Press <Store>. with USB stick inserted.. Use rotary knob to select the usb stick drive.
you will see in right box title 'State File' your directories. Press the -> under the rotary knob.
Scroll down to the folder you want using the rotary knob.
with that folder highlighted press Bowser/dir button.
Now press 'Save' to save the file and type in the file name. Again press save on this screen.
The file should now be saved in the folder you selected initially.

The only things you can save from the Gen I think are 'state files' & 'Arb files' (user-defined). It looks like all the other file types are read only for loading to the Gen.

I also tried the 'seamless DSO integration', but no luck either. It would be interesting to see what Rigol say.

« Last Edit: April 25, 2015, 11:23:16 am by Steve25 »
 

Offline matts-uk

  • Contributor
  • Posts: 37
  • Country: gb
  • select * from user where clue = null
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #37 on: April 26, 2015, 06:37:36 am »
Ahh, the "Right Arrow" key.  That's what I was missing.  Thanks.

I was trying to transfer a wave form from my scope.

Rigol got back to me on the seamless scope connection feature too.

"Currently we only support the seamless DSO connection with the
DS1000E series. DS1000Z and DS2000 and DS4000 will follow step by step with
next firmware releases."

It's a damn shame the scpi commands don't support file transfer over the LAN connection.  If they did, I could knock out a half decent file manager GUI in a couple hours.

 

Offline Steve25

  • Newbie
  • Posts: 2
  • Country: gb
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #38 on: April 26, 2015, 12:48:53 pm »

I checked it with my DS1000E series and it works as described.
 

Offline BloodyCactus

  • Frequent Contributor
  • **
  • Posts: 482
  • Country: us
    • Kråketær
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #39 on: June 24, 2015, 12:41:11 am »
checking, there is a 1.08 firmware out; here is the change list

Quote
Version?00.01.08.00.00 Date?2015-6-1
1Support variable idle level in burst mode.Enhancement
2Support screen shot with PNG format.Enhancement
3Support multi-interface in remote mode, and update the LXI library, SCPI library and USB device library.Enhancement
4Keep the phase deviation between CH1 and CH2 unchanged after re-opening output.Enhancement
-- Aussie living in the USA --
 

Offline dadler

  • Supporter
  • ****
  • Posts: 851
  • Country: us
Re: DG1000Z Arbitrary Waveform Function Generator
« Reply #40 on: June 24, 2015, 04:46:09 am »
I updated to 00.01.08.

FPGA is the same at 00.19.

Bootloader unchanged from 01.05.

I tested the .PNG print screen mode and it works as described! Cool.

"Idel Level" menu screenshot attached.





« Last Edit: June 24, 2015, 05:09:00 am by dadler »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf