How to Communicate with the Seekat Quad-AD5780

In this page I will explain the syntax to communicate with the Seekat.

Every command sent to the Seekat should be a string. Every string should start with the operation to execute and end with the character that determines the end of the string, in this case ‘\r’.

Main Syntax:

[table width=”700px”]OPERATION,(COMMA),DATA (VARIES WITH THE OPERATION) ,(END OF STRING)[/table]

The Seekat can execute six operations: “*IDN?”, “*RDY?”, “SET”, “GET_DAC”, “RAMP1″, “RAMP2″. When the Seekat does not recognized the operation, it return the string “NOP”, which stands for “No Operation”. Below I will explain each operation:

*IDN? and *RDY?

IDN? returns the name of the device.

[table width=”700px” delimiter=”|”]OPERATION STRING| (END OF STRING)
*IDN?| \r
[/table]

RDY? returns the string “READY” when the Seekat is ready for a new operation.

[table width=”700px” delimiter=”|”]OPERATION STRING| (END OF STRING)
RDY?| \r
[/table]

SET

SET sets a voltage to a channel and returns the channel and the voltage it set.

Example:

[table width=”700px” delimiter=”|”]OPERATION|,|CHANNEL|,|VOLTAGE|(END OF STRING)
SET|,|5|,|3.6|\r
[/table]

  • The string above sets the channel 5 to 3.6 volts.

GET_DAC

GET_DAC returns the voltage set on an output channel.

Example:

[table width=”700px” delimiter=”|”]OPERATION|,|CHANNEL|(END OF STRING)
GET_DAC|,|5|\r
[/table]

RAMP1

RAMP1 ramps one channel from an initial voltage to a final voltage within an specified number steps and a delay (microseconds) between steps. When the execution finishes, it returns “RAMP_FINISHED”.
Example:
[table width=”700px” delimiter=”|”]OPERATION|,|CHANNEL|,|INITIAL VOLTAGE|,|FINAL VOLTAGE|,|# OF STEPS|,|DELAY (MICROSECONDS)|(END OF STRING)
RAMP1|,|2|,|-8.5|,|4.8|,|1000|,|30|\r
[/table]

RAMP2

RAMP2 is the same as RAMP1 with the difference that RAMP2 ramps two channels. The # of steps is the total number of steps, not the number of steps per channel. Example:
Example:
[table width=”700px” delimiter=”|”]OPERATION|,|CHANNEL 1|,|CHANNEL 2|,|INITIAL VOLTAGE 1|,|INITIAL VOLTAGE 2|,|FINAL VOLTAGE 1|,|FINAL VOLTAGE 2|,|# OF STEPS|,|DELAY (MICROSECONDS)|(END OF STRING)
RAMP2|,|2|,|3|,|-8.5|,|-5.2|,|4.8|,|7.6|,|1000|,|30|\r
[/table]

Timeline of the example above:
[table th=”0″ width=”700px” delimiter=”|”]STEP 1|UPDATES OUTPUT CHANNEL 2|UPDATES OUTPUT CHANNEL 3
DELAY||
STEP 2|UPDATES OUTPUT CHANNEL 2|UPDATES OUTPUT CHANNEL 3
DELAY||
..|..|..
STEP 1000|UPDATES OUTPUT CHANNEL 2|UPDATES OUTPUT CHANNEL 3
[/table]