Dialer detecting end user hookup


Closed Thread
Results 1 to 7 of 7
  1. #1
    Join Date
    Sep 2006
    Posts
    747

    Default Dialer detecting end user hookup

    Hello,

    I am using a pic controller for a dialer project. My goal is to dial
    a number, when the receiving end picks up, then send some dtmf tone
    for a few minutes.
    Sounds simple, but I do not know how to tell my controller that the
    receiving end has picked up or not. As of now, I just let the dialer compose the number, pause for 10 seconds (during this time it is ringing on the other end) and send a signal dial tone after that.
    I would like it to be more 'intelligent' by knowing when the receiver has picked up so I can
    send the dial tone (message) only at that instant
    thanks

    K

  2. #2
    Join Date
    Sep 2004
    Location
    Mentor, Ohio
    Posts
    352


    Did you find this post helpful? Yes | No

    Smile

    Hi Lerameur,

    In the alarm business our dialers call a receiver that gives a series or handshake tones. For example, the first tone might be 1800hz for 1 sec, if no reply from the dialer within 2 secs, then a 1400hz tone for 1 sec, wait for a response, if none then another tone is sent consisting of 1/2 second of 1400 then 1/2 second of 1800, wait for a response, if none then one or two more speciality handshake tones are sent before the receiver gives up and hangs up. Each different handshake tone tells the receiver what type of data format the dialer is using to send the information. Newer receivers use DSP processors and algorithims to determine the data format based on the number of digits, interdigit spacing, and the frequency of the data. One type of receiver recognizes the caller ID of the incoming call and issues only one type of handshake/kissoff tone that it knows that specific dialer needs.

    If your dialer is calling you or someone specific, why not spice up your project and use a voice chip like Emic, Speakjet, or one of the ISD chips to deliver short message that instructs the person receiving the call to press 1 or * or # when they hear the message. This would let your dialer know that it reached someone.

    At http://www.clare.com/Products/callprogress.htm They have what are called "Call Progress chips". Teltone used to make them but I didn't see anything about them on their site. They analize the progress of the call for you and interface to uC's.

    If you need anymore information on the alarm dialers let me know. I have written courses on them for the alarm industry in the past.

    HTH,

    BobK
    Last edited by BobK; - 2nd September 2008 at 22:37.

  3. #3
    Join Date
    Sep 2006
    Posts
    747


    Did you find this post helpful? Yes | No

    Default

    Hi,
    I am not sure on how to do a handshake. I am not in control of the receiving end. there are only two options, either the person picks up the phone or not.
    It is not like me programing a RS232 where I am in control of both ends. I am not sure I understand the handshaking thing.
    This is the code I use for dialing, I would just like to add the receiving off hook, programing bit so I have more control over the dialing process.
    (If that works then I will probably use the ISD4005 voice chip.. but I am not there yet.)

    Dial1760: 'cel
    lcdout $FE,1, "dialing1760 ",dec counter
    Pause 500
    PortA.1 = 1 'Activate relay
    pause 3000
    DTMFOUT PortA.0, 500, 100, [5,5,4,4,9,5,4,3,6,2] 'dialing
    'Set the OnTime to 500ms and OffTime to 100ms - for sure receiving
    pause 8000 'Pause 8 seconds 'wait for enduser to pick up
    DTMFOUT PortA.0, 6000,0, [5] 'signal
    pause 2000 'Pause 2 seconds
    PortA.1 = 0 'deActivate relay
    pause 5000 'Pause 5 seconds
    return

    K

  4. #4
    Join Date
    Jul 2003
    Posts
    2,405


    Did you find this post helpful? Yes | No

    Default

    Have a look at some of these examples. You might find something useful.
    http://www.melabs.com/resources/samples.htm#xtpbp
    Regards,

    -Bruce
    tech at rentron.com
    http://www.rentron.com

  5. #5
    Join Date
    Sep 2006
    Posts
    747


    Did you find this post helpful? Yes | No

    Default

    Bruce,

    interesting program, but I am still a bit confused. Seems to me that this program act like both the dialer and receiving end.
    This line in the program: IF (j > 60) OR (key = 12) Then stop_ringing
    seems to only stop ringing if the person dialing decide to stop the ringing or the counter finishes its loop.
    What about if the person at the other picks up the telephone, how would it know to stop ringing?
    thanks

    Ken

  6. #6
    Join Date
    Jul 2003
    Posts
    2,405


    Did you find this post helpful? Yes | No

    Default

    I have not looked at or used any of these code examples, but they do show how to detect
    off-hook conditions and a lot more. Just figured you could find something useful in there
    somewhere.
    Regards,

    -Bruce
    tech at rentron.com
    http://www.rentron.com

  7. #7
    Join Date
    Oct 2004
    Posts
    448


    Did you find this post helpful? Yes | No

    Default

    In the old days, the voltage polarity on the line used to flip when the called party lifted the phone; very easy to detect using an opto. Havent tested if this is still the case for a long time.

    Regards,

    Anand

Similar Threads

  1. Serial VB 2005 pic 16f877a problems
    By Snap in forum mel PIC BASIC Pro
    Replies: 28
    Last Post: - 8th July 2013, 00:52
  2. Timer + rc5
    By naga in forum mel PIC BASIC Pro
    Replies: 8
    Last Post: - 19th November 2009, 07:56
  3. RC5 decode on a 10F + Question
    By ultiblade in forum mel PIC BASIC Pro
    Replies: 8
    Last Post: - 11th September 2008, 08:20
  4. Replies: 11
    Last Post: - 12th July 2008, 02:36
  5. ELSEIF Block Would be Good.
    By T.Jackson in forum PBP Wish List
    Replies: 30
    Last Post: - 14th May 2007, 03:36

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