diff --git a/gstlal-calibration/bin/gstlal_compute_strain b/gstlal-calibration/bin/gstlal_compute_strain
index 0782e68cc24e456fa229058a3f8f35e62661b49c..d960f00d8839ded6d5f135fa931875c2d0f92e14 100755
--- a/gstlal-calibration/bin/gstlal_compute_strain
+++ b/gstlal-calibration/bin/gstlal_compute_strain
@@ -682,14 +682,14 @@ if compute_calib_statevector:
 	filterclock_channel_list = ChannelNames["filterclockchannellist"].split(';') if "filterclockchannellist" in ChannelNames else [lownoise_channel_name]
 	filterclock_bitmask_list = Bitmasks["filterclockbitmasklist"].split(';') if "filterclockbitmasklist" in Bitmasks else [lownoise_bitmask]
 	hwinj_channel_name = ChannelNames["hwinjchannel"] if "hwinjchannel" in ChannelNames else ChannelNames["inputdqchannel"]
-	cbchwinj_bitmask = int(Bitmasks["cbchwinjbitmask"]) if "cbchwinjbitmask" in Bitmasks else 0
-	cbchwinj_offbitmask = int(Bitmasks["cbchwinjoffbitmask"]) if "cbchwinjoffbitmask" in Bitmasks else 0
-	bursthwinj_bitmask = int(Bitmasks["bursthwinjbitmask"]) if "bursthwinjbitmask" in Bitmasks else 0
-	bursthwinj_offbitmask = int(Bitmasks["bursthwinjoffbitmask"]) if "bursthwinjoffbitmask" in Bitmasks else 0
-	detcharhwinj_bitmask = int(Bitmasks["detcharhwinjbitmask"]) if "detcharhwinjbitmask" in Bitmasks else 0
-	detcharhwinj_offbitmask = int(Bitmasks["detcharhwinjoffbitmask"]) if "detcharhwinjoffbitmask" in Bitmasks else 0
-	stochhwinj_bitmask = int(Bitmasks["stochhwinjbitmask"]) if "stochhwinjbitmask" in Bitmasks else 0
-	stochhwinj_offbitmask = int(Bitmasks["stochhwinjoffbitmask"]) if "stochhwinjoffbitmask" in Bitmasks else 0
+	cbchwinj_bitmask = int(Bitmasks["cbchwinjbitmask"]) if "cbchwinjbitmask" in Bitmasks else None
+	cbchwinj_offbitmask = int(Bitmasks["cbchwinjoffbitmask"]) if "cbchwinjoffbitmask" in Bitmasks else None
+	bursthwinj_bitmask = int(Bitmasks["bursthwinjbitmask"]) if "bursthwinjbitmask" in Bitmasks else None
+	bursthwinj_offbitmask = int(Bitmasks["bursthwinjoffbitmask"]) if "bursthwinjoffbitmask" in Bitmasks else None
+	detcharhwinj_bitmask = int(Bitmasks["detcharhwinjbitmask"]) if "detcharhwinjbitmask" in Bitmasks else None
+	detcharhwinj_offbitmask = int(Bitmasks["detcharhwinjoffbitmask"]) if "detcharhwinjoffbitmask" in Bitmasks else None
+	stochhwinj_bitmask = int(Bitmasks["stochhwinjbitmask"]) if "stochhwinjbitmask" in Bitmasks else None
+	stochhwinj_offbitmask = int(Bitmasks["stochhwinjoffbitmask"]) if "stochhwinjoffbitmask" in Bitmasks else None
 
 	channel_list.append((instrument, obsintent_channel_name))
 	headkeys.append("obsintent")
@@ -705,7 +705,7 @@ if compute_calib_statevector:
 	for i in range(len(filterclock_channel_list)):
 		filterclock_channel_list[i] = filterclock_channel_list[i].split(',')
 		for j in range(len(filterclock_channel_list[i])):
-			if filterclock_channel_list[i][j] != obsintent_channel_name and filterclock_channel_list[i][j] != lownoise_channel_name and filterclock_channel_list[i][j] != hwinj_channel_name:
+			if filterclock_channel_list[i][j] != obsintent_channel_name and filterclock_channel_list[i][j] != lownoise_channel_name:
 				channel_list.append((instrument, filterclock_channel_list[i][j]))
 				headkeys.append(filterclock_channel_list[i][j])
 		filterclock_sr_list[i] = int(filterclock_sr_list[i])
@@ -2037,9 +2037,17 @@ if compute_calib_statevector:
 	filterclock_channels = []
 	for i in range(len(filterclock_channel_list)):
 		for key in headkeys:
-			if key in filterclock_channel_list[i]:
-				filterclock_channels.append(calibration_parts.mkqueue(pipeline, pipeparts.mkcapsfilter(pipeline, pipeparts.mkgeneric(pipeline, calibration_parts.caps_and_progress(pipeline, head_dict[key], filterclock_caps[i],key), "lal_logicalundersample", required_on = filterclock_bitmask_list[i], status_out = 1), calibstate_caps)))
-	filtersok = pipeparts.mkadder(pipeline, tuple(filterclock_channels))
+			for j in range(len(filterclock_channel_list[i])):
+				if ((filterclock_channel_list[i][j] != obsintent_channel_name and filterclock_channel_list[i][j] != lownoise_channel_name) and key in filterclock_channel_list[i]):
+					filterclock_channels.append(calibration_parts.mkqueue(pipeline, pipeparts.mkcapsfilter(pipeline, pipeparts.mkgeneric(pipeline, calibration_parts.caps_and_progress(pipeline, head_dict[key], filterclock_caps[i],key), "lal_logicalundersample", required_on = filterclock_bitmask_list[i], status_out = 1), calibstate_caps)))
+				elif (filterclock_channel_list[i][j] == obsintent_channel_name and key == "obsintent"):
+					filterclock_channels.append(calibration_parts.mkqueue(pipeline, pipeparts.mkcapsfilter(pipeline, pipeparts.mkgeneric(pipeline, obsintenttee, "lal_logicalundersample", required_on = filterclock_bitmask_list[i], status_out = 1), calibstate_caps)))
+				elif (filterclock_channel_list[i][j] == lownoise_channel_name and key == "lownoise"):
+					filterclock_channels.append(calibration_parts.mkqueue(pipeline, pipeparts.mkcapsfilter(pipeline, pipeparts.mkgeneric(pipeline, lownoisetee, "lal_logicalundersample", required_on = filterclock_bitmask_list[i], status_out = 1), calibstate_caps)))
+	if len(filterclock_channel_list) > 1:
+		filtersok = pipeparts.mkadder(pipeline, tuple(filterclock_channels))
+	else:
+		filtersok = filterclock_channels[0]
 	filtersok = pipeparts.mkbitvectorgen(pipeline, filtersok, bit_vector = 1, threshold=len(filterclock_channels))
 	filtersok = pipeparts.mkcapsfilter(pipeline, filtersok, calibstate_caps)
 	filtersoktee = pipeparts.mktee(pipeline, filtersok)
@@ -2233,16 +2241,36 @@ if compute_calib_statevector:
 
 	hwinjchanneltee = obsintentchanneltee if hwinj_channel_name == obsintent_channel_name else lownoisechanneltee if hwinj_channel_name == lownoise_channel_name else pipeparts.mktee(pipeline, calibration_parts.caps_and_progress(pipeline, head_dict["hwinj"], hwinj_caps, "HW_injections_%s" % instrument))
 
-	hwinjcbc = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = cbchwinj_bitmask, required_off = cbchwinj_offbitmask, status_out = pow(2,6))
+	if cbchwinj_bitmask is not None:
+		hwinjcbc = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = cbchwinj_bitmask, status_out = pow(2,6))
+	elif cbchwinj_offbitmask is not None:
+		hwinjcbc = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_off = cbchwinj_offbitmask, status_out = pow(2,6))
+	else:
+		raise ValueError("Must set either CBCHWInjBitmask or CBCHWInjOffBitmask")
 	hwinjcbc = pipeparts.mkcapsfilter(pipeline, hwinjcbc, calibstate_caps)
 
-	hwinjburst = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = bursthwinj_bitmask, required_off = bursthwinj_offbitmask, status_out = pow(2,7))
+	if bursthwinj_bitmask is not None:
+		hwinjburst = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = bursthwinj_bitmask, status_out = pow(2,7))
+	elif bursthwinj_offbitmask is not None:
+		hwinjburst = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_off = bursthwinj_offbitmask, status_out = pow(2,7))
+	else:
+		raise ValueError("Must set either BurstHWInjBitmask or BurstHWInjOffBitmask")
 	hwinjburst = pipeparts.mkcapsfilter(pipeline, hwinjburst, calibstate_caps)
 
