This chapter discusses the following functions of the GSM library:

  • GSMAccess.begin()
  • GSMAccess.shutdown()
  • GSM_SMS.beginSMS()
  • GSM_SMS.print()
  • GSM_SMS.endSMS()
  • GSM_SMS.available()
  • GSM_SMS.remoteNumber()
  • GSM_SMS.peek()
  • GSM_SMS.flush()
  • GSMVoiceCall.voiceCall()
  • GSMVoiceCall.getVoiceCallStatus()
  • GSMVoiceCall.answerCall()
  • GSMVoiceCall.hangCall()
  • GSMVoiceCall.retrieveCallingNumber()
  • GPRS.attachGPRS()
  • GSMClient.connect()
  • GSMServer.ready()
  • GSMModem.begin()
  • GSMModem.getIMEI()

The hardware needed to use these functions includes

  • Arduino Uno
  • Arduino GSM Shield
  • Active SIM card
  • 1 x Reed switch

You can find the code download for this chapter at on the Download Code tab. The code is in the Chapter 17 folder and the filename is Chapter17.ino.

Introducing GSM

One of the many things that defines the human race is our capacity to communicate. Throughout our inventions, we have developed ways to express ourselves, and to talk to more and more people, further and further away. Try to imagine life without a mobile phone, or any sort of telephone. How do you tell someone something? There are still options available to you; you could write a letter (a real letter, not an e-mail, one with pen and paper). It would take a day or two to arrive, and the recipient would read it when he arrived home (or at the office). You could also leave the house to see the person, either by going to her house, business, or a common meeting place (the town ...

Get Arduino Sketches: Tools and Techniques for Programming Wizardry now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.