Searching \ for 'tones via phone line' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: techref.massmind.org/techref/index.htm?key=tones+via+phone
Search entire site for: 'tones via phone line'.

Truncated match.
PICList Thread
'tones via phone line'
1998\01\07@203715 by Pedro Drummond

flavicon
face
Hello, friends.

I need some help.

In this project I am involved with, I have to send certain numbers through
the phone line. Since it is just a few numbers each time, I decided not to
use a modem chip, and just code my digits in 3 frequencies (440 Hz, 1400 Hz,
2300 Hz) right out of the processor.

Basically, what I do to send the code "32" is send 3 pulses (100 ms each) of
1400 Hz, one pulse of 2300 Hz (same duration) as a separator, and then 2
more pulses of 1400 Hz. Pulses are separated by a 100ms silence. Roughly,
that's what I am doing. Could not be simpler.

Concerning the hardware, I have a strong clear signal going out and a
beautiful square wave at the receiver's opamp output.

I am decoding these frequencies by measuring the pulse width. If the result
is the same for, say, 5 consecutive measurements, then the corresponding
frequency is validated.

Well, it works great... in some phone lines. And not so great in others,
specially if both phones are separated by a greater distance. I don't know
why, but the decoder tends to miss some pulses in this situation.

Why this is happening ? Someone told me that it would be better to fill the
100 ms silences with some frequency, just to keep feeding signal to my
receiver's amplifier.
I don't think it makes much sense, though...

Any help will be much appreciated.


Pedro.

1998\01\07@215530 by Herbert Graf

picon face
> -----Original Message-----
> From: pic microcontroller discussion list
> [spam_OUTPICLISTTakeThisOuTspamMITVMA.MIT.EDU]On Behalf Of Pedro Drummond
> Sent: Wednesday, January 07, 1998 19:45
> To: .....PICLISTKILLspamspam@spam@MITVMA.MIT.EDU
> Subject: tones via phone line
>
>
> Hello, friends.
>
> I need some help.
>
> In this project I am involved with, I have to send certain numbers through
> the phone line. Since it is just a few numbers each time, I decided not to
> use a modem chip, and just code my digits in 3 frequencies (440 Hz, 1400
Hz,
> 2300 Hz) right out of the processor.
>
> Basically, what I do to send the code "32" is send 3 pulses (100 ms each)
of
> 1400 Hz, one pulse of 2300 Hz (same duration) as a separator, and then 2
> more pulses of 1400 Hz. Pulses are separated by a 100ms silence. Roughly,
> that's what I am doing. Could not be simpler.
>
> Concerning the hardware, I have a strong clear signal going out and a
> beautiful square wave at the receiver's opamp output.
>
> I am decoding these frequencies by measuring the pulse width. If the
result
> is the same for, say, 5 consecutive measurements, then the corresponding
> frequency is validated.
>
> Well, it works great... in some phone lines. And not so great in others,
> specially if both phones are separated by a greater distance. I don't know
> why, but the decoder tends to miss some pulses in this situation.
>
> Why this is happening ? Someone told me that it would be better to fill
the
> 100 ms silences with some frequency, just to keep feeding signal to my
> receiver's amplifier.
> I don't think it makes much sense, though...

       Just wondering, why aren't you using DTMF? It is easy, slightly immune t
o
noise, and there are quite a few encoding and decondings chips out there,
true you already have the
code for generating and detecting your signals, but by using DTMF you would
be compatible with alot of what is out there now. Just a thought. As for
your frequencies, 2300hz mught be your
problem, it is kinda high, and although almost every phone line out there
will pass it, I am concerned that some lines might attenuate (sp?) it a
little, which might be throwing off your
amp. Just a though, from a person who knows little about analog electronics,
but who does know something of modem communications. If you want, and have
the time, change to lower freqeuncies, perhaps 600 and 1200hz? That should
give enough seperation and although your maximum baud rate would be lower,
you are sticking with a 100 interfreq delay so it shouldn't really have much
of an effect. Just a thought. TTYL and good luck.

1998\01\07@230112 by Andrew Mayo

flavicon
face
Yes, you should transmit a continuous signal. At the receiving end you
will need an amplifier with AGC and a limiter in order to recover
jitter-free signals. The continuous signal gives the AGC something to
work on. But you should consider a DTMF tone decoder chip, and
transmitting sine waves with DTMF, I would think.

> ----------
> From:         Herbert Graf[SMTP:hgrafspamKILLspamGEOCITIES.COM]
> Reply To:     pic microcontroller discussion list
> Sent:         Thursday, January 08, 1998 3:46 PM
> To:   .....PICLISTKILLspamspam.....MITVMA.MIT.EDU
> Subject:      Re: tones via phone line
>
> > {Original Message removed}

1998\01\07@231925 by Pedro Drummond

flavicon
face
Yes, I have used DTMF on other projects, but I had to keep costs REAL low,
on this one; hence the option for single tones, generated by the processor
itself. I know there is some code around here to generate DTMF, but they are
quite bulky and I also needed the memory space.

Anyway, the hardware is done now. And it really works fine when you see the
resulting signal on a scope. That's why I am so puzzled with this strange
behavior...

Thanks for your help !






