40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  ATF eLog  Not logged in ELOG logo
Entry  Wed Sep 8 14:35:22 2021, Aidan, DailyProgress, 2um Photodiodes, Running automated testing suite on A1 PD 7x
    Reply  Thu Sep 9 09:23:56 2021, Aidan, DailyProgress, 2um Photodiodes, Running automated testing suite on A1 PD 
       Reply  Fri Sep 10 09:11:05 2021, Aidan, DailyProgress, 2um Photodiodes, Running automated testing suite on A1 PD 
          Reply  Fri Sep 10 20:13:12 2021, Aidan, DailyProgress, 2um Photodiodes, Running automated testing suite on A1 PD 
Message ID: 2661     Entry time: Wed Sep 8 14:35:22 2021     Reply to this: 2662
Author: Aidan 
Type: DailyProgress 
Category: 2um Photodiodes 
Subject: Running automated testing suite on A1 PD 


I turned off the cryocooler and the A1 PD is slowly coming up to room temperature from ~53K (it's currently at 78K).

There is an automated script (autorun2021.sh) running to acquire data from the PD during this process (it is attached):

  1. Record dark current sweep with Keithley
  2. Record PD noise spectra (in DAQ) with different biases [-100, 0, 300, 600, 1000]mV. This involves steppnig the bias and waiting for 60s while fast AC data from the diode goes into the frames. Preamp setting = 1E3, SR560 setting is attached. Note that the SR560 photo shows an OVERLOAD light. This is only when the laser is on and the bias is high. When running the bias stepping up, the overload light only came on for a moment when the bias reached 1000mV - it stayed on for about 2-3s during this time. It's possible that the SR560 may saturate as the noise level increases with temperature. I might have to drop the amplification a touch.
  3. Record the QE for the PD for different bias settings. Bias is set to [-100, 300, 600, 800, 1000]mV. The laser current is turned on for 10s and off for 15s. The laser current output has a 0.15Hz pole on it so the current slowly ramps up and down. This allows us to record the reference PD and JPL PD levels for increasing intensities (as the PD is observed to saturate since the beam is close to a waist/focus on the PD).
  4. Get bright current sweeps with the Keithley for 20mA and 100mA going to the laser
  5. Run the maximize_output_power.py Python script that makes small changes to the piezo steering mirror to maximize the output of a CALC channel which is the ratio of the JPL PD to the REF PD (JPL_PD/REF_PD) - this removes first order power fluctuations from the alignment process.
  6. Dump all measurements into a directory identified by the GPS time and measurement number
    1. ~/JPL_PD/data/A1/<GPS_TIME>-<MEAS_NUM>/

Example output is attached.

Note - I was originally running the code with a manual realignment each time. I switched to maximize_output_power.py around the 2:30PM mark (~78K) and this yielded a 30% increase in photocurrent. So QE results below this are going to be low.

CALC channel (~/JPL_PD/Ioc/QIL/db)

record(calc, "C4:TST-PD_RESPONSE")
    field(SCAN, ".1 second")
    field(INPA, "C4:TST-FM29_OUT16")
    field(INPB, "C4:TST-FM30_OUT16")
    field(CALC, "ABS(B/A)<2?(B/A):2")


Notes from the lab:

Wednesday 8-Sep-2021

11:47AM – Script is ready to record data

  1. Record dark current sweep with Keithley
  2. Record PD noise spectra for different biases
  3. Measure QE for different biases
  4. Get photocurrent sweep vs bias with Keithley at 100mA and 20mA


12:15PM – start run with chiller on

  • 1315163811-1001 (first directory) – 53.6K

12:26PM- chiller off

  • 1315164407-1002 – 53.66K

12:36PM – third loop

  • 1315165029-1003 – 57.92K

12:48PM – 1315165720-1004: 60.98K

12:59PM – 1315166396-1005: 63.2K

1:10PM – 1315167064-1006: 65.2K

1:24PM – 1315167908-1007: 67.6K

1:35PM – 1315168569-1008 :69.4K

1:47PM – 1315169251-1009: 71.3K

  • Added a channel C4:TST-PD_RESPONSE which is PD_OUT/REF_PD. Cancels out the power fluctuations to first order to help when aligning.
  • This is running is an adHoc softIOC channel

1:57PM – 1315169873-1010: 72.9K

  • Might need to add heat into the base plate

2:07PM – 1315170489-1011 :74.45K

  • SR560 overloads a tiny bit on the bias = 1000mV setting for 3 or 4s after it reaches that setting.

2:26PM – running the max power script. Getting 30-40% more power!!

2:32PM – 1315171982-1001: 78.145K


2:34PM – 1315172074-1001: 78.3K

2:45PM – restarted code with longer pause (60s) between end of loop and maximize output power

3:18PM – restarted code with 120s pause between end of loop and Maximize Output

3:43PM – ADDED OFFSET OF 141 to FM29 (REF PD) which sets the zero power level to about zero. (in the middle of 1315176124-1003 measurement at 87.5K)



Physical Variable Channel Name
Laser current setting C4:TST-FM12_OUT16
PD bias setting C4:TST-FM13_OFFSET
REF PD reading C4:TST-FM29_OUT16
JPL PD reading (DC) - preamp only C4:TST-FM30_OUT16
JPL PD reading (AC) - preamp + SR560 C4:TST-FM31_OUT
Keithley/Preamp switch C4:TST-FM15_OFFSET


Attachment 1: autorun2021.sh  4 kB  Uploaded Wed Sep 8 15:47:21 2021  | Hide | Hide all | Show all
#diode name
caput C4:TST-FM15_OFFSET 0
sleep 1
while :; do
        # dark current
        echo =======================
        echo ----- TOP OF LOOP -----
... 139 more lines ...
Attachment 2: maximize_output_power.py  4 kB  Uploaded Wed Sep 8 15:48:16 2021  | Show | Hide all | Show all
Attachment 3: 1315172753_conditions.txt  417 Bytes  Uploaded Wed Sep 8 15:56:54 2021  | Hide | Hide all | Show all
spectra_start 1315172767
PD_gain_DC FM30 C4:TST-FM30_GAIN 2
QE_v_bias_start 1315173068
Keithley_bright_start 1315173226
... 3 more lines ...
Attachment 4: IMG_4627.jpg  2.377 MB  Uploaded Wed Sep 8 15:59:39 2021  | Hide | Hide all | Show all
Attachment 5: IMG_4628.jpg  1.550 MB  Uploaded Wed Sep 8 16:00:29 2021  | Hide | Hide all | Show all
Attachment 6: Screen_Shot_2021-09-08_at_3.05.19_PM.png  85 kB  Uploaded Wed Sep 8 16:06:27 2021  | Hide | Hide all | Show all
Attachment 7: Screen_Shot_2021-09-08_at_3.05.51_PM.png  85 kB  Uploaded Wed Sep 8 16:06:35 2021  | Hide | Hide all | Show all
ELOG V3.1.3-