HELP ME, SMS controlled relay using PIC


Closed Thread
Results 1 to 15 of 15

Hybrid View

  1. #1
    Join Date
    Sep 2008
    Posts
    7


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by skimask View Post
    Did you even look at the links above? Looks to me like 'ready made'...



    Maybe you should start off by making a PIC do something simple like making an LED blink or something along those lines before trying to tackle sending/receiving serial port data....much less trying to talk to a cell phone. I mean... How far into PICs are you? How much stuff have you built? Have you answered any of the questions Ioannis asked two posts above? We don't know what you're dealing with...
    i don't really have idea on what PIC should i use in this project. i have used a PIC16F84a before but only for blinking and if statement for the program. i haven't done project dealing with strings and variables yet. so can u give some sample coding or tutorials to study with. thanks.

  2. #2
    skimask's Avatar
    skimask Guest


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by pazko1125 View Post
    i don't really have idea on what PIC should i use in this project.
    Totally up to you...

    i have used a PIC16F84a before but only for blinking and if statement for the program.
    It's a start...

    i haven't done project dealing with strings and variables yet.
    Maybe you should...

    so can u give some sample coding or tutorials to study with. thanks.


    Question is....Can you use the Search function near the top of this page? Or just maybe troll the forums for some pre-made code...

  3. #3
    Join Date
    Sep 2008
    Posts
    7


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by skimask View Post
    Totally up to you...


    It's a start...


    Maybe you should...




    Question is....Can you use the Search function near the top of this page? Or just maybe troll the forums for some pre-made code...
    yes, i've seen charudatt's code. is it also applicable to mobile phone like sony ericson t610 bec it uses a modem and i can't find a modem here. thanks

  4. #4
    Join Date
    Nov 2003
    Location
    Greece
    Posts
    4,133


    Did you find this post helpful? Yes | No

    Default

    My suggestion would be to find a phone with AT-command support like many Nokia's and other brands do. Erricson or Siemens of the old school I recall use only PDU format.

    Ioannis

  5. #5
    Join Date
    May 2008
    Location
    Italy
    Posts
    825


    Did you find this post helpful? Yes | No

    Default

    Since you said to have already tested a working system using hyperterminal, you should know the basic AT commands!

    First of all you will need a phone that is capable of text mode. You will easily check your phone
    if is capable of text mode, connecting it to your PC and with hyperterminal send the following AT command "AT+CMGF=1" if answer will be "OK" then you can have a chance to complete your project, if the answer you will obtain will be "ERROR" then your phone use only the PDU mode which need a lot of decoding before you can read the message received. So search a phone that has the text mode.

    Before to connect the phone to any PIC device you need to interface the RS232 signal to a TTL in/out this is easily solved using the MAXIM 232

    When your hardware is ready you should program your pic using the same AT commands you have used experimenting with hyperterminal as you said.

  6. #6
    Join Date
    Sep 2008
    Posts
    7


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by aratti View Post
    Since you said to have already tested a working system using hyperterminal, you should know the basic AT commands!

    First of all you will need a phone that is capable of text mode. You will easily check your phone
    if is capable of text mode, connecting it to your PC and with hyperterminal send the following AT command "AT+CMGF=1" if answer will be "OK" then you can have a chance to complete your project, if the answer you will obtain will be "ERROR" then your phone use only the PDU mode which need a lot of decoding before you can read the message received. So search a phone that has the text mode.

    Before to connect the phone to any PIC device you need to interface the RS232 signal to a TTL in/out this is easily solved using the MAXIM 232

    When your hardware is ready you should program your pic using the same AT commands you have used experimenting with hyperterminal as you said.
    thanks. yes it support text mode.
    if i send this command using PIC, how can i get the message? do i have to make a variable for it or is it already on the memory?

    SEROUT2 TXPIN, BAUD, ["AT+CMGR=1"]
    +CMGR: "REC READ","+31625044454",,"07/07/05,09:56:03+08" 'phones reply
    Test message 1

    can u give a circuit diagram for that. i have circuit diagram here from edaboard.com and i don't know if it will work.

    http://www.edaboard.com/ftopic328792.html

  7. #7
    Join Date
    May 2008
    Location
    Italy
    Posts
    825


    Did you find this post helpful? Yes | No

    Default

    yes you will need variables to store the modem answer!

    Remember to add 13 at the end of the at command SEROUT2 TXPIN, BAUD, ["AT+CMGR=1",13]

    schematic for you project is rather simple because you will use only one pin for output to drive your rele. Since the rele will work at 12 volts and it will require minimum 100 mA you will use a transitor to interface it. I suggest you to use one ULN2803 which is an array of 8 transistor ready for ttl interfacing so you can connect it directly to your pic. Connect all the array, perhaps later you will need an extra rele. Check the data sheet for the other connections.

    In writing the software you will need to set up your phone first of all.
    ReadTxt:
    SEROUT TXPIN, BAUD, ["AT+CMGF=1",13]
    SERIN RXPIN, BAUD,5000,ReadTxt, ["OK"],Data

    if Data=10 or Data=13 then JumpOut
    pause 5000
    goto ReadTxt

    JumpOut:
    ModemOn=1

    This routine will set your phone in text mode and will set the variable ModemOn to 1. This is very important because when you will switch of your system I will find this variable very useful.

    Second thing you will net is to set the memory place where to read the incoming messages

    SEROUT TXPIN, BAUD, ["AT+CPMS=MT",13]

    Pause 10000


    Now you are ready to check your phone for the presence of sms

    Loop:

    SEROUT TXPIN, BAUD, ["AT+CMGF=1",13]
    SERIN2 RXPIN, BAUD,5000,Loop, [wait("^SMGR:"),str Data\5
    if Data[1]=48 and Data[4]=48 then Loop

    SERIN2 RXPIN, BAUD,5000,NoSms, [wait("XYZ"),str Data\9

    do here your decoding and actions


    NoSms:'remove SMS

    SEROUT2 TXPIN, BAUD, ["AT+CMGD=1",13]
    Pause 1000
    goto Loop


    Hope it will help

    Alberto

Similar Threads

  1. SMS via pic
    By kenandere in forum GSM
    Replies: 15
    Last Post: - 10th March 2010, 10:00
  2. Pic to relay
    By ruijc in forum General
    Replies: 4
    Last Post: - 8th November 2007, 19:03
  3. Serial Relays
    By tazntex in forum General
    Replies: 3
    Last Post: - 17th May 2007, 17:42
  4. Replies: 22
    Last Post: - 9th April 2007, 15:25
  5. SMS decoding / encoding using PIC!
    By bitmaniac in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 19th March 2004, 07:03

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts