This project aim at replacing a dysfunctional 6 zones alarm system using a 12V secured DC power, an arduino mega and a GSM 900 shield for SMS communications.


After a neutral failure on my three-phase electrical installation at home, as a lot of my electrical devices breakdown, I decided to replace my local dysfunctional wire burglar alarm system.

The idea was to build a low cost system, based on arduino using all the allready installed hard-wired captors, a 12V siren, and giving the possibility to communicate using SMS, and to test the system sensibility so that my pet stays undetected.

This my first Arduino and electronic project, so maybe there is a lot to improve. 


The required components are:

- 1 Arduino MEGA 2560

- 1 SIM 900 shield

- 1 2x16 characters LCD

- 1 4x4 keypad

- 1 12mm buzzer

- RTC DS3231 (maybe the SIM 900 shield could handle the clock function)

- 1 srd-05vdc-sl-c 

- 9 10kOhm resistors

- 3 4.7kOhm resistors


A secured power alimentation is obtained using a 12V powersafe system (bought for 25€) that provides 12v when the AC power is present and 8.15V when AC power is missing. The tension falldown is used to detect the battery mode and warn users by sounds and SMS.


The provided arduino source code must be filled to specify the operators codes and phone numbers (in the "Defines.h" file).

LCD/keyboard interface manual

3 levels of access can be set:

- root for total control

- user for usual operations

- guest only to activate/desactivate the alarm system


Not in menu, such function are assigned to keys:

A: start the alarm

B: start the "partial" (night mode) alarm

D: enter the menu

To enter menu insert code, press D and enter one of the 3 possible codes (not all functions are accessible for each level of acces) then:

press * or # to navigate in menu C to select

1. Start alarm

2. Start partial

3. Read Journal (that records about the 300 last events - including any captor activity -)

(then for user and root only)

4. Change Date/clock

5. Change Guest code

6. Change User code

(finaly for root only)

7. Change Root code

8. Change phone1

9. Change phone2

10. Change smsTag

11. Maintenance -> desactivate all alarm for electronic operations on the system

SMS interface

The SMS interface allows both to get informations from the system and to control its behavior.


Every important information is sent to one or two GSM phones via SMS. If the two numbers are the same, messages are sent only once to the phone. Text messages sent can be personnalised in the "Journal.h" file.


Any of this command can be sent by any user using a SMS (not sensitive to uppercase but only on command by message):

- "Status": ask a report of the current state

- "Start" or "Partial": activate standard or partial  (night mode)

- "Siren": enable the siren (desactivate the silent mode)

- "Alarm": activate alarm siren for 15 sec (to afraid intruders in silence mode)

Sensitive commands require to use a specific SMSTAG (specified in Defines.h or using the menu), this tag (using numeral characters) must be written in the sent SMS before or after one of those commands:

- "Stop": stop all alarm or activity

- "Silence": activate silence mode, no sound is performed, any activity is signified using only SMS and written in the journal (desactivated using the "Siren" command)

- "Reset": reboot the GSM shield (usefull if no messages are sent from the alarm)

- "Auto"/"NoAuto": activate the automatic start (after 18h without any activity - from the captors -)

- "Night"/"NoNight": activate the automatic night mode (after two hours without activity from Te:23h to Tm:5h)

- Tm=xxh or Te=xxh specify the moring and evening hours for automatic night mode).