-	hwinjdetchar = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = detcharhwinj_bitmask, required_off = detcharhwinj_offbitmask, status_out = pow(2,8))
+	if detcharhwinj_bitmask is not None:
+		hwinjdetchar = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = detcharhwinj_bitmask, status_out = pow(2,8))
+	elif detcharhwinj_offbitmask is not None:
+		hwinjdetchar = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample",  required_off = detcharhwinj_offbitmask, status_out = pow(2,8))
+	else:
+		raise ValueError("Must set either DetCharHWInjBitmask or DetcharHWInjOffBitmask")
 	hwinjdetchar = pipeparts.mkcapsfilter(pipeline, hwinjdetchar, calibstate_caps)
 
-	hwinjstoch = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = stochhwinj_bitmask, required_off = stochhwinj_offbitmask, status_out = pow(2,5))
+	if stochhwinj_bitmask is not None:
+		hwinjstoch = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample", required_on = stochhwinj_bitmask, status_out = pow(2,5))
+	elif stochhwinj_offbitmask is not None:
+		hwinjstoch = pipeparts.mkgeneric(pipeline, hwinjchanneltee, "lal_logicalundersample",  required_off = stochhwinj_offbitmask, status_out = pow(2,5))
+	else:
+		raise ValueError("Must set either StochHWInjBitmask or StochHWInjOffBitmask")
 	hwinjstoch = pipeparts.mkcapsfilter(pipeline, hwinjstoch, calibstate_caps)
 
 	#
diff --git a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1GDS_1231861863_test.ini b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1GDS_1231861863_test.ini
index 9b12ea43c48e0ef5ed49ceba2fe2641ca31f6466..a43bd37ae3a6b1151cfeda38763f94ab39db33e8 100644
--- a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1GDS_1231861863_test.ini
+++ b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1GDS_1231861863_test.ini
@@ -49,7 +49,7 @@ ComputeCalibStateVector: Yes
 
 [DebuggingConfigurations]
 # If you want to write a pipeline graph, provide the graph name.  Otherwise, set name equal to None
-PipelineGraphFilename: None
+PipelineGraphFilename: gstlal_compute_strain_graph
 Verbose: Yes
 # Turn this on to write data presentation timestamps and real-time unix timestamps to file at the beginning and end of the pipeline, to measure latency
 TestLatency: No
@@ -187,10 +187,11 @@ DeltaLResChannel: CAL-DELTAL_RESIDUAL_DBL_DQ
 # Data Quality Vector Channel Name #
 ####################################
 #InputDQChannel: ODC-MASTER_CHANNEL_OUT_DQ
-LowNoiseChannel: GRD-IFO_OK
+LowNoiseStateChannel: GRD-ISC_LOCK_OK
 HWInjChannel: CAL-INJ_STATUS_OUT_DQ
-ObsIntentChannel: ODC-OPERATOR_OBSERVATION_READY
-FilterClockChannelLiset: GRD-ISC_LOCK_STATUS;GRD-ISC_LOCK_STATE_N
+ObsIntentChannel: ODC-MASTER_CHANNEL_OUT_DQ
+FilterClockChannelList: GRD-ISC_LOCK_LOAD_STATUS;GRD-ISC_LOCK_STATE_N
+NoiseSubGateChannel: GRD-IFO_OK
 ##################################
 # Calibration Line Channel Names #
 ##################################
@@ -278,8 +279,14 @@ CalibStateSR: 16
 # Sample rate of control channel
 # Should be 16384 if using DARM_CTRL and 4096 if using DELTAL_CTRL 
 CtrlSR: 4096
-# Sample rate of ODC channel
-ODCSR: 16384
+# Sample rate of low noise state channel
+LowNoiseSR: 16
+# Sample rate of HW injection channel
+HWInjSR: 16384
+# Sample rate of observation intent channel
+ObsIntentSR: 16384
+# Sample rate list for chanels being used to trigger filter settling clock
+FilterClockSRList: 16;16
 # Sample rate of TST excitation channel
 TSTExcSR: 512
 # Sample rate of PUM excitation channel
