summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--device-functions.c13
-rw-r--r--version.h2
2 files changed, 12 insertions, 3 deletions
diff --git a/device-functions.c b/device-functions.c
index 02162cf..1ed0cac 100644
--- a/device-functions.c
+++ b/device-functions.c
@@ -2182,13 +2182,22 @@ int Set_Cal_Nom(int channel,int calibration_point_number,int parameter, float *n
return OK;
}
- /* For timing parameters, turn off output and error-checking, and change prf/pw,
+ /* For most timing parameters, turn off output and error-checking, and change prf/pw,
except for voltage-controlled delay (2CHPP, for example). For ampl/os parameters,
and voltage-controlled delay, use existing timing and output state, and use error-checking */
if (reset_state) {
Main_Rst();
- Set_Output_State(true_channel,output_off);
+
+ /* keep output on for wide-pw cal, because the effect of multiple 50 Ohm terminations
+ can affect the timing */
+ if ((parameter == pwl_pw_values) &&
+ (nominal_val > 100e-6) &&
+ (globals.Flash.max_pw[channel] > 100e-6)) {
+ Set_Output_State(true_channel,output_on);
+ } else {
+ Set_Output_State(true_channel,output_off);
+ }
Main_update_shift_registers();
bus_setpin(PW_ENABLE, 1); /* enable PW circuit (but output relay still off) */
}
diff --git a/version.h b/version.h
index d7e05bf..6773ade 100644
--- a/version.h
+++ b/version.h
@@ -1,2 +1,2 @@
-#define FW_VERSION "6.4.38"
+#define FW_VERSION "6.4.39"
#define SCPI_version "1996.0"