The following conditions are required for a CASE learn:
1. Transmission must be "NOT IN GEAR"
2. Only one *successful* learn attempt per ignition cycle is allowed.
3. ECT must be >= 60 degC (140 degF)
4. Brake pedal must be depressed - although EFILive attempts to bypass that check - not always successfully.
5. Handbrake should be applied - although I am not sure if any operating systems check that - but it can't hurt to have it applied.
6. None of these faults are allowed to be set:
P0335 Crankshaft Position (CKP) Sensor A Circuit
P0336 Crankshaft Position (CKP) Sensor A Performance
P0341 Camshaft Position (CMP) Sensor Performance Bank 1 Sensor A
P0342 Camshaft Position (CMP) Sensor Circuit Low Bank 1 Sensor A
P0343 Camshaft Position (CMP) Sensor Circuit High Bank 1 Sensor A
P0117 Engine Coolant Temperature (ECT) Sensor Circuit Low
P0118 Engine Coolant Temperature (ECT) Sensor Circuit High
P1539 Air Conditioning (A/C) Clutch Feedback Circuit High Voltage
P1546 Air Conditioning (A/C) Clutch Feedback Circuit Open
P0705 Transmission Range (TR) Switch Circuit
P0706 Transmission Range (TR) Switch Performance
P1810 Transmission Fluid Pressure (TFP) Position Switch Circuit
P1825 Internal Mode Switch-Invalid Range
7. Additionally, EFILive requires the VSS to be 0.
The RPM that you must rev to is a calibrated value in the PCM, so it could be different in some calibrations. But it should be between 4000 and 5000 - if you get to 5000 and have not felt the fuel cut then you've probably gone far enough.
Also the ECT is a calibrated value so it may be higher in some calibrations.
Once you feel/hear the brief fuel cut (it's only about 1/10 of a second), you must get off the throttle completely as the engine rpm must be allowed to decelerate down to idle while the PCM learns the CKP sensor variation.
Then you must switch off the ignition and wait 15-20 seconds for the PCM to write the learned data to non-volatile (flash) memory.
Regards
Paul