CTL20 User Guide

Last updated: 2024-03-13 PDF version
CTL20-B7 Digital butterfly anode-grounded laser diode controller user interface
CTL20-B7 user interface

Supply connector

  • +VCC: Positive power supply (3.5 V to 5.5 V).
  • -VCC: Negative power supply (-5.5 V to -5.0 V).

Communication connector

  • ALM: Alarm output (3V3 logic).
  • LCK: Interlock pin (see Interlock).
  • TX: UART TX pin.
  • RX: UART RX pin.

Configuration switch

  • 1: CFG If CFG is ON at start-up, the board will start with the user-defined configuration. Otherwise, the default configuration is loaded.
  • 2: BM This pin is used for firmware update. Set to OFF for normal operation.

Serial interface

The serial interface can be accessed via TX and RX pins on the communication connector (3V3 logic level / 5V tolerant). The serial interface is the only way to configure the CTL20 operating parameters. Once the configuration is done, it can be saved to the internal memory with the save command. If the CFG input is ON at start-up, the CTL20 will load the user-defined configuration and the serial interface is no longer needed.

The CTL20 can be controlled directly from a serial port terminal (e.g. Teraterm on Windows) with the following configuration:

  • Baud rate: 115200
  • Parity: None
  • Bits: 8
  • Stopbits: 1
  • Flow control: None

Example use of the serial port terminal

>>
>>version
V0.2
>>rtset
10000.000000
>>rtact
10000.023438
>>rtset 12000
12000.000000
>>rtact
11999.853516

Note: Each command must be followed by \r\n.

Control commands

Command Description Type Unit Default Min Max
lason Disable | enable laser current R/W 0 0 1
ilaser Laser current R/W mA 0.0 0.0 ilmax
vlaser Laser voltage R V
lckon Disable | enable interlock functionality R/W 0 0 1
ilmon Monitored laser current R mA
ldelay Time between when the controller lights up and when the laser lights up R/W ms 1000.0 10.0 100000.0
ilmax Software current limit R/W mA Driver nominal current 0.0 500.0
lilim Select laser current limit high (1) or low (0) R/W 1 0 1
tecon Disable | enable TEC current R/W 0 0 1
tprot Disable | enable temperature protection R/W 1 0 1
rtset Thermistor resistance setpoint R/W Ω 10000.0 rtmin rtmax
rtact Actual value of thermistor resistance R Ω
itec TEC current R A
vtec TEC voltage R V
kprop Proportional gain of the temperature controller R/W V/°C 0.27 0.0 100.0
tint Integral time of the temperature controller R/W s 1.21 0.0 10000.0
tder Differential time of the temperature controller R/W s 0.0 0.0 1000.0
tilim TEC current limit R/W A 1.0 0.25 1.5
rtmin Minimum thermistor resistance. If temperature protection is enabled, the laser current is automatically disabled below this value. R/W Ω 5000.0 2000.0 50000.0
rtmax Maximum thermistor resistance. If temperature protection is enabled, the laser current is automatically disabled above this value. R/W Ω 15000.0 2000.0 50000.0
vtmin Minimum TEC voltage R/W V -2.0 -3.0 0.0
vtmax Maximum TEC voltage R/W V 3.0 0.0 3.0
tjunc TEC driver junction temperature R °C
iphd Photodiode current R mA 0.0 5.0
tboard Board temperature R °C
vpos Positive supply voltage R V
vneg Negative supply voltage R V
version Firmware version R v0.1
status Return lason, vlaser, ilmon, itec, vtec, rtact, iphd R
save Save configuration in internal memory (no argument) W
serial Return the serial number R
userdata write Write the user data (e.g. userdata write ABC) W 31 chars
userdata Read the user data R
brate UART baud rate R/W baud 115200 9600 460800
err Return the error code in hexadecimal format (no argument) R
errclr Clear the error code (no argument) W

Error codes

The command err returns a 32-bit number in hexadecimal representation which concatenates the detected errors (B0 is the Least Significant Bit):

  • B0: UART_BUFFER_OVERFLOW (err = 1)
  • B1: UART_CMD_BEFORE_PROMPT (err = 2)
  • B2: RESERVED (err = 4)
  • B3: RESERVED (err = 8)
  • B4: VPOS_UNDERVOLTAGE (err = 10)
  • B5: VPOS_OVERVOLTAGE (err = 20)
  • B6: VNEG_UNDERVOLTAGE (err = 40)
  • B7: VNEG_OVERVOLTAGE (err = 80)
  • B8: BOARD_OVERTEMPERATURE (err = 100)
  • B9: LASER_UNDERTEMPERATURE (err = 200)
  • B10: LASER_OVERTEMPERATURE (err = 400)
  • B11: TEC_AMP_OVERTEMPERATURE (err = 800)
  • B12: LDO_OVERTEMPERATURE (err = 1000)
  • B13: LASER_DRIVER_OVERTEMPERATURE (err = 2000)
  • B14: CMD_UNKNOWN (err = 4000)
  • B15: CMD_INVALID_ARG (err = 8000)
  • B16: LASER_ON_WHILE_INTERLOCK (err = 10000)
  • B17: INTERLOCK_TRIGGERED (err = 20000)

Interlock

An optional interlock functionality can be activated with the lckon 1 command. Laser current is then disabled when the LCK pin is pulled low. Once laser current has been disabled, the serial command lason 1 must be sent to re-enable the laser current. The behavior of the interlock pin can be inverted with the command lckon 3.

Can't find your answer? Contact us
[email protected]