jump to navigation

How to survive ‘Protocol Application Invalid’ July 3, 2008

Posted by cat24.net in Cisco IP Phones.

On a number of occasions I have been involved in sorting out Cisco 7940 and 7960 phones that on power up display the scary message ‘Protocol Application Invalid’. From this point on the phone is unable to retrieve its configuration from the phone PBX server and seems to be stuck. A quick search on Google shows lots of instances of this and for me these Google searches have also been a source of guidance from other kind souls who have worked out how to overcome this situation and once more gain control of their Cisco phones.

Many refer to their phones as ‘bricked’ and start to loose patience. Since I have not examined all these ‘bricks’ I can’t judge whether they are unrecoverable. However, I have recovered phones myself that displayed ‘Protocol Application Invalid’ (PAI) and I have helped a number of trixbox users on the forum there get their phones back into use.

Some time ago I wrote up my first experience of sorting out this problem and put my experiences on my website, on this page.

This posting on my website has brought in more requests and this first blog here is a way to keep the information up to date.

PAI seems in the voip forums to be associated with the phone being ‘dead’ or ‘bricked’. That may be true in some cases but a search on the Cisco website picks up these two links that give more details about PAI.

Converting a Cisco 7940/7960 CallManager Phone to a SIP Phone and the Reverse Process

IP Phone 7940/7960 Fails to Boot – Protocol Application Invalid

Cisco define the error message thus:

“Protocol Application Invalid” Error:
This error message means that the application image cannot be loaded into Flash memory or that the image does not exist in Flash memory. This can happen for these reasons: ……

The recovery process needs some basic technical expertise and knowledge of computer networks. Recovering these phones usually requires configuring a dhcp server and a tftp server and then connecting the problem phone to the network running these two applications.

You will also need copies of the relevant firmware for the phone. The Cisco firmware is licensed and you can buy a SmartNet contract from a Cisco dealer for less than £10 sterling. This gives you access to the Cisco download site where you can access SIP and SCCP images for your Cisco phone. I bought a SmartNet support contract that gives me access to the firmware. However, the strict licence does not allow the firmware to be redistributed, so I am not going to email firmware to you, so don’t ask. However, there are links on the voip-info wiki, where some firmware is posted . Cisco have also put one copy (version 8.2) up on their public ftp site.

If the process of recovering your Cisco phone seems too complicated or you do not have the time I am happy to carry the process out for you, more details at the end.

How to recover a Cisco phone.
The recovery of Cisco 7960 phones that I have worked on relied on the fact that the phones could either be factory reset, or were locked and had fixed network settings.

In the first case a factory reset allows the phone to be unlocked and reset to the situation where it is free of network settings apart from requesting an IP address from the DHCP server. The DHCP server needs to be setup so that it has an ‘Option 150’ set. This supplies the IP address if the TFTP server as well as an IP address for the phone.

Configure a DHCP and a TFTP server.

There are three TFTP servers that I know of.

TFTPD32 and Pumpkin both run under windows, obviously ATFTP is Linux based. The advantage of of TPTP32D is that it also has a built in DHCP server. You could run TFPT32D on a laptop and connect your phone to the laptop with a crossover cable, or connect both to a switch or hub. Make sure there are no other DHCP servers running on the network. I tried TFTP32D and could not get the ‘Option 150’ set up properly in the DHCP configuration. I tried for a bit, but as I use atftpd a lot and have spare trixbox servers sitting around I went down that route as it was quicker. A lot of trixbox forum members use TFTP32D so it must work, just not for me. 🙂

DHCPD and TFTP under Centos

I covered setting up the DHCPD server under Centos here on my website at Cat24.net The critical thing is to add the lines

option voip-tftp-servers code 150 = ip-address;
option voip-tftp-servers w.x.y.z;

into the dhcpd.conf file. In the above lines you need to put the numeric IP address of your TFTP server in place of the w.x.y.z. The effect of this code in dhcpd.cnf is to include the tftp server address into the information sent back to the Cisco phone when the DHCP server hands out an IP address. The Cisco phone should then request its configuration file from the tftp server as the phone boots.

You can check what network settings have been set on your phone by pressing the settings button on the right of the phone and scrolling to the network configuration (or press a 3 on the keypad). This will show the addresses that have been stored on the phone.

Configuring or upgrading Cisco Phones.

I spent quite a while putting together my first Cisco ‘how-to’ on Cat24.net. There are a number of links that I found useful at the bottom of that page. I don’t see any point in copying that material here. However, the Voip-Info.org wiki is a fantastic resource and there is lots of Cisco IP phone related material there, covering all the common Cisco phones that seem to be in circulation. Spend some time searching that wiki using various search terms and all the information you require to configure 7940/7960 and 7941/7961 phones etc is there.

Cisco phones can be programmed with three entirely different voip protocols

  • SCCP – the in house Cisco protocol
  • SIP
  • MGCP

If you are upgrading or downgrading firmware versions or are moving from SCCP to SIP or vice versa Cisco have a very useful resourcehere, that gives a Firmware Upgrade Matrix for 7940 and 7960 IP Phones. This gives the recommended path and process for upgrading or downgrading.

This link may also be useful:

Configuring Cisco 79xx phones with Asterisk

These following links are from the trixbox forums where Cisco PAI has been discussed. If anyone is struggling with this problem these links are worth reading particularly to gain background information.

link #1.

link #2.

link #3.

link #4.

link #5.

link #6.

link #7.

link #8.

link #9.

If these links get out of date or don’t work for you go to the trixbox forum and redo the search.

And finally.

