diff options
-rw-r--r-- | device-functions.c | 3 | ||||
-rw-r--r-- | flash.c | 2 | ||||
-rw-r--r-- | globals.h | 6 |
3 files changed, 9 insertions, 2 deletions
diff --git a/device-functions.c b/device-functions.c index ccedec6..2565a02 100644 --- a/device-functions.c +++ b/device-functions.c @@ -1142,7 +1142,8 @@ int Set_Output_State(int channel,int mode) bus_setpin(OUTPUT_RELAY, 1); /* turn output on */ bus_setpin(PW_ENABLE, 1); /* enable PW circuit */ - g_usleep (800e3); /* wait for extended-off circuit to work */ + gulong sleep_us = get_float_with_min (globals.Flash.output_on_delay, DEFAULT_OUTPUT_ON_DELAY) * 1e6; + g_usleep (sleep_us); /* wait for extended-off circuit to work */ globals.Timers.last_activity_at[channel] = sec_timer(); } else { @@ -477,6 +477,8 @@ static void initFlashValues(FlashStruct *mem) mem->ampl_ranges_for_ch2_only=0; + mem->output_on_delay=DEFAULT_OUTPUT_ON_DELAY; // 0.8 seconds + mem->ChanKey_frequency=0; mem->ChanKey_delay=0; mem->ChanKey_pw=0; @@ -228,6 +228,10 @@ #define COUNTER_BYTE_3 0x60 +// hardware default values +#define DEFAULT_OUTPUT_ON_DELAY 0.8 // needs at least 800 ms, due to soft-on circuit + + // menu stuff #define Main_Menu_On 0 #define Submenu_On 1 @@ -403,7 +407,7 @@ typedef struct { short telnet_logon_timeout; /* 164 - timeout in seconds */ short spare6; /* 166 */ - float spare5; /* 168 */ + float output_on_delay; /* 168 */ short channels; /* 172 */ char ChanKey_frequency; /* 174 */ |