After powering up the device, LED will blink once after it reads some settings from EEPROM. Now, after 2 seconds it will turn on the phone with a 2 second-impulse and pause for 6 seconds to allow phone to turn on. After that, initialization follows with the AT commands stored in EEPROM. They are in EEPROM only to save FLASH memory because this PIC has only 1 kb of FLASH for program. If during the serial communication between the PIC and the GSM some data is lost or never received (3 seconds timeout), the GSM phone will be reinitialized. After the fourth failure, PIC will execute that 2 seconds impulse that will turn the phone on because it thinks it has turned itself off. Also, PIC will do a 5 minute gsm-alive check and turn it on if it doesn't receive data. During those 5 minutes if alarm condition occurs, the PIC will turn the phone on immediately and report the alarm.