@@ -306,7 +313,7 @@ RecordFactorsSR: 16
 #DetCharHWInjBitmask: 67108864
 #StochHWInjBitmask: 8388608
 #NoiseSubGateBitmask: 2
-ObsIntentBitmask: 1
+ObsIntentBitmask: 2
 LowNoiseBitmask: 1
 FilterClockBitmaskList: 2;550
 CBCHWInjOffBitmask: 8
diff --git a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1_raw_frames.cache b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1_raw_frames.cache
index e1e9d0df7c0e80348f4f4ca38247859759b6e750..d46c069dca2c24684e2885a25b3fcb4a271aeeaf 100644
--- a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1_raw_frames.cache
+++ b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/H1_raw_frames.cache
@@ -1,5 +1,5 @@
-H H1_R 1231811456 64 file://localhost/hdfs/frames/postO2/raw/H1/H-H1_R-12318/H-H1_R-1231811456-64.gwf
-H H1_R 1231811520 64 file://localhost/hdfs/frames/postO2/raw/H1/H-H1_R-12318/H-H1_R-1231811520-64.gwf
-H H1_R 1231811584 64 file://localhost/hdfs/frames/postO2/raw/H1/H-H1_R-12318/H-H1_R-1231811584-64.gwf
-H H1_R 1231811648 64 file://localhost/hdfs/frames/postO2/raw/H1/H-H1_R-12318/H-H1_R-1231811648-64.gwf
-H H1_R 1231811712 64 file://localhost/hdfs/frames/postO2/raw/H1/H-H1_R-12318/H-H1_R-1231811712-64.gwf
+H H1_R 1231811456 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/raw_frames/H-H1_R-1231811456-64.gwf
+H H1_R 1231811520 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/raw_frames/H-H1_R-1231811520-64.gwf
+H H1_R 1231811584 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/raw_frames/H-H1_R-1231811584-64.gwf
+H H1_R 1231811648 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/raw_frames/H-H1_R-1231811648-64.gwf
+H H1_R 1231811712 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/raw_frames/H-H1_R-1231811712-64.gwf
diff --git a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.all_tests b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.all_tests
deleted file mode 100644
index 95a6f56c20437ade1b285821f189fb42061a0d83..0000000000000000000000000000000000000000
--- a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.all_tests
+++ /dev/null
@@ -1,102 +0,0 @@
-# This makefile can be used to run all of the tests instead of running them one by one.
-
-# Indicate IFO and observing run
-# Note: Make sure that there is no space after the L or H! 
-# Another note: Livingston cluster cannot run this for IFO = H. Make sure that the cluster you're using has the raw frames you want. 
-export IFO=H
-# OBSRUN inidcates where to look for filters files (e.g. O1, O2, O3, ER10, ER13, ER14, PreER13, PreER14)
-#export OBSRUN=O2
-export OBSRUN=O3
-
-# Set start and stop times for a short lock stretch
-export SHORT_START=1231811468
-export SHORT_END=1231811768
-# Set start and stop times for a longer stretch that spans a lock-unlock stretch
-export LONG_START = 1231811468
-export LONG_END = 1231813019
-
-export SHMRUNTIME=400
-
-# How much time does the calibraiton need to settle at the start and end?
-PLOT_WARMUP_TIME = 220
-PLOT_COOLDOWN_TIME = 64
-export SHORT_PLOT_START=$(shell echo $(SHORT_START) + $(PLOT_WARMUP_TIME) | bc)
-export LONG_PLOT_START=$(shell echo $(LONG_START) + $(PLOT_WARMUP_TIME) | bc)
-export SHORT_PLOT_END=$(shell echo $(SHORT_END) - $(PLOT_COOLDOWN_TIME) | bc) 
-export LONG_PLOT_END=$(shell echo $(LONG_END) - $(PLOT_COOLDOWN_TIME) | bc) 
-
-# Point to all of the .ini files for different configurations
-export GDSCONFIGS=H1GDS_1231861863_test.ini 
-#export GDSCONFIGSNOKAPPAS=H1GDS_1228712903_test_no_kappas.ini 
-
-# Needed for writing pipeline graphs
-export GST_DEBUG_DUMP_DOT_DIR=.
-
-all: response_function ASD_comparison pcal_to_darm timeserieskappas calib_version_comparison
-
-# Create frame cache files for raw, C00, C01, and C02 frames
-$(IFO)1_raw_frames.cache:
-	gw_data_find -o $(IFO) -t $(IFO)1_R -s $(SHORT_START) -e $(SHORT_END) -l --url-type file > $@
-
-$(IFO)1_C00_frames.cache:
-	gw_data_find -o $(IFO) -t $(IFO)1_HOFT_C00 -s $(SHORT_START) -e $(SHORT_END) -l --url-type file > $@
-
-$(IFO)1_C01_frames.cache:
-	gw_data_find -o $(IFO) -t $(IFO)1_HOFT_C01 -s $(SHORT_START) -e $(SHORT_END) -l --url-type file > $@
-
-$(IFO)1_C02_frames.cache:
-	gw_data_find -o $(IFO) -t $(IFO)1_HOFT_C02 -s $(SHORT_START) -e $(SHORT_END) -l --url-type file > $@
-
-
-# Calibrate GDS testing data
-$(IFO)1_hoft_GDS_frames.cache: $(IFO)1_raw_frames.cache filters framesdir
-	gstlal_compute_strain --gps-start-time $(SHORT_START) --gps-end-time $(SHORT_END) --frame-cache $(IFO)1_raw_frames.cache --output-path Frames/$(OBSRUN)/$(IFO)1/GDS/ --frame-duration=64 --frames-per-file=1 --wings=0 --config-file $(GDSCONFIGS)
-	ls Frames/$(OBSRUN)/$(IFO)1/GDS/$(IFO)-$(IFO)1GDS_TEST-*.gwf | lalapps_path2cache > $@
-
-# Calibrate GDS testing data with no kappas applied for response function test
-$(IFO)1_hoft_GDS_no_kappas_frames.cache: $(IFO)1_raw_frames.cache filters framesdir
-	#gstlal_compute_strain --gps-start-time $(SHORT_START) --gps-end-time $(SHORT_END) --frame-cache $(IFO)1_raw_frames.cache --output-path Frames/$(OBSRUN)/$(IFO)1/GDS/ --frame-duration=64 --frames-per-file=1 --wings=0 --config-file $(GDSCONFIGSNOKAPPAS)
-	#ls Frames/$(OBSRUN)/$(IFO)1/GDS/$(IFO)-$(IFO)1GDS_TEST_NOKAPPAS*.gwf | lalapps_path2cache > $@
-
-
-filters:
-	if [ -d Filters/$(OBSRUN)/GDSFilters ]; then \
-                svn up Filters/$(OBSRUN)/GDSFilters; \
-        else \
-                mkdir -p Filters/$(OBSRUN); \
-                cd Filters/$(OBSRUN); \
-                svn co https://svn.ligo.caltech.edu/svn/aligocalibration/trunk/Runs/$(OBSRUN)/GDSFilters; \
-        fi
-
-framesdir:
-	mkdir -p Frames/$(OBSRUN)/$(IFO)1/easy_raw
-	mkdir -p Frames/$(OBSRUN)/$(IFO)1/GDS
-	mkdir -p Frames/$(OBSRUN)/$(IFO)1/DCS
-
-
-response_function: $(IFO)1_hoft_GDS_frames.cache $(IFO)1_raw_frames.cache
-	make -f Makefile.response_function
-
-ASD_comparison: $(IFO)1_raw_frames.cache $(IFO)1_hoft_GDS_frames.cache
-	make -f Makefile.ASD_comparison
-
-timeserieskappas:  $(IFO)1_hoft_GDS_frames.cache 
-	make -f Makefile.timeserieskappas
-
-pcal_to_darm: $(IFO)1_raw_frames.cache $(IFO)1_hoft_GDS_frames.cache
-	make -f Makefile.pcal_to_darm
-
-# FIXME: This is seg faulting for me right now
-calib_version_comparison: $(IFO)1_hoft_GDS_frames.cache $(IFO)1_C02_frames.cache
-	make -f Makefile.calib_version_comparison
-
-# Need to clean up this clean command
-clean: 
-	rm *.pdf
-	rm *.txt
-	rm -rf Frames/
-	rm -rf Filters/
-	rm *.png
-	rm *.dot
-
-
diff --git a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.response_function b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.response_function
index 6985f85e144c44160a197cc86adbf955487874e3..7b070d80d8ba8bf9945d4bf717e031068452ed8a 100644
--- a/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.response_function
+++ b/gstlal-calibration/tests/H1GDS_1231861863_filter_tests/H1/Makefile.response_function
@@ -1,6 +1,6 @@
 all: GDS_response_function_bode_plot
 
