diff --git a/src/epics/util/skeleton.st b/src/epics/util/skeleton.st index ec32fcdafc8ab0ea9c9445e5ef553f9e27daba3d..d193f19ef8c7503e5c65937ee413663b258d093f 100644 --- a/src/epics/util/skeleton.st +++ b/src/epics/util/skeleton.st @@ -575,6 +575,7 @@ state monScreen{ pvPut(uptime_minute); festat = pEpics->epicsOutput.fe_status; + %% if(festat == -7) strcpy(msgFESTAT,"ADC Timeout - exiting"); %% if(festat == -6) strcpy(msgFESTAT,"DAC Init Failed - exiting"); %% if(festat == -5) strcpy(msgFESTAT,"BURT Restore Failed - exiting"); %% if(festat == -4) strcpy(msgFESTAT,"Channel Hopping detected - exiting"); diff --git a/src/include/controller.h b/src/include/controller.h index 654fddac947df2181a3e03399c29d6e255a45006..5092c7a568d155e97982e91b121d6ebc3e93bb22 100644 --- a/src/include/controller.h +++ b/src/include/controller.h @@ -77,6 +77,7 @@ char fp [64*1024]; // fe_state defs +#define ADC_TO_ERROR -7 #define DAC_INIT_ERROR -6 #define BURT_RESTORE_ERROR -5 #define CHAN_HOP_ERROR -4 diff --git a/src/include/drv/iop_adc_functions.c b/src/include/drv/iop_adc_functions.c index d9feafbda602ccd1fec7e8a57c31b121d8224023..9842ddb110195bd0fd25e464202738fc654e9150 100644 --- a/src/include/drv/iop_adc_functions.c +++ b/src/include/drv/iop_adc_functions.c @@ -182,6 +182,7 @@ inline int iop_adc_read (adcInfo_t *adcinfo,int cpuClk[]) if (adcinfo->adcWait >= MAX_ADC_WAIT) { pLocalEpics->epicsOutput.stateWord = FE_ERROR_ADC; pLocalEpics->epicsOutput.diagWord |= ADC_TIMEOUT_ERR; + pLocalEpics->epicsOutput.fe_status = ADC_TO_ERROR; stop_working_threads = 1; vmeDone = 1; // printf("timeout %d %d \n",jj,adcinfo->adcWait);