What happen if you Enable/Disable MIBAM within the IF/Then loop?
Code:
main:
    gosub do_adc 'get ADC reading
    pause 20
    
    ;T1CON.0 = 0 'disable mibam
    debug "ADC: ",dec4 adc_val,13,10
    pause 2
   ; T1CON.0 = 1 'enable mibam
    
    if adc_val > adc_thresh then 
        T1CON.0 = 1 'enable mibam
        FOR red = 255 to 1 STEP -1
                PAUSE Speed
        NEXT red
        red = 0
        
        FOR grn = 255 to 1 STEP -1
                PAUSE Speed
        NEXT grn
        grn = 0
        
        FOR BLU = 255 to 1 STEP -1
                PAUSE Speed
        NEXT BLu
        blu = 0
        T1CON.0 = 0 'disable mibam
    endif  
goto main