5 Main Window

The only fixed UI elements in ngscopeclient are the main menu and toolbar at the top of the window. All remaining space may be filled with waveform plots, properties dialogs, protocol analyzers, and other dockable windows as required for a given experimental setup. This flexibility allows almost the entire screen to be dedicated to waveform views, or more space allocated to controls and protocol decodes.

5.2 Toolbar

Warning

This section is outdated and needs to be revised for ngscopeclient.

The toolbar contains buttons and controls for the most frequently used actions.

_images/toolbar.png

Fig. 5.1 glscopeclient toolbar

5.2.1 Capture buttons

The capture button group (Fig. 5.2) contains three buttons. From left to right these are “arm normal trigger”, “arm one-shot trigger” and “stop trigger”.

Note that the “normal” trigger mode still uses one-shot capture internally so that all waveform data can be downloaded before the next trigger event.

_images/capture-icons.png

Fig. 5.2 Capture control buttons

5.2.2 History

The history button (Fig. 5.3) toggles display of the waveform history view.

_images/history-button.png

Fig. 5.3 History button

5.2.3 Refresh Settings

In order to improve performance, ngscopeclient caches many instrument settings locally rather than constantly querying the instrument for the current timebase, trigger configuration, etc. If settings are changed via the instrument front panel while ngscopeclient is running, ngscopeclient may not be aware of these changes.

The Refresh Settings button (Fig. 5.4) clears all cached instrument configuration and updates ngscopeclient with the current instrument settings. For most “headless” instruments, such as Pico Technology devices, this button has no effect.

_images/refresh-button.png

Fig. 5.4 Refresh Settings button

5.2.4 Clear Sweeps

The Clear Sweeps button (Fig. 5.5) clears all persistence waveforms, accumulated eye pattern / waterfall data, and statistics. Waveforms saved in history are not deleted.

_images/clear-button.png

Fig. 5.5 Clear Sweeps button

5.2.5 Fullscreen

The Fullscreen button (Fig. 5.6) switches ngscopeclient between normal and full-screen mode.

_images/fullscreen-button.png

Fig. 5.6 Fullscreen button

5.2.6 Opacity slider

The opacity slider (Fig. 5.7) controls the alpha/opacity used to display intensity-graded waveforms. Higher opacity values lead to better display of sparse waveforms (compare the crisp lines of Fig. ref{sparse-waveform} to the barely visible trace in Fig. 5.9) but can lead to a washed-out appearance if too many sample points are shoved into a small area.

_images/opacity-slider.png

Fig. 5.7 Trace opacity slider

_images/sparse-waveform.png

Fig. 5.8 Sparse waveform at a high zoom level

_images/dim-waveform.png

Fig. 5.9 Dim waveform showing difficulty of seeing waveform at low opacity

For example, the DVI waveform in Fig. 5.10 looks like a solid white blob with a vaguely visible outline. No fine detail can be observed other than the increased over/undershoot and random-looking edges on the scanlines, compared to the flat appearance of the blanking period between scanlines and at the end of the frame.

When the opacity is reduced in this example, many more nuances of the signal become apparent. The high/low voltage levels of the signal compared to the transitions between them are obvious, and the H/V sync pulses within the blanking period show up as a slightly darker region.

_images/washedout-waveform.png

Fig. 5.10 Intensity-graded waveform showing washed-out appearance at high opacity

_images/graded-waveform.png

Fig. 5.11 Intensity-graded waveform at lower opacity level

As of this writing, the opacity setting is global for the entire application. Should this be changed to per waveform group? If so, how should the group be selected and should there still be an option to make changes globally?