In my office we had 10 Cisco 7940G IP phones that were useless as they were showing
PROTOCOL APPLICATION INVALID
when started. I searched through Google and worked for a week continuously on those phones, and finally got them working. This is a difficult problem for those who are new to IP phones, so I would like to share a step by step procedure to get them working again.
In this explanation I have set this Cisco IP phone to SIP mode, much as you can set this phone to other modes. As VOIP is more preferred I think SIP mode is more useful than others.
1. Step 1
server software.I prefer the Solarwinds TFTP server
as it has worked for me. Install this on a workstation in your network.
2. Step 2
Get a configuration file editor (ASCII editor)Download the free hex editor Neo
and install it.
3. Step 3
Create the configuration filesNow the important part comes: creating configuration files. I have searched a lot in Google for configuration files, but have not seen them together in one place, so I am putting the formats of those configuration files.
These are the files required.
1.CTLSEP001121F11A5A.tlv (001121F11A5A is MAC address of a Cisco IP phone)
3.P0S3-8-12-00.sb2 (name of ISO image)
7.SEP001121F11A5A.cnf.xml (MAC address of the Cisco phone after SEP)
8.SIP001121F11A5A.cnf (MAC address of the Cisco IP phone after SIP)
(001121F11A5A is MAC address of a Cisco IP phone) This file shouldn't have any content in it. You can create a file like this using the hex editor and save it in the above name.
This file should contain the name of the image like the following one: P003-8-12-00
(name of ISO image), P0S3-8-12-00.loads
These files will be in the zip file which you get from Cisco on their website at http://www.cisco.com/cisco/software/type.html?mdfid=268437897&flowid=5245
. You can download the SIP or SCCP image file, and it will contain these four files along with OS79XX.TXT.
The file you download will be have the name of IOS itself. If you want to find out the suitable IOS for each IP phone; select your phone model at the above page and choose the appropriate IOS.
The following should be the content of this file:
Do not forget to edit the name of IOS to the one you have.
(change image name to the IOS you are using in the image version field.)
directory_url : ""
services_url : ""
logo_url : ""
http_proxy_addr : ""
http_proxy_port : ""
transfer_onhook_enabled : "1"
dscpForAudio : 184
date_format : "M/D/Y"
time_format_24hr : 0
dial_template : "dialplan"
sntp_server : "192.168.1.115"
sntp_mode : "Unicast"
time_zone : "EST"
dst_auto_adjust : 1
dst_offset : 01/00
dst_start_day : 0
dst_start_day_of_week : Sunday
dst_start_month : 3
dst_start_week_of_month : 2
dst_start_time : "02/00"
dst_stop_day : 0
dst_stop_day_of_week : Sunday
dst_stop_month : 11
dst_stop_week_of_month : 1
dst_stop_time : "02/00"
proxy1_address : "ip address of voip proxy server"
proxy_backup : ""
proxy_emergency : ""
connection_monitor_duration : 120
line1_shortname : "name of user or extension"
line1_name : "Authentication name"
line1_displayname : "name of user or extension"
line1_authname : "authentication name u have given in voip server"
line1_password : "authentication password u have given in voip server"
messages_uri : "8560"
line2_shortname : ""
line2_name : ""
line2_displayname : ""
line2_authname : ""
line2_password : ""
phone_label : "CISCO"
cnf_join_enable : "1"
rfc_2543_hold : "0"
call_hold_ringback : "2"
semi_attended_transfer : "1"
anonymous_call_block : "2"
callerid_blocking : "2"
dnd_control : "0"
sip_invite_retx : "6"
sip_retx : "10"
timer_invite_expires : "180"
timer_register_expires : "3600"
timer_register_delta : "5"
timer_keepalive_expires : "120"
timer_t1 : "500"
timer_t2 : "4000"
sip_max_forwards : "70"
enable_vad : "0"
dtmf_avt_payload : "101"
dtmf_db_level : "3"
user_info : "None"
stutter_msg_waiting : "2"
call_stats : "1"
start_media_port : "16384"
end_media_port : "32766"
phone_password : "cisco"
voip_control_port : "5060"
proxy_emergency_port : "5060"
outbound_proxy : ""
outbound_proxy_port : "5060"
proxy_register : "1"
dtmf_outofband : "avt"
autocomplete : "2"
network_media_type : "Auto"
local_cfwd_enable : "1"
call_waiting : "1"
preferred_codec : "none"
remote_party_id : "1"
telnet_level : 2
Edit the underlined items above to fit your requirements. If you have an outbound proxy, add that where it is referenced in the above file.
#Proxy server address
proxy1_address: IP address of your VOIP proxy server ;
You will have to create files 1, 2, 8 and 9 yourself. Simply copy and paste the text above (where noted) to a text editor then save them to the necessary names.
Add image version and VOIP server IP. After creating these configuration files put these files, together with the five files from the image file from Cisco in the TFTP root file.
4. Step 4
Find a DHCP serverYou should have a DHCP server in your network; I have used a DHCP server that is in my primary domain controller network. If you do not have one you can install Windows 2003 and create one DHCP server in you network. Add option 150 (the Cisco CallManager solution) to the DHCP server. Details are here
. The page shows adding it to a Windows 2000 server, but Windows 2003 is very much the same.
After adding option 150, right-click the scope option, then select Configure Options, and check the in the newly added TFTP server IP address. Add the IP address of the PC where you have installed TFTP SERVER, apply and press OK.
5. Step 5
Start the TFTP SERVER
Connect your Cisco phone to the LAN and reboot it. Please note: Do not
reboot any other Cisco phones at this time, because they will also try to get the files from the TFTP server.
Now the Cisco phone will connect to the TFTP server and will take the configuration files and image file from it.
If you do not have image file, you can download it from Cisco directly but only if you have an account. I suggest you create one, but if you do not have one you can try to get the image here
Pirated images are dangerous; it is always good to use an original one from Cisco.
This should help you recover your Cisco phones. I have used this technique for almost all 7900 series Cisco IP phones. I am not much familiar with other Cisco IP phone series, but if the phone is dead any one can try the above things because it cannot get any worse.