Arbitrary Waveform Generator (AWG)

From LabNation
Jump to: navigation, search

!!! NOTE: The Generator menu entry will only show up when a genuine SmartScope has been attached !!!

The SmartScope has an Arbitrary waveform generator, capable of generating signals between the [0V, 3.3V] voltage range at a sample rate of 100MS/s.

AWG pin location

The signal generated by the AWG is presented on the 3rd-left pin on the bottom row of the AUX connector, as shown in the following image:
Please keep in mind that you always should bridge 2 wires between 2 separate devices. In this case:

  • The AWG output signal
  • The ground, so both devices have the same reference voltage. (0V means the same on both devices)

In the image above, you can see the AWG pin is surrounded by 2 ground pins, either of which you can use to connect to the other device.

Configuring the AWG using pre-defined waves

You can define your own waveforms (see below), or you can use one of the built-in signals which have been predefined in the SmartScope app. In order to do so, first open up the main menu by tapping on the LabNation logo at the bottom-left of the screen, and expand the Generator menu.

Next, open up the Analog submenu and select the type of predefined waveform you want the AWG to generate:

Configure the amplitude, offset and frequency of the wave to be generated.
TIP: Double-tapping the value will bring up the Numpad, which makes it much easier to specify accurate values
NOTE: At this point the AWG output is not yet active. You have to use the 'Upload function' button and check the Analog checkbox to activate the output (see further).

The AWG is configurable within these limits:

Parameter Minimum value Maximum value
Amplitude 0V 3.3V
Offset 0V 3.3V (max amplitude will decrease accordingly!)
Frequency 191Hz 781kHz

When you're done, hit the 'Upload' button, which will transfer the data to the SmartScope the AWG output. The Upload button will be highlighted while the data is being sent to the SmartScope.
NOTE: At this point the AWG output is not yet active. You still have to check the Analog checkbox to activate the output (see further).


With everything prepared, make sure to check the checkbox next to the Analog entry to enable the AWG output buffer:

Configuring the AWG using csv files

IMPORTANT: The app expects the CSV file to use a semicolon (;) as a field separator and a comma (,) as decimal symbol. Download one of the samples below to make sure your CSV works.
NOTE1: The CSV file may contain more than the number of samples specified in the parameters. Further samples will simply be ignored
NOTE2: This only works with a SmartScope connected. Otherwise, the side menu won't contain the Generator entry If you haven't used dropbox with the SmartScope

  1. Tap sidemenu > Generator > Analog > Upload from dropbox
  2. The app will tell you it doesn't have permission to dropbox and ask for it by sending you off to the dropbox website
  3. Grant access and return to the app
  4. The app now creates the AWG folder and will inform you that this new folder is empty.

  1. Generate a CSV file using the AWG excel worksheet. A sample CSV can be found for a sine and block wave.
  2. Drop your CSV file in the AWG folder (<dropbox>/Apps/LabNation SmartScope/AWG) using a file manager
  3. In the app, tap sidemenu > AWG > Upload from dropbox
  4. You should now be able to choose the CSV file

Under the hood

The AWG is driven by a 100MHz clock, reading out a memory containing up to 2048 samples.

Define arbitraty waveform in Excel (.csv file upload)

Parameter Range Description
DataIsBytes 0 or 1 Indicates if the data should be interpreted as bytes (for the 4 digital outputs). If '0', it will be interpreted as voltages (for the analog output).
Samples 1-2048 The number of samples used. The AWG loops on these samples. (< had a minimum of 128 samples)
SampleStretch 0-255 The number of cycles to repeat each sample
BeginData Field to indicate that from here on the sample voltage levels follow

The AWG excel worksheet contains examples of how to compute these parameters.

Sample CSV

8;Samples;The number of samples to use (later samples are ignored)
244;SampleStretch;The number of times to repeat a sample
0,1;BeginData;Data begins here

In case you want to upload data as bytes (i.e. for digital output)

1;DataIsBytes;Set to 1 to interpret the data as bytes, otherwise interpreted as voltages
8;Samples;The number of samples to use (later samples are ignored)
244;SampleStretch;The number of times to repeat a sample
0;BeginData;Data begins here