You Are Here:

Configuring a GPIO Output

VersaSync can support up to five (5) programmable square-wave pulse outputs. They are software-configurable via the VersaSync Web UI.


  • Inputs/Outputs: up to (5) programmable square wave outputs
  • Signal Type and Connector: TTL (software-selectable Main I/O connector pins)
  • Accuracy: ±50 ns (1σ)
  • Output Load Impedance: 50 Ω
  • Rise Time to 90% of Level: <10 ns
  • Programmable Period: 100 ns to 1,000,000,000 ns in 5ns steps, to 60,000,000 µs in 1µs steps
  • Programmable Pulse Width: 20 ns to 900 ms with 5 ns resolution


To configure one of the GPIO Outputs:

  1. Navigate to INTERFACES > OUTPUTS: GP Output [x].
  2. Note: I/O ports are numbered starting with 0.

    The GP Output Status window will display. It provides information on the Output Mode, if the output is Enabled, and its Current Value (i.e., low or high output level).

  3. Click the Edit button in the lower left corner. The GP Output Edit will open, offering the following settings:
    • Output Mode: This is a drop-down list, offering the following options:
      • Direct Output Value: Output will be low or high determined by the Output Value selection below.
      • Square Wave: Output will generate a programmable square wave determined by the configuration.
    • Output Enabled: Check this box to enable or disable the output. If Enabled, additional configurable parameters will be displayed.
  4. If Direct Output mode is selected:

    • Output Value: Determines if the output level shall be High or Low.

    If Square Wave output mode is selected:

    • Signature Control: Controls when the output will be present.  See also: Signature Control.
    • Edge: Used to determine if the on-time point of the output is the Rising or Falling edge of the signal.
    • Offset: [ns] Accounts for cable delays and other latencies.
    • Period: Sets the period of the square wave (in ns or µs scale).
      • The wave’s frequency will display at the top of the window once you have configured the output. The frequency is calculated based on the Period and Period Correction settings.

    • Period Correction: Period correction allows for the generation of more precise frequencies at the expense of additional period jitter. An additional clock cycle is added for numerator periods every denominator periods. Over a length of time, the true square wave period comes to:
      • Period + (numerator/denominator)] * 5 ns

    • Pulse Width: [ns] Defines the pulse width. (For an application example, see Example: Configuring a 20 PPS Output.)
    • On-Time Point Pulse Width: [ns] The on-time point pulse width is the pulse width of the first square wave pulse aligned to the 1PPS On-Time Point.  This is only active when the alignment count is non-zero.
    • Alignment Count: [s] The alignment counter determines how often (in seconds) the square wave will be aligned back to the 1PPS.  Setting zero will disable PPS alignment beyond the initial alignment.
    • Time Alignment Enabled: (On/Off) This changes the function of the alignment counter to align the square wave whenever the current time’s seconds value is a multiple of the alignment count. For example: If time alignment is enabled and alignment count is set to 15 seconds, the square wave will be aligned to the 1PPS when the seconds value on the time display equals 00, 15, 30, 45.
    • Re-Initialize: Re-initializes square wave generation and aligns to 1PPS.