WGFMU Pulse Builder for Keysight B1500

A new CustomFunction Script Pulse_Builder_WGFMU is now available for driving the Keysight B1500 WGFMU modules. It provides a graphical pulse-sequence builder that covers the full WGFMU feature set (FASTIV mode, measure events, and current-range events) directly inside SweepMe!.

What it does

Instead of writing out raw WGFMU patterns in code, you build your experiment visually:

  • Sequence tabs — each tab defines one WGFMU pattern via a time-increment / voltage table. You can add as many sequences as you need and arrange their playback order with a waveform table (sequence ID + repetitions).

  • Measure events — a dedicated table per sequence lets you place one or more measurement windows on the pattern (start time, points, interval, averaging). Invalid cells are highlighted in red, and averaging cells turn red if they exceed the interval.

  • Range events — for current measurements, you can schedule current-range changes at specific times within a sequence.

  • Live plot — the top plot shows all sequences (color-matched to the tabs) with shaded overlays for the selected sequence’s measure events and dashed markers for range events. A second plot shows the full concatenated waveform generated from the waveform table.

  • CSV import/export per sequence — each sequence can be saved to / loaded from a combined CSV (events + waveform in one file). Paths are stored in the SweepMe! setting file so a setting round-trips cleanly.

  • Multi-channel support — multiple CFS instances on the same address share the WGFMU session via device_communication, so you can run coordinated pulses on several channels in one measurement.

Runtime safety checks

Because the WGFMU silently refuses bad configurations, the driver raises clear errors before the run starts / during start-up:

  • Measure events whose points × interval exceeds the sequence duration.

  • Measure events that overlap within the same sequence.

  • Patterns whose channel doesn’t reach RUNNING/COMPLETED within 3 s of execute().

Requirements

  • SweepMe! Pro with the CustomFunctionModule installed.

  • Keysight B1500 with WGFMU modules, reachable over GPIB/LAN.

Getting started

  1. Download the CustomFunction from the Version Manager.

  2. Add it to your sequencer, open the widget, select Pulse_Builder_WGFMU and start building sequences. Each tab corresponds to one WGFMU pattern; the waveform table at the bottom defines the playback order.

  3. Use Save CSV / Load CSV on a tab to share or reuse sequences.

Feedback, feature requests, and bug reports are very welcome - please reply in this thread or open an issue in the CustomFunction-scripts repository.

1 Like