-FILTERS_FILE = Filters/$(OBSRUN)/GDSFilters/H1GDS_1231861863.npz
+FILTERS_FILE = /home/wademc/calibration/aligocalibration/aligocalibration/trunk/Runs/O3/H1/Scripts/TDfilters/H1GDS_1231861863.npz
 
 GDS_response_function_bode_plot: 
 	python ../../check_calibration/response_function.py --gps-start-time $(SHORT_PLOT_START) --gps-end-time $(SHORT_PLOT_END) --dt 6.103515625e-05 --ifo $(IFO)1 --hoft-frames-cache $(IFO)1_hoft_GDS_frames.cache --raw-frames-cache $(IFO)1_raw_frames.cache --response-file $(FILTERS_FILE) 
diff --git a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1GDS_1231616859_tests.ini b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1GDS_1231616859_tests.ini
index 52a27fbd360ba48e3aba0b7f0e1e90b50b4875cc..a53c5d385a1d5920db4f5d1998968d7dd4674a99 100644
--- a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1GDS_1231616859_tests.ini
+++ b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1GDS_1231616859_tests.ini
@@ -2,7 +2,7 @@
 # Track what "version" of config file this is, so that the pipeline knows which options are present in this file
 ConfigVersion: 1
 # Filters file containing calibration FIR filters
-FiltersFileName: L1GDS_1231616859.npz
+FiltersFileName: /home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Filters/O3/GDSFilters/L1GDS_1231616859.npz
 # Data source should be set to frames or lvshm
 DataSource: frames
 FileChecksum: No
diff --git a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_hoft_GDS_frames.cache b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_hoft_GDS_frames.cache
index 9d3b947aee83b161662fb29c9e02520a240bd9e5..69c3e97c2754d6cb9032b28b6ae2d12f4e1f8fa4 100644
--- a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_hoft_GDS_frames.cache
+++ b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_hoft_GDS_frames.cache
@@ -1,3 +1,9 @@
+L L1GDS_TEST 1228973376 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973376-64.gwf
+L L1GDS_TEST 1228973440 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973440-64.gwf
+L L1GDS_TEST 1228973504 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973504-64.gwf
+L L1GDS_TEST 1228973568 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973568-64.gwf
+L L1GDS_TEST 1228973632 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973632-64.gwf
+L L1GDS_TEST 1228973696 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1228973696-64.gwf
 L L1GDS_TEST 1231584128 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1231584128-64.gwf
 L L1GDS_TEST 1231584192 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1231584192-64.gwf
 L L1GDS_TEST 1231584256 64 file://localhost/home/wademc/src/gstlal/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Frames/O3/L1/GDS/L-L1GDS_TEST-1231584256-64.gwf
diff --git a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_raw_frames.cache b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_raw_frames.cache
index ccdb68b29ff5d08927440e6167ab45a62d48a734..51ec150aa941423f5a19b0732d3783c1b2a3c9be 100644
--- a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_raw_frames.cache
+++ b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/L1_raw_frames.cache
@@ -1,16 +1,8 @@
-L L1_R 1231584064 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584064-64.gwf
-L L1_R 1231584128 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584128-64.gwf
-L L1_R 1231584192 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584192-64.gwf
-L L1_R 1231584256 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584256-64.gwf
-L L1_R 1231584320 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584320-64.gwf
-L L1_R 1231584384 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584384-64.gwf
-L L1_R 1231584448 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584448-64.gwf
-L L1_R 1231584512 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584512-64.gwf
-L L1_R 1231584576 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584576-64.gwf
-L L1_R 1231584640 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584640-64.gwf
-L L1_R 1231584704 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584704-64.gwf
-L L1_R 1231584768 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584768-64.gwf
-L L1_R 1231584832 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584832-64.gwf
-L L1_R 1231584896 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584896-64.gwf
-L L1_R 1231584960 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231584960-64.gwf
-L L1_R 1231585024 64 file://localhost/hdfs/frames/postO2/raw/L1/L-L1_R-12315/L-L1_R-1231585024-64.gwf
+L L1_R 1228973312 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973312-64.gwf
+L L1_R 1228973376 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973376-64.gwf
+L L1_R 1228973440 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973440-64.gwf
+L L1_R 1228973504 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973504-64.gwf
+L L1_R 1228973568 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973568-64.gwf
+L L1_R 1228973632 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973632-64.gwf
+L L1_R 1228973696 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973696-64.gwf
+L L1_R 1228973760 64 file://localhost/hdfs/frames/ER13/raw/L1/L-L1_R-12289/L-L1_R-1228973760-64.gwf
diff --git a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.all_tests b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.all_tests
index 6f1de1c41c3c8505b6660aaa3a2a903f305bb555..1156520f0c8ff81881d9363390446d061ae80d8e 100644
--- a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.all_tests
+++ b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.all_tests
@@ -10,8 +10,8 @@ export OBSRUN=O3
 #export OBSRUN=ER13
 
 # Set start and stop times for a short lock stretch
-export SHORT_START=1231584067
-export SHORT_END=1231585067
+export SHORT_START=1228973313
+export SHORT_END=1228973813
 # Set start and stop times for a longer stretch that spans a lock-unlock stretch
 export LONG_START = 1228992767
 export LONG_END = 1228996767
@@ -33,7 +33,7 @@ export GDSCONFIGSNOKAPPAS=L1GDS_1231616859_no_kappas.ini
 # Needed for writing pipeline graphs
 export GST_DEBUG_DUMP_DOT_DIR=.
 
-all: response_function ASD_comparison pcal_to_darm timeserieskappas calib_version_comparison
+all: response_function ASD_comparison statevector
 
 # Create frame cache files for raw, C00, C01, and C02 frames
 $(IFO)1_raw_frames.cache:
@@ -51,7 +51,7 @@ $(IFO)1_C02_frames.cache:
 
 # Calibrate GDS testing data
 $(IFO)1_hoft_GDS_frames.cache: $(IFO)1_raw_frames.cache filters framesdir
-	#gstlal_compute_strain --gps-start-time $(SHORT_START) --gps-end-time $(SHORT_END) --frame-cache $(IFO)1_raw_frames.cache --output-path Frames/$(OBSRUN)/$(IFO)1/GDS/ --frame-duration=64 --frames-per-file=1 --wings=0 --config-file $(GDSCONFIGS)
+	gstlal_compute_strain --gps-start-time $(SHORT_START) --gps-end-time $(SHORT_END) --frame-cache $(IFO)1_raw_frames.cache --output-path Frames/$(OBSRUN)/$(IFO)1/GDS/ --frame-duration=64 --frames-per-file=1 --wings=0 --config-file $(GDSCONFIGS)
 	ls Frames/$(OBSRUN)/$(IFO)1/GDS/$(IFO)-$(IFO)1GDS_TEST-*.gwf | lalapps_path2cache > $@
 
 # Calibrate GDS testing data with no kappas applied for response function test
@@ -81,6 +81,9 @@ response_function: $(IFO)1_hoft_GDS_frames.cache $(IFO)1_raw_frames.cache
 ASD_comparison: $(IFO)1_raw_frames.cache $(IFO)1_hoft_GDS_frames.cache
 	make -f Makefile.ASD_comparison
 
+statevector: $(IFO)1_hoft_GDS_frames.cache
+	make -f Makefile.statevector
+
 timeserieskappas:  $(IFO)1_hoft_GDS_frames.cache 
 	make -f Makefile.timeserieskappas
 
diff --git a/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.statevector b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.statevector
new file mode 100644
index 0000000000000000000000000000000000000000..5733f7338eaed970ea286d6177244e6cf182f926
--- /dev/null
+++ b/gstlal-calibration/tests/L1GDS_1231616859_filter_tests/L1/Makefile.statevector
@@ -0,0 +1,9 @@
+all: calib_state_vector_plot
+
+calib_state_vector_plot: 
+	python ../../check_calibration/statevector_plot.py --gps-start-time $(SHORT_PLOT_START) --gps-end-time $(SHORT_PLOT_END) --ifo $(IFO)1 --hoft-frames-cache $(IFO)1_hoft_GDS_frames.cache
+
+
+clean: 
+	rm *.pdf
+