Summary:ASTERISK-00539: Onhook messaging (VMWI) doesn't work on TDM400P FXS modules
Reporter:zebble (zebble)Labels:
Date Opened:2003-11-17 23:17:21.000-0600Date Closed:2004-09-25 02:52:19
Versions:Frequency of
Environment:Attachments:( 0) 544_vmwi.patch
Description:The same setup works with a T100P+Zhone and a T100P+Adtran, but doesn't work with TDM40P (Ref F).  This also worked with the original TDM40P.
The mailbox= lines are correct, but still no VMWI.
I'm reposting this as I posted it in the wrong area.
Comments:By: rommer (rommer) 2003-11-19 18:02:37.000-0600

I just got the replacment TDM40 and I also no longer have working VMWI function. Had it before I changed the cards although I can honestly say its been a while since I noticed if it was working or not. Might have to stick the old card back in before I return it to digium if you thing it would be a valid test.

Stutter tone does working so I don't believe its a setup issue.

By: Brian West (bkw918) 2003-11-19 19:09:08.000-0600

this is already an issue on bug 000451

By: rommer (rommer) 2003-11-21 07:32:19.000-0600

I know its not much but I'd like to offer a $50 bounty to have this bug squashed.

By: zebble (zebble) 2003-11-21 09:04:27.000-0600

I'd be more than happy to try and fix this if someone wouldn't mind saving me some time and letting me know why it's not working, and roughly which code to look at.

By: cyb (cyb) 2003-11-21 14:16:54.000-0600

I have looked into this quickly and this is what I found out (I don't have the skills to "fix" the problem though - just observations).

1) Looks like chan_zap.c is proprely calling vmwi_generate... Turning the trace on shows "Made 4160 Message Waiting for 1" in the log at the appropriate times (as soon as a message gets created or deleted in the mailbox).

2) a FSK tone is generated for both VMWI_ON and VMWI_OFF (can be heard on the line and the tx dbmeter peaks at the appropriate time)

3) There are some weird and unusual combinations of events that will trigger VMWI to be turned on or off according to the mailbox state (e.g. Zap/1 calls Zap/2 and flash-hooks while rigning to dial *8 to grab the Zap/2 call, which creates a "loop". A couple of more flash-hooks and VMWI status gets updated on the Zap/1 phone a few seconds after hanging up... I did say it was weird and unusual but it works every time.).

For some reason, none of the phones (Nortel/Aastra and Sanyo in my case) plugged in seem to interpret the on-hook fsk tone proprely. This problem started sometime between mid-to-end-September and start-of-October (sorry, can't be much more specific). On-hook VMWI was was working fine with earlier CVS checkouts.

edited on: 11-21-03 14:11

By: rommer (rommer) 2003-11-21 17:13:28.000-0600


Excellent report!

I verified that your step 3 will cause the VMWI to turn on the phone. In fact you need to do that to turn the light off as well!

BTW - I'm using Uniden 5.8 cordless and Nortel Venture phones to test with. Both do the same thing...

Who's the resident VMWI expert?

By: Brian West (bkw918) 2003-11-23 19:14:33.000-0600

Fixed in CVS

By: woofie (woofie) 2003-11-23 19:15:56.000-0600

Just to add more info on this.  New to * but spent two nights trying different things to get this to work.  

Caller ID works, Caller ID Call waiting works,
ADSI works (Except I hear an annoying loud chirp from my ADSI phone from the CAS signal when I dial vmail, even after the vmail id and password prompts.
VMWI won't work no matter what I tried.
Even found the specification on the Web, code looks dead on..  
Added more debug messages.  
Message made of 4160 bytes sent out at 160 bytes at a time in the read/write loop.
The tones are getting sent out at the right time.
Tried mucking with the code increasing or decreasing the lenght of some of these, no effect.  Tried increasing RX TX gain some, nothing.
Almost like something is wrong in the signal (voltage, lengths, or delays between signals, (too much delay between the 160 bytes portions of the message?) I am guessing... I have no idea on this part.)

Signal seems by all indications to be sent to the phone, something is wrong and the phone ignores it.  Code looked dead on to spec I founds so, something else. I have no clue anymore...  Not sure if this helps or not...

By: zebble (zebble) 2003-11-24 10:45:41.000-0600

Something still isn't quite right.
VMWI works now, but it needs a "kick" to change state.
If someone calls in and leaves a voicemail, the VMWI doesn't turn on.
If I pickup the phone (quite a while after the message is left), I hear a stutter dialtone, and only when I put the phone back down does the VMWI turn on.
The same goes for turning the VMWI off.  If I check voicemail, delete all new messages, and hangup the phone, the VMWI stays on.  If I pickup the phone, I hear the stutter dialtone again, and only when I put the phone back down does the VMWI turn off.
Again, this all works great on my T100P+Channelbank setups.
So close...

By: rommer (rommer) 2003-11-24 10:57:14.000-0600

After 12 hours of testing I have to agree with Zebble. The VMWI does not get detected unless the Zap channel goes off hook then on hook. The signal is being sent when the voicemail is created but the phone (several vendors) ignores it for some reason.

One difference I see is that the VMWI LED does turn off if you delete the voicemail from another extension. UPDATE: the turning off of the LED does not always work. Its about 50/50... Of course going off hook/on hook always turns it off.

edited on: 11-24-03 16:43

By: zebble (zebble) 2003-12-02 18:42:04.000-0600

This is still an issue.  VMWI needs a kick to get going.

I'd be more than happy to take a look if someone can point me in the right direction.  It sure beats reinventing the wheel and having to pour over lines of unrelated code.

By: cyb (cyb) 2004-01-01 16:22:25.000-0600

Zebble is right - the problem is not completely resolved... VMWI gets turned on or off on its own sometimes but very often requires the line to go through a state change (off-hook/on-hook or ring) for the status to be registered by the CPE. Looks like the "unexpected" (on-hook, unrelated to a phone event) FSK for VMWI don't register consistenly...

By: Brian West (bkw918) 2004-01-11 20:17:34.000-0600

Can you guys get in #asterisk and find one of us so we can fix this before 0.7.0?

By: zebble (zebble) 2004-01-29 19:09:59.000-0600

Any progress on this?  Anything I can do to move this along?

By: cyb (cyb) 2004-02-11 22:31:30.000-0600

I seem to have stumble accross a *workaround* for this bug... Looks like sending the VMWI in SDMF format rather than the currently configured MDMF format causes the VMWI message to be more reliably interpreted by the CPE -- at least with my equipment.

Could anyone else confirm this?

In asterisk/channels/chan_zap.c , change the following line:
    last->cidlen = vmwi_generate(last->cidspill, res, 1, AST_LAW(last));
    last->cidlen = vmwi_generate(last->cidspill, res, 0, AST_LAW(last));

I have attached a .patch file that does the change described above.


edited on: 02-11-04 22:51

By: woofie (woofie) 2004-02-23 21:11:13.000-0600

Just to add a peculiar nuance to this VWMI issue.

Previous versions of asterisk and one downloaded yesterday  
Asterisk CVS-02/22/04-20:41:01, have a behavior with this and a PALM modem communications. I have been trying to track down lately

My config has one line of a TDM400P that is shared with a PALM cradle with modem in it and a phone. Do not know any more details on Modem.  

Zap channel also had a mailbox associated with it.

Upon fresh start of asterisk, monitor thread reset VMWI from -1 to 0 on the channel.  After that, PALM software tried to establish modem connection.  PALM immediately hung up line stating no dial tone detected. After debugging with rxgain, txgain, etc, tried removing the mailbox entry for channel. After that and restart of asterisk, monitor thread bypasses zap channel. Modem detected dial tone and completed data transfer after that.

Seems, the VMWI code set the line into some kind of state that the PALM modem could not detect dial tone with.  No phone calls were attempted on the channel prior to the modem communication, just start of asterisk,  VMWI change from -1 to 0 and then start modem transfer.

Dial tone sounded OK on the phone, but modem rejected it. Actually if I picked up the phone before modem tried to establish connection it would detect dial tone while I listened on the phone and the modem would try to connect.

Sorry for the problem with no solution, but though someone in the know might understand this...

By: alric (alric) 2004-02-24 12:00:52.000-0600

Also have VMWI unworking on some of the phones in my building.

T400P + Zhone Channel bank + Cortelco analog phones.  VMWI worked before when we were using an AltiGen system (yuck), but quit working on these phones after we switched to *.  Stutter dialtone works, but no VMWI.  We have other phones from various vendors that work, but not these.

By: alric (alric) 2004-03-22 11:59:23.000-0600

Any feedback on this, anyone?

By: scaredycat (scaredycat) 2004-03-22 18:33:25.000-0600


I've experienced a short screach on picking up some handsets (and a phone connected to an IAXy).. I'm guessing that this is a series of rapid tones to indicate MWI status. It may be that you PALM hears this and gets upset.


By: Mark Spencer (markster) 2004-04-02 01:50:51.000-0600

Please cvs update and try again...

By: Mark Spencer (markster) 2004-04-02 10:50:15.000-0600

(meaning cvs update zaptel)

By: zebble (zebble) 2004-04-02 10:51:08.000-0600

Still seems to have problems.  In one case it's actually worse.  Previously, I was able to kick the VMWI status by taking cycling the hook status on phones.  This now seems to work on a few phones but not reliably, and some not at all.
The temporary fix you did for me a month or so ago was by far the most reliable, but as you say, it could potentially shorten the life of the TDM400P.

By: Mark Spencer (markster) 2004-04-02 11:28:04.000-0600

Okay find me on IRC so I can login and try to straighten this out.

By: Mark Spencer (markster) 2004-04-03 21:02:34.000-0600

I really think I've got it this time.  Please cvs update to asterisk head.

By: cyb (cyb) 2004-04-03 22:15:59.000-0600

Just updated to Asterisk head... Seems to work 100% of the time now (tried about 30 times/scenarios) - but ONLY on the first module of my TDM400P card. Can't seem to get it to work on the other 3 modules though, with the same equipment and while plugged in directly to the TDM card.

By: Mark Spencer (markster) 2004-04-04 10:53:36

cvs update zaptel, small brain fart.

By: cyb (cyb) 2004-04-04 13:11:33

Awesome Mark! It now works consistently on all 4 channels of my TDM400P card. Thank you!

By: Mark Spencer (markster) 2004-04-04 13:22:41

Fixed in CVS