Sometimes I get frustrated that the guy from the delivery company or postman comes to my door and is too lazy to make a call telling me that I receive a package. Many times I’m the lazy one when some friends come to my house and I need to go outside in the rain to open the door for them. Considering all this I develop a project to kill laziness :-). Just kidding.

I receive for testing purpose an Arduino GSM shield, called A-GSM made by R&D Software Solutions, a Romanian company from Bucharest. How better to test this shield if not to make a project with it.

About the project

Basically I build a smart doorbell. When you press the doorbell button it rings like a normal doorbell. The same happens the second and third time. But if no answer happens till now, at the fourth time the button is pressed, the doorbell will call you on your mobile phone number allowing you to speak with the person that is at your door. Also with the help of DTMF codes it’s allowing you to open the door from anywhere you might be in that moment.

So let’s see if I managed at least to wound laziness.

Needed parts

  • Arduino UNO
  • A-GSM shield
  • Doorbell shield
    • 1 – button
    • 1 – speaker for doorbell
    • 1- relay for door unlocking
    • 1 – PC microphone for A-GSM sheield
    • 1 – 0.5W speaker for A-GSM shield
  • Power source


About A-GSM

At first I was a bit skeptical about the A-GSM shield, and maybe it was because it’s my first time that I was playing with a GSM shield. Looking at the documentation provided at I was able to get started very easily. Mainly if you are able to use the serial communication port from your Arduino you won’t have any problems using the A-GSM shield. The code on manufacturer site touches all functions of the shield, yet a library for this shield would be very useful. The shield is based on GSM chip QUECTEL M85, if you need a function and is not provided by the sample codes you can check the  GSM_M85_AT_Commands_Manual_V1.0

Shield specs



  • Worldwide compatibility # quad band module
  • GSM / GPRS / SMS / DTMF supported
  • Two SIM sockets
  • Integrated GSM antennaand uFL connector for external antenna
  • Integrated uSD(TF) socket
  • Micro-USB interface- SERIAL to USB bridge adapter with micro-USB type B socket (you can use the a-gsm board as wireless modem with your PC, connecting it directly thought USB to your PC – Windows and Linux compatible)
  • 3-5V serial interface
  • 5-38V wide voltageswitching power supply
  • Audio jacks (out-700 mW RMS, in- capacitor MIC)
  • DIGITAL AUDIO interface and SERIAL2 (3V TXD and RXD) interfaces available thought additional back PCB side pads.
  • MicroSD card socket standard (support uTF cards up to 32 Gb)
  • SERIAL TTL interface, down to 3V compliant (TX and RX) available in Arduino pin-out
  • Embedded switches: control for modem ON/OFF & modem RESET and Arduino Reset
  • Extended Arduino and RaspberryPI support, with code examples: – GSM, TCP/UDP, HTTP over GPRS, DTMF, SMS and other features and utilities like micro-TF CARD FILE SYSTEM STORAGE, DUAL SIM, others.
  • RaspberryPI PPP and TCPIP routing support (RaspbianOS) trough easy installation and usage scripts.
  • Complex code examples
  • Ideal for small-medium series gadget / project integration


In the picture bellow you can observe all the needed connections.



For the A-GSM speaker and MIC the connections should be done as in bellow picture:



Code is too big to put it all here and that is why I prefered to use GitHub

Possible improvements

  • Add LCD for telling the visitor what is happening
  • Re-positioning of the MIC for better sound quality
  • Build a box for the complete project

Smart doorbell with Arduino and A-GSM shield
Etichetat pe:                    

2 comentarii la „Smart doorbell with Arduino and A-GSM shield

  • 29/12/2014 la 20:45
    Legătură permanentă

    Hi, I purchased a-gsm shield from Dragos to build a similar project with that you have with your doorbell. I have my a-gsm shield attached to a Arduino Mega2560 running Dragos agsm_utilities_ss sketch. I wanted to trying using your code for my home project, but it seems that some things may be missing. Is there other code I should be using from your GitHub? Happy Holidays, Larry


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.