At 17:00 08/01/98 +1300, you wrote:
>Yes, you should transmit a continuous signal. At the receiving end you
>will need an amplifier with AGC and a limiter in order to recover
>jitter-free signals. The continuous signal gives the AGC something to
>work on. But you should consider a DTMF tone decoder chip, and
>transmitting sine waves with DTMF, I would think.

1998\01\07@234235 by Ron Fial

flavicon
face
Square waves are taboo on the phone lines.  The bandwidth is only about 300
to 3000 Hz, and your square waves are making lots of harmonics than can be
confused with a higher transmit frequency.  In addition, the higher
harmonics, sampled at 8 kilohertz will alias down to the 300-3000 Hertz
range and cause additional distortion of the signal you want to detect.
Create sine waves, or low pass filter your square wave, and you will
probably eliminate most of the problems you are having with various phone
lines.

At 09:46 PM 1/7/98 -0500, you wrote:
{Quote hidden}

Regards,
 Ron Fial

1998\01\08@002607 by Pedro Drummond

flavicon
face
True, I am sending square waves. But at the receiver I have an opamp-based
filter/amplifier, so I got kind of confident about the square wave problem.

One extra information: it seems that on the great majority of times the
decoder misses the 2300 Hz separator tone...

Thanks again.


Pedro.






At 20:41 07/01/98 -0800, you wrote:
>Square waves are taboo on the phone lines.  The bandwidth is only about 300
>to 3000 Hz, and your square waves are making lots of harmonics than can be
>confused with a higher transmit frequency.  In addition, the higher
>harmonics, sampled at 8 kilohertz will alias down to the 300-3000 Hertz
>range and cause additional distortion of the signal you want to detect.
>Create sine waves, or low pass filter your square wave, and you will
>probably eliminate most of the problems you are having with various phone
>lines.

1998\01\08@003243 by Andrew Mayo

flavicon
face
Remember that echo is not unknown on phone lines. This won't help you,
either. Also various equalisation is going to play havoc with your
square waves.

{Quote hidden}

1998\01\08@035512 by Leon Heller

flavicon
picon face
In message <@spam@199801080045.AAA82450KILLspamspamout4.ibm.net>, Pedro Drummond
<KILLspampdrummondKILLspamspamIBM.NET> writes
{Quote hidden}

Many years ago, I used a very simple technique (it wasn't original) for
a cassette I/F for a small 8088 SBC I designed. I simply output a single
cycle of 1200 Hz for a '1' and 2400 Hz for a '0' (or was it the other
way round?). It worked very well, was very reliable, and I didn't need
any additional hardware. With the volume of the recorder turned up on
replay, the input limited, and I got something like a square wave coming
back in.

This technique will probably be more reliable than the one you are
using. As someone else has suggested, a low-pass filter would be a good
idea. I'd also use some form of error checking, a simple checksum might
suffice.

Something else worth considering is a simple DAC using 3 output pins,
and a few Rs.

Leon
--
Leon Heller: RemoveMEleonTakeThisOuTspamlfheller.demon.co.uk http://www.lfheller.demon.co.uk
Amateur Radio Callsign G1HSM    Tel: +44 (0) 118 947 1424
See http://www.lfheller.demon.co.uk/dds.htm for details of my AD9850
DDS system - schematic and software.

1998\01\08@115145 by Mike Keitz

picon face
On Thu, 8 Jan 1998 04:18:22 GMT Pedro Drummond <spamBeGonepdrummondspamBeGonespamIBM.NET>
writes:
>Yes, I have used DTMF on other projects, but I had to keep costs REAL
>low,
>on this one; hence the option for single tones, generated by the
>processor
>itself. I know there is some code around here to generate DTMF, but
>they are
>quite bulky and I also needed the memory space.

Consider using 202 modem tones.  The Motorola caller-ID receiver chip
works very well and is not expensive (under $2 IIRC).  With the addition
of only software, you could add a caller-ID function to the circuit as
well.  As for sending, it's simpler than DTMF since only one tone at a
time is to be sent.  Try and condition the tone so it is close to a sine
wave before applying it to the phone line.  And use a checksum or CRC to
ensure the data is correct.  At up to 1200 baud, the 202 type modem could
repeat the data many times during a short call.

1998\01\18@171418 by Marc Heuler

flavicon
face
Hi Pedro (Pedro Drummond), in <TakeThisOuT199801080045.AAA82450EraseMEspamspam_OUTout4.ibm.net> on Jan 8 you wrote:

{Quote hidden}

First off, you might get by cheap and reliable by using a DTMF sender /
receiver chip.  Those cost only a few bucks and are targetted on reliable
low bandwidth data communication via phone lines.

If you really don't want to use one of these, and stay with your current
setup...  I think your problem is timing.

A noisy phone line will cause you to count lots of fake pulses.  Your setup
requires 5 valid measurements continously, which might fail on such a line
(if your frequency is low).

You should add a low pass filter:  sample the port pin several times and
count the 1 and 0 bits.  If there are more 1 bits, consider this like
reading a 1.  If there are more 0's, you've read a 0.  A short noise spike
won't hurt you anymore then.

There are further options to improve your receiver. If you still have
problems, you can send email and I'll tell you some more.  Those require
more programming effort, though.

More... (looser matching)
- Last day of these posts
- In 1998 , 1999 only
- Today
- New search...