I've got a test server with an X100P card that's having trouble with DTMF detection in an IVR and occasionally generating outbound tones the phone company misses. It's also occasionally not recognizing incoming fax calls and transfering them per my dial plan. I also have occasional echo issues; internal caller on a SIP phone hears echo of self calling out via X100P FXO; called doesn't hear any echos. Is seems to me (and to the digium support guy I've contacted) that I need to adjust the tx and rx gains. The direction I've received for doing so has been to "just fiddle with them till they sound better" and I've done so without much success. I've read the wiki page about using ztmonitor and adjusting till internal callers talking generates 50% spikes on both Rx and Tx plots but doing so produces even more echo. What am I missing? Am I using ztmonitor correctly? Is there a more step-by-step HOWTO for adjusting the gains? I feel I may need a bit of hand-holding here. ;) Paul PS: I don't have X running or a VGA frame buffer. I do not have an APIC in this machine but will be swapping it out with another that does over this weekend in case the problems are interrupt related. -- Paul A. Dugas Dugas Enterprises, LLC email: paul@dugasenterprises.com 1711 Indian Ridge Drive phone: 404.932.1355 fax: 770.516-4841 Woodstock, GA 30189 USA [ onsite at the Georgia DOT's West Annex, 404.463.2860 x158 ]
maybe the relaxdtmf settings? ----- Original Message ----- From: "Paul Dugas" <Paul@DugasEnterprises.com> To: "Asterisk Mailing List" <asterisk-users@lists.digium.com> Sent: Friday, November 05, 2004 1:41 PM Subject: [Asterisk-Users] Adjusting txgain/rxgain I've got a test server with an X100P card that's having trouble with DTMF detection in an IVR and occasionally generating outbound tones the phone company misses. It's also occasionally not recognizing incoming fax calls and transfering them per my dial plan. I also have occasional echo issues; internal caller on a SIP phone hears echo of self calling out via X100P FXO; called doesn't hear any echos. Is seems to me (and to the digium support guy I've contacted) that I need to adjust the tx and rx gains. The direction I've received for doing so has been to "just fiddle with them till they sound better" and I've done so without much success. I've read the wiki page about using ztmonitor and adjusting till internal callers talking generates 50% spikes on both Rx and Tx plots but doing so produces even more echo. What am I missing? Am I using ztmonitor correctly? Is there a more step-by-step HOWTO for adjusting the gains? I feel I may need a bit of hand-holding here. ;) Paul PS: I don't have X running or a VGA frame buffer. I do not have an APIC in this machine but will be swapping it out with another that does over this weekend in case the problems are interrupt related. -- Paul A. Dugas Dugas Enterprises, LLC email: paul@dugasenterprises.com 1711 Indian Ridge Drive phone: 404.932.1355 fax: 770.516-4841 Woodstock, GA 30189 USA [ onsite at the Georgia DOT's West Annex, 404.463.2860 x158 ] _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
I went through something similar recently though involving having a channel
bank between myself and the world. The techniques used there should be
applicable to simpler hardware.
To do this in a quantitative fashion you need a few different tools:
- A recent patch to ztmonitor (or current CVS head) that adds an option to
display a numerical representation, as well as the bar graph. See:
http://bugs.digium.com/bug_view_page.php?bug_id=0002783
- A phone number for a 'type 102 milliwatt test line' at _your_ serving
central office. Try calling the repair number for your telco - by assignment
they're usually found in xxx-958-nnnn or xxx-959-nnnn ranges in North
America. I don't recommend using a distant test line as there may be unknown
influencing factors.
- And optionally, another patch to chan_zap.c that allows the gains of a
channel to be twiddled on the fly without reloading. See:
http://bugs.digium.com/bug_view_page.php?bug_id=0002784
The steps I followed to set the rxgain were:
1. Edit /etc/asterisk/zapata.conf and ensure Tx and Rx gains are 0.0 across
the board. I also recommend disabling the echo canceller and training during
the tests.
2. Access the Channel Bank console and ensure hardware gains are 0.0 (or as
close as possible) across the board - for simplicity I stick to adjusting
within Asterisk.
3. Start 'ztmonitor' on the target trunk in 'quantitative'
mode.
4. Dial the CO Milliwatt test line from inside Asterisk via the target
trunk. Note the Rx level - it should be near 14844
5. If level is < optimal make the the rxgain for the channel more +ve. If
>
than optimal, more -ve.
note - restart will be required to apply gains if not using cli
patch.
6. Once optimal rxgain has been determined, set it in zapata.conf and
restart asterisk.
Now, to set the txgain you need to have at least two lines on the asterisk
server so you can loop a call through the serving central office and back to
your own milliwatt source - to be able to listen to the effect you have on
your own outbound audio.
7. Modify the dialplan to have incoming calls on the target trunk go to a
context that goes something like:
exten => .....,1,Answer()
exten => .....,2,Milliwatt()
8. This time start 'ztmonitor' but refer to the second trunk, not the
trunk
that terminates on Milliwatt().
9. Dial the target trunk from inside Aaterisk via the second trunk. Note
the Rx level - it should be near 14844
10. If level is < optimal make the the txgain for the target trunk more +ve.
If > than optimal, more -ve.
11. Once optimal txgain has been determined, set it in zapata.conf and
restart asterisk.
Esentially, in the first step we're concerned with compensating for the
line/interface loss by twiddling the Zap rxgain, thus:
| CB | | Zap |
| | | chan1 |
|-------| |-------|
Reference >-| TxTLP |>-Rx-->|Rxgain |
Signal >-(loss)-/ | | | | <-> Internal data stream
| RxTLP |<-Tx--<|Txgain |
| | | |
In the second step we're ensuring the interface has symmetric loss by
following the path:
| CB | | Zap |
| | | chan1 |
|-------| |-------|
| TxTLP |>-Rx-->|Rxgain |
-----<-(loss)-\ | | | | <-> Internal data stream
/ <-| RxTLP |<-Tx--<|Txgain |
| | | | |
Central
Office
| | | | chan2 |
| |-------| |-------|
\ >-| TxTLP |>-Rx-->|Rxgain |
->----(loss)--/ | | | | <-> Internal data stream
compensated by | RxTLP |<-Tx--<|Txgain |
chan2 rxgain | | | |
We trust that once the call is inside or beyond the serving CO then it's all
inside a digital domain and there is no loss. If you should end up on a call
where the far end analog circuit has signficant loss then at least your
amplitude will be comparable to everone elses.
Hope that helps.
Kris Boutilier
Information Systems Coordinator
Sunshine Coast Regional District
> -----Original Message-----
> From: Paul Dugas [mailto:Paul@DugasEnterprises.com]
> Sent: November 5, 2004 10:41 AM
> To: Asterisk Mailing List
> Subject: [Asterisk-Users] Adjusting txgain/rxgain
>
{clip}>
> Is seems to me (and to the digium support guy I've contacted)
> that I need to adjust the tx and rx gains. The direction I've received
> for doing so has been to "just fiddle with them till they sound
better"
> and I've done so without much success. I've read the wiki page
about
using > ztmonitor and adjusting till internal callers talking generates 50%
> spikes on both Rx and Tx plots but doing so produces even more echo.
>
> What am I missing? Am I using ztmonitor correctly? Is there a more
> step-by-step HOWTO for adjusting the gains? I feel I may
> need a bit of hand-holding here. ;)
>
> Paul
>
{clip}
Likely all of your calls are experiencing the talker echo, but the sip caller is the only one who detects it as a "bad thing" because the reflection is being delayed until it's detectable by the codecs and transports involved. For the users who don't have transport delays the echo simply manifests itself as louder 'sidetone' - See: http://www.voip-info.org/wiki-Echo+and+Sidetone You can test for this by chaging SIP codecs to something that introduces less or more delay (eg. ulaw) and seeing if the echo is more pronouced. The soloution is either to get rid of the source of the reflections as much as possible - usually by 'balancing the hybrid' on your end to start with, or by tweaking the zaptel echo canceller parameters in zapata.conf (or, if you're feeling adventurous, zaptel/mec2_const.h) to get it to converge properly on the reflections your encountering. I have managed to get it go cancel fine on about 90% of my calls, but there are some which simply defy cancellation. In each of these cases it's 100% repeatable and seems to be something to do with the remote parties line or specific telephone characteristics. Hope that helps. Kris Boutilier Information Systems Coordinator Sunshine Coast Regional District> -----Original Message----- > From: Paul Dugas [mailto:Paul@DugasEnterprises.com] > Sent: November 5, 2004 10:41 AM > To: Asterisk Mailing List > Subject: [Asterisk-Users] Adjusting txgain/rxgain{clip}>I also have occasional echo issues; internal caller on a SIP phone hearsecho of self> calling out via X100P FXO; called doesn't hear any echos. >{clip}
> -----Original Message----- > From: Florian Overkamp [mailto:florian@obsimref.com] > Sent: November 5, 2004 12:54 PM > To: Asterisk Users Mailing List - Non-Commercial Discussion > Subject: RE: [Asterisk-Users] Adjusting txgain/rxgain > > > Hi, > > On Fri, 2004-11-05 at 21:39, Kris Boutilier wrote: > > The soloution is either to get rid of the source of the reflections asmuch> > as possible - usually by 'balancing the hybrid' on your end to startwith,> > Okay, now I am curious. What do you consider 'balancing the hybrid' ? > Usually this means taking out the soldering iron and > oscilloscope, or do you feel there are simpler ways ? >I don't know any practical, telco permitted, general purpose way of impedance matching things if there isn't already a facility, hence the quotes. :-) There may be programmatic solutions open to Asterisk with some hardware (see http://bugs.digium.com/bug_view_page.php?bug_id=0002481). Alternatly it may be possible to purchase and install something like http://www.wilcominc.com/aic411.htm . If anyone has any good ideas, please voice them!