[asterisk-users] 1.6.1 + TDM840 FSK MWI problem
Doug Bailey
dbailey at digium.com
Thu Sep 10 17:06:01 CDT 2009
----- "Doug Bailey" <dbailey at digium.com> wrote:
> ----- "Doug Bailey" <dbailey at digium.com> wrote:
>
> > ----- "Barry Miller" <asterisk-users at notanet.net> wrote:
> >
> > > On Fri, Sep 04, 2009 at 04:10:43PM -0500, Doug Bailey wrote:
> > > > > > ----- "Barry Miller" <asterisk-users at notanet.net> wrote:
> > > > > >
> > > > > > > Hi,
> > > > > > >
> > > > > > > Using 1.4.26.1 & DAHDI 2.2.0.2, FSK VMWI devices off a
> > TDM840
> > > > > work
> > > > > > > fine.
> > > > > > >
> > > > > > > With 1.6.1.[45] & same DAHDI, instead of the FSK spill I
> > get
> > > a
> > > > > line
> > > > > > > polarity reversal. Stutter dialtone is generated as
> > > expected.
> > > > > > >
> > > > > > > Has anyone else seen this? Is there anything special I
> > need
> > > to
> > > > > do
> > > > > > > for
> > > > > > > 1.6.1 to make FSK MWI work?
> > >
> > > [snip]
> > >
> > > >
> > > > The only thing I can think of that would be preventing the
> output
> > > would be
> > > > problems in the interface chip with the On-Hook transfer mode.
> > > >
> > > > If you run a dahdi_monitor on the channel that should be
> sending
> > the
> > > FSK
> > > > spill and look at the results in a program like audacity, you
> can
> > > see if
> > > > the MWI FSK spill is actually reaching the interface SLIC IC.
> > > >
> > > > Something like "dahdi_monitor 1 -t spilloutput.raw" (Monitors
> the
> > > output
> > > > going to dahdi channel 1.)
> > >
> > > Hmm. With both 1.4 & 1.6, without touching
> /etc/[asterisk|dahdi],
> > > I used a butt-set to go off-hook, then back on. I got:
> > >
> > > 1.4.26.1: dahdi_monitor captured stutter dialtone, 4.5 seconds
> of
> > > silence, then the FSK spill. And that's what I heard.
> > >
> > > 1.6.1.6: dahdi_monitor captured stutter dialtone, 1.5 seconds
> of
> > > silence, then the FSK spill. Sounds good with audacity. But
> > > all I heard through the butt-in was stutter dialtone. No FSK
> > > spill at all.
> > >
> > > Here's hoping this tells you more than it does me :)
> > >
> > Actually it does tell me a lot.
> >
> > The problem appears in how the interface chip is being programmed.
>
> > For some reason, the interface chip is not being set to on-hook
> > transfer mode which would allow for the mwi spill to go out on the
> > actual fxs port lines.
> >
> > I am looking to see where the problem lies. (It is either in
> > chan_dahdi
> > or in the driver.) I hope to have more information later.
> >
>
> The problem lies in a race condition between chan_dahdi making an
> ioctl call to
> set the VMWI state (performed in the do_monitor loop ) and a a
> subsequent call
> to set the channel in ONHOOK transfer mode (performed in
> mwi_send_init). This
> requires the driver to send successive commands to the SLIC interface
> chip
> linefeed register. If the command required for the VMWI mode is not
> completed
> by the time the ONHOOK transfer mode is requested, the ONHOOK transfer
> request
> is thrown away and the MWI spill does not get sent.
>
> I will be fixing this in the drivers trunk branch and hope to have it
> committed
> soon. I'm not sure when it will be released.
>
> Another option is to comment out the ioctl call for VMWI in the
> do_monitor loop
> (especially if you do not care about line reversal MWI.).
>
See https://issues.asterisk.org/view.php?id=15875 for more information
More information about the asterisk-users
mailing list