Stanford Research Systems DG645

Table of contents

Description

The SRS DG645 is an 8-channel digital delay generator with sub-picosecond delay resolution. The delaygen module provides an asyn port driver (drvAsynDG645) that communicates with the instrument over serial or Ethernet.

Communication

The DG645 supports serial (RS-232) and Ethernet connections.

Serial

Setting Value
Baud rate 9600 (default) or 19200
Data bits 8
Parity None
Stop bits 1
Flow control CTS/RTS hardware handshaking
Input EOS \r\n
Output EOS \n
drvAsynSerialPortConfigure("serial1", "/dev/ttyS0", 0, 0, 0)
asynSetOption(serial1, 0, "baud", "19200")
asynSetOption(serial1, 0, "bits", "8")
asynSetOption(serial1, 0, "parity", "none")
asynSetOption(serial1, 0, "stop", "1")
asynSetOption(serial1, 0, "crtscts", "Y")
asynOctetSetInputEos("serial1", 0, "\r\n")
asynOctetSetOutputEos("serial1", 0, "\n")

Ethernet

The DG645 listens on TCP port 5025.

drvAsynIPPortConfigure("serial1", "x.x.x.x:5025", 0, 0, 0)
asynOctetSetInputEos("serial1", 0, "\r\n")
asynOctetSetOutputEos("serial1", 0, "\n")

Driver Initialization

drvAsynDG645(myport, ioport, ioaddr)
Parameter Type Description
myport string Name for the driver’s asyn port (e.g., “DG1”). Used as the PORT macro when loading the database.
ioport string Name of the communication asyn port (e.g., “serial1”).
ioaddr int Address on the communication port. Use -1 for serial/Ethernet.

Example:

drvAsynDG645("DG1", "serial1", -1)

Database

Load drvDG645.db with the following macros:

Macro Description
P PV name prefix (e.g., “delaygen:”)
R PV name infix (e.g., “DG1:”)
PORT Driver port name, must match the myport argument
dbLoadRecords("$(DELAYGEN)/db/drvDG645.db", "P=delaygen:,R=DG1:,PORT=DG1")

Features

The DG645 database provides control over:

  • Delay channels A-H – Set and read the delay and reference source for each channel, with tweak (increment/decrement) support.
  • Output groups T0, AB, CD, EF, GH – Set amplitude, offset, and polarity for each output pair, with TTL and NIM preset modes.
  • Trigger – Source selection (internal, external rising/falling, single shot, line), rate, level, inhibit, holdoff, and prescale settings.
  • Burst mode – Enable burst mode, set count, delay, and period.
  • Advanced triggering – Per-output-pair prescale and phase settings.
  • Interface configuration – Serial, GPIB, and LAN interface parameters are readable and configurable through PVs.
  • Status – Instrument status and event status register readback.

The driver uses interrupt-driven status checking rather than polling after each operation, reducing communication overhead.