Recovery mode is a special mode of work that may be required only in some very rare cases when module "freezes".
Normally, even if FMFU process has failed, the module remains online and available for programming. This is possible because PBL is located in ROM and cannot be rewritten or damaged during FMFU. So, even if the programming equipment has erased flash, PBL remains working and implements minimal functionality that is enough to restart the programming process and recover the module. Thus in 98% of cases module remains easily recoverable. But it works only if PBL has detected that primary application is missing, damaged or incompatible and doesn't run it. If PBL hasn't detected it properly and launched damaged application, the module may get "frozen" and thus becomes not available for programming. Recovery Mode in FORScan was created specially for this case.
The idea of the Recovery Mode is that PBL usually has a special, very small (usually about 20ms) delay between the moment of start and running primary application. If it receives programming command during this interval, it will start programming session instead of loading the damaged application and can be recovered this way. So user needs to cycle the power (disconnect module from the power supply, then connect it back), to initiate PBL restart, and programming equipment needs to send commands fast enough to catch the moment right after restart. This is what Recovery mode in FORScan does: it ask user to de-energize the module, starts sending programming requests in cycle and then asks user to connect the power. Figure 4d illustrates how it looks like:

Picture 4d. Recovery mode in FORScan
Normally, even if FMFU process has failed, the module remains online and available for programming. This is possible because PBL is located in ROM and cannot be rewritten or damaged during FMFU. So, even if the programming equipment has erased flash, PBL remains working and implements minimal functionality that is enough to restart the programming process and recover the module. Thus in 98% of cases module remains easily recoverable. But it works only if PBL has detected that primary application is missing, damaged or incompatible and doesn't run it. If PBL hasn't detected it properly and launched damaged application, the module may get "frozen" and thus becomes not available for programming. Recovery Mode in FORScan was created specially for this case.
The idea of the Recovery Mode is that PBL usually has a special, very small (usually about 20ms) delay between the moment of start and running primary application. If it receives programming command during this interval, it will start programming session instead of loading the damaged application and can be recovered this way. So user needs to cycle the power (disconnect module from the power supply, then connect it back), to initiate PBL restart, and programming equipment needs to send commands fast enough to catch the moment right after restart. This is what Recovery mode in FORScan does: it ask user to de-energize the module, starts sending programming requests in cycle and then asks user to connect the power. Figure 4d illustrates how it looks like:

Picture 4d. Recovery mode in FORScan
Back to contents