If you need help you could try joining the trixbox forum and posting your question there bearing in mind that the focus there is running the trixbox flavour of asterisk on the Centos Linux OS. I post there quite a lot, and monitor the new posts, as time permits. A search on the form for cat24.net will pull up my posts.

If you can’t sort out problems such as PAI with your Cisco phones I am happy to work on the phone for you. You will need to send me the phone, but don’t do that until you have contacted me through the contact details on my website. I will quote a price and we can discuss payment. Normally PAI problems can be turned around in about 2 days.

You can also of course comment here as well.
Good luck.



1. jay - July 15, 2008

i hve a cisco 7940 series, always display Protocol application invalid.
and it does not respond when I’m pressing the settings … need help. I already done the reset thing. #1234567890*#, same thing happens it still does not respond the settings..

sorry for the english, and thank you in advance

2. John / Cat24.net - July 18, 2008


The follwoing is the reset procedure taken from a Cisco page. You need to make sure that when you respond to the ‘keep network cfg’ message you press key 1 or 2 on the phone keypad and not one of the soft keys below the message.
Step 1 Unplug the power cable from the phone and then plug it back in.

The phone begins its power up cycle.

Step 2 Immediately press and hold # while the Headset, Mute, and Speaker buttons turn on and off in sequence.

Release # after the Speaker button turns off.

The Headset, Mute, and Speaker buttons flash in sequence to indicate that the phone is waiting for you to enter the key sequence for the reset.

Step 3 Press 123456789*0# within 60 seconds after the Headset, Mute, and Speaker buttons begin to flash.

If you repeat a key within the sequence (for example, if you press 1223456789*0#), the sequence will still be accepted and the phone will reset.

If you do not complete this key sequence or do not press any keys, the Headset, Mute, and Speaker buttons will stop flashing after 60 seconds and the phone will continue with its normal startup process. The phone will not reset.

If you enter an invalid key sequence, the buttons will stop flashing immediately and the phone will continue with its normal startup process. The phone will not reset.

If you enter this key sequence correctly, the phone displays this prompt:

Keep network cfg? 1 = yes 2 = no

Step 4 To maintain existing network configuration settings for the phone when the phone resets, press 1. To reset network configuration settings when the phone resets, press 2.

If you press another key or do not respond to this prompt within 60 seconds, the will continue with its normal startup process and will not reset.

Otherwise, the phone goes through the factory reset process.


A factory reset where you have reset the network parameters by pressing key 2, should then call your local DHCP server and get a new IP address on your local network. Does this happen?

If it does and you have set ‘option 150’ in the dhcpd.conf to point to the tftp server then your phone should request files from the tftp server.

If you are running a DHCP server on a Linux platform eg on your asterisk server or something like Smoothwall / IPCOP then yiou can type ‘ arp ‘ on the console to see what IP addresses have been handed out along with the associated MAC addresses and one should match the MAC address printed on the bottom of your Cisco phone.

Does this help? Let me kow what happens.

3. Kyleigh - October 28, 2008

This is great info to know.

4. Alexwebmaster - March 3, 2009

Hello webmaster
I would like to share with you a link to your site
write me here preonrelt@mail.ru

5. cirynde - April 16, 2012

Call me silly but add “option voip-tftp-servers code 150 = ip-address;
option voip-tftp-servers w.x.y.z;” did not worked to me.
My DHCP can’t launch after that. 😥

6. watch superman stamina free online - June 3, 2013

I agree on the superboy-prime point. If both were fighting to kill their opponents, then supes would instantly get it.
If he saw hulk beating up a city or something, then he would just smack hulk about until realizing
that there was no way to conquer him except by killing him.
Even so, if they each got teleported into some pocket universe, and were forced to battle every other for the death with the loser getting his
universe destroyed… Superman has shown
that he will cut loose if sorely provoked.
He would probably kill hulk if he had to protect his universe.
Then once again, knowing superman, he would probably
convince hulk to help him defeat the man who teleported them
there, but if he had no choice, I consider that he would
quickly rip hulk aside just before he can get to the
required strength level.

7. hosted voip - July 18, 2013

My partner and I absolutely love your blog and find the majority of your
post’s to be exactly what I’m looking for. Would you offer guest writers to write content for you?
I wouldn’t mind creating a post or elaborating on a number of the subjects you write concerning here. Again, awesome web site!

8. miracle garcinia cambogia ingredients - July 25, 2013

Thanks for some other excellent document. Where else might anyone obtain that kind of information in these the best types of writing? I’ve a display a few weeks, that i’m on the search for such information.

9. Online Hobby Shop - February 7, 2014

Hi there, I cɦeck your ƅlogs daily. Your writing ѕtyle iѕ
witty, keep doing what you’re doing!

10. Slippers - February 8, 2014

My brother suggested I might like this website. He was totally right.
This post actually made my day. You can not imagine simply
how much time I had spent for this information! Thanks!

11. waterproof - March 25, 2014

Useful info. Fortunate me I discovered your web site accidentally,
and I am surprised why this accident did not happened in advance!
I bookmarked it.

12. safercolon and garcinia cambogia formula reviews - March 27, 2014

Everyone loves it whjen pewople get together and share
views. Grat site, stick with it!

13. garcinia gambogia - September 19, 2014

garcinia gambogia

How to survive ‘Protocol Application Invalid’ | Cat24.net

14. increasing weight - September 29, 2014

Very good blog post. I certainly love this site.
Continue the good work!

15. sexe - June 5, 2016

Very great post. I simply stumbled upon your weblog and wanted
to mention that I have truly loved browsing your
weblog posts. In any case I’ll be subscribing in your
feed and I hope you write again very soon!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: