freeswitch, openzap, dahdi issues...
In my quest to replace an unstable and deadlock prone asterisk solution I was able to get calls working over my PRI last night using freeswitch, native openzap, and dahdi 2.2.1. However, in order to make it work, I had to disable all echo cancellation in dahdi. If any of the 4 echo cancellation algo's were specified in /etc/dahdi/system.conf then there was no audio at all on the calls. Signaling worked, and calls could be made/received, but no audio in either direction. As soon as I disabled EC, audio worked (although, there was a good amount of echo). Also, I had intermittent (like 1 out of 2 or 1 out of 3) calls with very poor voice quality (robotic sounding, distortions, dropping in and out). This experience leads me to believe that possibly openzap isn't ready for prime time? Would I have been better served to include libpri in the technology stack? At this stage my "solution" looks like leaving asterisk where it is, and using it as a media gateway, passing calls off to freeswitch via SIP or IAX and using freeswitch as the app/registration/feature server. I don't know if that will necessarily be better, but I've had good luck with asterisk and call quality tuning (the PRI here has always had pretty bad echo, but I've been able to get asterisk EC working quite well on it), and it seems like asterisk has most of its issues with stability in transferring/parking/hold/voicemail/music on hold... I'm running a current FS SVN from 3 days ago, dahdi 2.2.1, and openzap using a digium te110p. The PRI is an NI2 t1 if that matters... Any ideas or recommendations of things to try would be greatly appreciated. I'd really like to avoid the dual server situation if at all possible. Thanks, -Tom
Tom Christensen wrote:
If any of the 4 echo cancellation algo's were specified in /etc/dahdi/system.conf then there was no audio at all on the calls.
I'm not glad this happened to you, but I'm glad to hear about the problem. I have the same problem, and I thought it was something specific to my setup. I even compiled OSLEC separately with the same results. The call completes, but there is absolutely no audio. It is completely silent. I suppose that is a pretty effective echo canceller. :-) I did not notice any errors in the console. If EC is removed, the audio works.
Also, I had intermittent (like 1 out of 2 or 1 out of 3) calls with very poor voice quality (robotic sounding, distortions, dropping in and out).
I have not experienced that. There seems to be a brief audio dropout every couple of seconds during a call, like a couple of packets are being dropped every now and then, but I haven't dug into it, yet.
This experience leads me to believe that possibly openzap isn't ready for prime time? Would I have been better served to include libpri in the technology stack?
I'm sorry to report that I am using libpri, but that's interesting. I'm curious about the source of the problem and why EC would be affected. I don't see a connection.
I'm running a current FS SVN from 3 days ago, dahdi 2.2.1, and openzap using a digium te110p. The PRI is an NI2 t1 if that matters...
Exact same setup here. Hmm.
Any ideas or recommendations of things to try would be greatly appreciated. I'd really like to avoid the dual server situation if at all possible.
Sorry, I'm looking for a solution, myself. The echo over the T1 isn't all that bad here, but it would be nice to use EC. ---- Russell Mosemann
On Thu, Mar 18, 2010 at 8:48 PM, Russell Mosemann <Russell.Mosemann@cune.org
wrote:
Sorry, I'm looking for a solution, myself. The echo over the T1 isn't all that bad here, but it would be nice to use EC.
You can always get a Sangoma board with HWEC :-) -- Moises Silva Senior Software Engineer Sangoma Technologies Inc. | 50 McIntosh Drive, Suite 120, Markham ON L3R 9T3 Canada t. 1 905 474 1990 x 128 | e. moy@sangoma.com
Moises Silva <moises.silva@gmail.com> said:
On Thu, Mar 18, 2010 at 8:48 PM, Russell Mosemann
<Russell.Mosemann@cune.org
wrote:
Sorry, I'm looking for a solution, myself. The echo over the T1 isn't all that bad here, but it would be nice to use EC.
You can always get a Sangoma board with HWEC :-)
I'd love to, believe me. In the past, we had four Sangoma data T1 boards and load balanced our connection to the Internet over them. The hardware was solid, setup was pretty easy and I got quick answers from support. It was great. Unfortunately, there is absolutely no money for the current project. We had to scrounge a throwaway server and buy a cheap PRI T1 card off of Ebay. We happened to acquire an additional T1 license on our Siemens telephone switch as part of another project, and we bought a used T1 card for the telephone switch off of Ebay. We've only spent about $100 on something that could easily cost $10,000. We're hoping that after we get a proof of concept going, the right people will see the value and fund a better solution. We'll keep you mind. ;-) -- Russell Mosemann ________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
Look at it this way. The PRI signaling is a data channel, it's got nothing to do with echo cancelers. The echo can is for the audio legs. The OSLEC is a kernel module and dahdi is Digiums driver also a kernel module. OpenZAP only opens these devices and uses them as advertised. Keep in mind, When we added support for digium cards it was when there was still zaptel and every day they change things in their code which is mostly kernel space and they have absolutely no interest in having it work on FreeSWITCH, even though we are both open source applications they treat FreeSWITCH like a threat. You are trying to escape from asterisk but you are still using mostly their technology. So bottom line changing around which pri stack you use is not going to solve audio problems. All OpenZAP does with digium cards is open the device and read and write from it. If you are getting no audio the problem is happening in the kernel before OpenZAP gets to see anything. My suggestion is to look at /usr/local/freeswitch/conf/zt.conf there is a line echo_cancel_level => 64 try erasing or commenting it out with a leading ;
From my recollection when you use OSLEC, you have to disable the dahdi/zaptel echo canceler.
This is the only setting I can think of that allows OpenZAP to influence the dahdi kernel mod. BTW, you got that card for $100 because it really is worth that much, maybe less ;) Everyone who uses Sangoma cards with OpenZAP have no audio problems at all. On Fri, Mar 19, 2010 at 9:49 AM, <Russell.Mosemann@cune.org> wrote:
Moises Silva <moises.silva@gmail.com> said:
On Thu, Mar 18, 2010 at 8:48 PM, Russell Mosemann
<Russell.Mosemann@cune.org
wrote:
Sorry, I'm looking for a solution, myself. The echo over the T1 isn't
all
that bad here, but it would be nice to use EC.
You can always get a Sangoma board with HWEC :-)
I'd love to, believe me. In the past, we had four Sangoma data T1 boards and load balanced our connection to the Internet over them. The hardware was solid, setup was pretty easy and I got quick answers from support. It was great.
Unfortunately, there is absolutely no money for the current project. We had to scrounge a throwaway server and buy a cheap PRI T1 card off of Ebay. We happened to acquire an additional T1 license on our Siemens telephone switch as part of another project, and we bought a used T1 card for the telephone switch off of Ebay. We've only spent about $100 on something that could easily cost $10,000. We're hoping that after we get a proof of concept going, the right people will see the value and fund a better solution. We'll keep you mind. ;-)
-- Russell Mosemann
________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
Anthony Minessale <anthony.minessale@gmail.com> said:
All OpenZAP does with digium cards is open the device and read and write from it. If you are getting no audio the problem is happening in the kernel before OpenZAP gets to see anything.
That provides a starting point for checking things.
My suggestion is to look at /usr/local/freeswitch/conf/zt.conf there is a line echo_cancel_level => 64
try erasing or commenting it out with a leading ;
I did a quick test, and that didn't solve the problem. I'll have to look into it further.
From my recollection when you use OSLEC, you have to disable the dahdi/zaptel echo canceler.
That has changed in DAHDI. There is no default echo canceler. The specific echo canceler (if any) must be specified for each channel (or range of channels). OSLEC is referenced like any other echo canceler. For example, echocanceller=oslec,1-23
BTW, you got that card for $100 because it really is worth that much, maybe less ;)
No arguments there. This is merely a toy system, and audio quality is not a factor. We just want to demonstrate that this can be useful for us. Based on past experience with Sangoma products and support, it would be wonderful to have a card from them. -- Russell Mosemann ________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param. If you could update to latest trunk and test it, it should be a real test of my theory. If you still have the problem the next step would be to add some debugging code to the ozmod_zt read and write functions to see if it's sending data up to the app. Maybe there are some new ioctls or something they added for interop with OSLEC that we don't know about. On Fri, Mar 19, 2010 at 1:21 PM, <Russell.Mosemann@cune.org> wrote:
Anthony Minessale <anthony.minessale@gmail.com> said:
All OpenZAP does with digium cards is open the device and read and write from it. If you are getting no audio the problem is happening in the kernel before OpenZAP gets to see anything.
That provides a starting point for checking things.
My suggestion is to look at /usr/local/freeswitch/conf/zt.conf there is a line echo_cancel_level => 64
try erasing or commenting it out with a leading ;
I did a quick test, and that didn't solve the problem. I'll have to look into it further.
From my recollection when you use OSLEC, you have to disable the dahdi/zaptel echo canceler.
That has changed in DAHDI. There is no default echo canceler. The specific echo canceler (if any) must be specified for each channel (or range of channels). OSLEC is referenced like any other echo canceler. For example,
echocanceller=oslec,1-23
BTW, you got that card for $100 because it really is worth that much, maybe less ;)
No arguments there. This is merely a toy system, and audio quality is not a factor. We just want to demonstrate that this can be useful for us. Based on past experience with Sangoma products and support, it would be wonderful to have a card from them.
-- Russell Mosemann
________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
Anthony Minessale wrote:
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param.
I think that worked. On the softphone side I can hear the caller, now, but they can't hear me. I'm not at my regular computer, and I can't tell if the microphone isn't working, or if it is something else. As soon as get back, I will give it a try. Thanks! -- Russell Mosemann
Anthony Minessale <anthony.minessale@gmail.com> said:
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param.
I just tested it, and it works perfectly. Thanks! -- Russell Mosemann ________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
great, Now all the time I wasted on asterisk has finally paid off, I knew I remembered something from back then! On Mon, Mar 22, 2010 at 8:07 AM, <Russell.Mosemann@cune.org> wrote:
Anthony Minessale <anthony.minessale@gmail.com> said:
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param.
I just tested it, and it works perfectly. Thanks!
-- Russell Mosemann
________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:+19193869900
hello. You could write the steps used to finally solve the problem? 2010/3/23 <Russell.Mosemann@cune.org>
Anthony Minessale <anthony.minessale@gmail.com> said:
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param.
I just tested it, and it works perfectly. Thanks!
-- Russell Mosemann
________________________________________________________ Concordia University, Nebraska See http://www.cune.edu/ for the latest news and events!
_______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
José A Zamora asked:
You could write the steps used to finally solve the problem?
Sure. :-) 1. Comment with ";" or remove "echo_cancel_level => 64" in zt.conf. 2. make current The problem was no audio in either direction when echo cancelling was enabled in DAHDI (version 2.2.1). The problem occurred, because open_zap was setting the echo cancel level, even when echo_cancel_level was commented in zt.conf. Anthony's change turns off echo_cancel_level, if not specified in zt.conf. That allows echo cancelling in DAHDI to work. -- Russell Mosemann
My case is with a Sangoma A200 card without HWEC and 4 FXO ports. I'm using FreeSWITCH trunk 17119; when echo cancel is active in DAHDI 2.2.1 using mg2 or oslec and zt.conf looks like this: [defaults] codec_ms => 20 wink_ms => 150 flash_ms => 750 echo_cancel_level => 0 rxgain => 0.0 txgain => 0.0 the call [http://pastebin.freeswitch.org/12559] completes but caller hears echo, if I modify echo_cancel_level to something bigger than 0 {32..64..} the call [http://pastebin.freeswitch.org/12560] can't complete because openzap don't detect dialtone. Any clue? On Fri, Mar 19, 2010 at 13:00, Anthony Minessale <anthony.minessale@gmail.com> wrote:
I had a look at the code and I discovered that the zt mod defaults to a echo can level of 64 internally. I did a patch to the code that should allow it to be explicitly off when you omit that param.
If you could update to latest trunk and test it, it should be a real test of my theory.
If you still have the problem the next step would be to add some debugging code to the ozmod_zt read and write functions to see if it's sending data up to the app.
Maybe there are some new ioctls or something they added for interop with OSLEC that we don't know about.
On Fri, Mar 19, 2010 at 1:21 PM, <Russell.Mosemann@cune.org> wrote:
Anthony Minessale <anthony.minessale@gmail.com> said:
All OpenZAP does with digium cards is open the device and read and write from it. If you are getting no audio the problem is happening in the kernel before OpenZAP gets to see anything.
That provides a starting point for checking things.
My suggestion is to look at /usr/local/freeswitch/conf/zt.conf there is a line echo_cancel_level => 64
try erasing or commenting it out with a leading ;
I did a quick test, and that didn't solve the problem. I'll have to look into it further.
From my recollection when you use OSLEC, you have to disable the dahdi/zaptel echo canceler.
That has changed in DAHDI. There is no default echo canceler. The specific echo canceler (if any) must be specified for each channel (or range of channels). OSLEC is referenced like any other echo canceler. For example,
echocanceller=oslec,1-23
BTW, you got that card for $100 because it really is worth that much, maybe less ;)
No arguments there. This is merely a toy system, and audio quality is not a factor. We just want to demonstrate that this can be useful for us. Based on past experience with Sangoma products and support, it would be wonderful to have a card from them.
-- Russell Mosemann
-- Anthony Minessale II
tacvbo@tacvbo.net wrote:
My case is with a Sangoma A200 card without HWEC and 4 FXO ports. I'm using FreeSWITCH trunk 17119; when echo cancel is active in DAHDI 2.2.1 using mg2 or oslec and zt.conf looks like this:
I read your message more carefully. Shouldn't you be using the Sangoma driver with the Sangoma card instead of DAHDI? -- Russell Mosemann
You don't have to use Dahdi with any Sangoma card in conjunction with OpenZAP... its able to use the native interface. /b On Mar 27, 2010, at 3:01 PM, tacvbo@tacvbo.net wrote:
My case is with a Sangoma A200 card without HWEC and 4 FXO ports. I'm using FreeSWITCH trunk 17119; when echo cancel is active in DAHDI 2.2.1 using mg2 or oslec and zt.conf looks like this:
On Sat, Mar 27, 2010 at 14:30, Brian West <brian@freeswitch.org> wrote:
You don't have to use Dahdi with any Sangoma card in conjunction with OpenZAP... its able to use the native interface.
I know and I've tried that, I've forgot to mention: card do not have HWEC. The problem is if I use TDM API mode, there is echo as if I use DAHDI without SWEC. Thanks for your responses. -- Octavio H. Ruiz Cervera
Any thoughts regard this? The scenario is a Sangoma card without HWEC using TDM API or DAHDI without software EC but with very noticeable echo. Trying to use DAHDI + OSLEC or MG2 with OpenZap there is no sound. On Sun, Mar 28, 2010 at 05:54, tacvbo@tacvbo.net <tacvbo@tacvbo.net> wrote:
On Sat, Mar 27, 2010 at 14:30, Brian West <brian@freeswitch.org> wrote:
You don't have to use Dahdi with any Sangoma card in conjunction with OpenZAP... its able to use the native interface.
I know and I've tried that, I've forgot to mention: card do not have HWEC. The problem is if I use TDM API mode, there is echo as if I use DAHDI without SWEC.
-- Octavio H. Ruiz Cervera
-- Octavio H. Ruiz Cervera
participants (8)
-
Anthony Minessale
-
Brian West
-
José A Zamora
-
Moises Silva
-
Russell Mosemann
-
Russell.Mosemann@cune.org
-
tacvbo@tacvbo.net
-
Tom Christensen