07-26-2012 05:44 AM - edited 03-12-2019 09:51 AM
This document is intended to detail a simple method for Switching between the SIP and SCCP 7940G, 7960G IP Phones with the Firmware upgrade procedures.
This document is intended to detail a simple method to upgrade firmware on the 7940G and 7960G IP Phones. In this method Cisco Unified Communication Manager Express, CUCME or CME is used and to configure TFTP server with all of the appropriate phone load files already in flash.
In the example shown below we are starting with a 7960G phone with a SCCP load 5.0 (4.0). The firmware upload procedure detailed below will work for any SCCP load. SCCP firmware loads always begin with the following 3 characters: P00….and SIP firmware loads always begin with the following 3 characters: P0S…
You cannot upgrade directly to a SIP load from some of the earlier SCCP loads. For this reason we are going to upgrade our SCCP load before attempting to put the SIP firmware onto the phone. We must first setup the TFTP server so that the CME router can allow the phone to download the necessary files.
tftp-server flash:PHONE/7940-7960/P00308000500.bin alias P00308000500.bin
tftp-server flash:PHONE/7940-7960/P00308000500.loads alias P00308000500.loads
tftp-server flash:PHONE/7940-7960/P00308000500.sb2 alias P00308000500.sb2
tftp-server flash:PHONE/7940-7960/P00308000500.sbn alias P00308000500.sbn
We are going to use the telephony-service to upgrade firmware. The TFTP address of the phone that will have new firmware downloaded should be set to the CUCME ip address. We need to get a basic telephony-service configuration on the CME. The telephony-service must be allowed to create configuration files dynamically. We then need to add the MAC address and phone type to an ephone.
Sample Configuration
telephony-service no auto-reg-ephone ! we don’t want to upgrade other phones accidentally max-ephones 2 ! number of phones you are upgrading max-dn 2 ip source-address 10.10.110.3 port 2000 ! ip address of your CME router load 7960-7940 P00308000500 ! firmware load you are upgrading to create cnf-files ! ephone 1 mac 1111.2222.3333 ! MAC Address of the 1st phone you are upgrading type 7960 ! ephone 2 mac 4444.5555.6666 ! MAC Address of the 2nd phone you are upgrading type 7960
Once this configuration is complete, reboot the phone. The output below shows the TFTP cycle the phone goes through over the next 5 minutes or so.
|
Sample output : # debug tftp events
RTR#debug tftp events
Jan 29 01:41:26.116: TFTP: Looking for CTLSEP000D299D3284.tlv Jan 29 01:41:26.228: TFTP: Looking for SEP000D299D3284.cnf.xml Jan 29 01:41:26.228: TFTP: Opened system:/its/vrf1/XMLDefault7960.cnf.xml, fd 7, size 983 for process 187 Jan 29 01:41:26.424: TFTP: Finished system:/its/vrf1/XMLDefault7960.cnf.xml,time 00:00:00 for process 187 Jan 29 01:41:26.472: TFTP: Looking for P00308000500.loads Jan 29 01:41:26.476: TFTP: Opened flash:PHONE/7940-7960/P00308000500.loads,fd 7, size 458 for process 187 Jan 29 01:41:26.576: TFTP: Finished flash:PHONE/7940-7960/P00308000500.loads,time 00:00:00 for process 187 Jan 29 01:41:27.100: TFTP: Looking for P00308000500.sb2 RTR# Jan 29 01:41:27.104: TFTP: Opened flash:PHONE/7940-7960/P00308000500.sb2, fd7, size 705536 for process 187 RTR# Jan 29 01:43:47.494: TFTP: Finished flash:PHONE/7940-7960/P00308000500.sb2,time 00:02:20 for process 187 Jan 29 01:45:45.764: TFTP: Looking for CTLSEP000D299D3284.tlv Jan 29 01:45:45.916: TFTP: Looking for SEP000D299D3284.cnf.xml Jan 29 01:45:45.916: TFTP: Opened system:/its/vrf1/XMLDefault7960.cnf.xml, fd7, size 983 for process 187 Jan 29 01:45:46.116: TFTP: Finished system:/its/vrf1/XMLDefault7960.cnf.xml,time 00:00:00 for process 187 Jan 29 01:45:46.324: TFTP: Looking for English_United_States/7960-font.xml Jan 29 01:45:46.324: TFTP: Opened system:/its/united_states/7960-font.xml, fd7, size 8777 for process 187 RTR# Jan 29 01:45:48.140: TFTP: Finished system:/its/united_states/7960-font.xml,time 00:00:01 for process 187 Jan 29 01:45:48.848: TFTP: Looking for English_United_States/SCCP-dictionaryext.xml Jan 29 01:45:49.032: TFTP: Looking for English_United_States/SCCPdictionary.xml Jan 29 01:45:49.032: TFTP: Opened system:/its/united_states/SCCPdictionary.xml, fd 7, size 2740 for process 187 RTR# Jan 29 01:45:49.628: TFTP: Finished system:/its/united_states/SCCPdictionary.xml, time 00:00:00 for process 187 Jan 29 01:45:49.940: TFTP: Looking for English_United_States/7960-dictionaryext.xml Jan 29 01:45:50.124: TFTP: Looking for English_United_States/7960-dictionary.xml Jan 29 01:45:50.128: TFTP: Opened system:/its/united_states/7960-dictionary.xml, fd 7, size 19750 for process 187 RTR# Jan 29 01:45:54.128: TFTP: Finished system:/its/united_states/7960-dictionary.xml, time 00:00:04 for process 187 RTR# Jan 29 01:45:55.760: TFTP: Looking for English_United_States/7960-kate.xml Jan 29 01:45:55.760: TFTP: Opened system:/its/united_states/7960-kate.xml, fd7, size 1313 for process 187 Jan 29 01:45:56.064: TFTP: Finished system:/its/united_states/7960-kate.xml,time 00:00:00 for process 187 Jan 29 01:45:56.184: TFTP: Looking for United_States/7960-tones.xml Jan 29 01:45:56.184: TFTP: Opened system:/its/united_states/7960-tones.xml,fd 7, size 903 for process 187 Jan 29 01:45:56.384: TFTP: Finished system:/its/united_states/7960-tones.xml,time 00:00:00 for process 187 RTR# Jan 29 01:46:00.860: %IPPHONE-6-REG_ALARM: 25: Name=SEP000D299D3284 Load=8.0(5.0) Last=Initialized Jan 29 01:46:00.860: %IPPHONE-6-REGISTER: ephone-3:SEP000D299D3284 IP:192.168.25.8 Socket:4 DeviceType:Phone has registered. RTR# Jan 29 01:46:02.512: TFTP: Looking for SEP000D299D3284.cnf.xml Jan 29 01:46:02.516: TFTP: Opened system:/its/vrf1/XMLDefault7960.cnf.xml, fd7, size 983 for process 187 Jan 29 01:46:02.516: TFTP: Looking for RINGLIST.XML Jan 29 01:46:02.688: TFTP: Looking for DISTINCTIVERINGLIST.XML Jan 29 01:46:02.824: TFTP: Finished system:/its/vrf1/XMLDefault7960.cnf.xml,time 00:00:00 for process 187 |
Once the phone is registered, confirm the phone load by looking on “Firmware Version” from the phone itself (or by using the following command):
RTR#sh ephone phone-load
DeviceName CurrentPhoneload PreviousPhoneload LastReset
=====================================================================
SEP000D299D3284 8.0(5.0) 5.0(4.0) Initialized
You cannot upgrade directly to a SIP load from some of the earlier SCCP loads. For this reason we are going to upgrade our SCCP load [Follow the steps, section titled “Upgrade from SCCP 5.x/7.x to SCCP 8.x” above] before attempting to put the SIP firmware onto the phone. We must first setup the TFTP server so that the CME router can allow the phone to download the necessary files.
Now it is time to upgrade to SIP. First setup the TFTP server on the CME router to allow the phone to download the necessary files.
tftp-server flash:PHONE/7940-7960/P0S3-08-6-00.loads alias P0S3-08-6-00.loads
tftp-server flash:PHONE/7940-7960/P0S3-08-6-00.sb2 alias P0S3-08-6-00.sb2
tftp-server flash:PHONE/7940-7960/P003-08-6-00.bin alias P003-08-6-00.bin
tftp-server flash:PHONE/7940-7960/P003-08-6-00.sbn alias P003-08-6-00.sbn
Remove the ephone configuration and disallow the CME from creating configuration files dynamically.
Sample Configuration
RTR#(config)#no ephone 3 RTR#(config)#telephony-s RTR#(config-telephony)#no create cnf
Then configure the voice register settings as shown below.
voice register global mode cme source-address 10.10.202.1 port 5060 ! IP Address of CME max-dn 2 max-pool 2 load 7960-7940 P0S3-08-6-00 ! SIP firmware load you are upgrading to tftp-path flash: create profile
You will see the following output as the phone downloads the new firmware. |
Sample output : # debug tftp events
RTR#debug tftp events Jan 29 02:32:25.874: TFTP: Looking for CTLSEP000D299D3284.tlv Jan 29 02:32:25.982: TFTP: Looking for SEP000D299D3284.cnf.xml Jan 29 02:32:26.090: TFTP: Looking for SIP000D299D3284.cnf Jan 29 02:32:26.198: TFTP: Looking for MGC000D299D3284.cnf Jan 29 02:32:26.306: TFTP: Looking for XMLDefault.cnf.xml Jan 29 02:32:26.422: TFTP: Looking for SIPDefault.cnf Jan 29 02:32:26.422: TFTP: Opened flash:/SIPDefault.cnf, fd 7, size 1890 for process 187 Jan 29 02:32:26.822: TFTP: Finished flash:/SIPDefault.cnf, time 00:00:00 for process 187 Jan 29 02:32:26.862: TFTP: Looking for P0S3-08-6-00.loads RTR#(config-telephony)# Jan 29 02:32:26.866: TFTP: Opened flash:PHONE/7940-7960/P0S3-08-6-00.loads,fd 7, size 459 for process 187 Jan 29 02:32:26.966: TFTP: Finished flash:PHONE/7940-7960/P0S3-08-6-00.loads,time 00:00:00 for process 187 RTR#(config-telephony)# Jan 29 02:32:28.150: TFTP: Looking for P003-08-6-00.sbn Jan 29 02:32:28.154: TFTP: Opened flash:PHONE/7940-7960/P003-08-6-00.sbn, fd7, size 130952 for process 187 RTR#(config-telephony)# Jan 29 02:32:57.850: TFTP: Finished flash:PHONE/7940-7960/P003-08-6-00.sbn,time 00:00:29 for process 187 RTR#(config-telephony)# Jan 29 02:34:49.656: TFTP: Looking for CTLSEP000D299D3284.tlv Jan 29 02:34:49.768: TFTP: Looking for SEP000D299D3284.cnf.xml Jan 29 02:34:49.876: TFTP: Looking for SIP000D299D3284.cnf Jan 29 02:34:49.984: TFTP: Looking for MGC000D299D3284.cnf Jan 29 02:34:50.092: TFTP: Looking for XMLDefault.cnf.xml Jan 29 02:34:50.208: TFTP: Looking for SIPDefault.cnf Jan 29 02:34:50.208: TFTP: Opened flash:/SIPDefault.cnf, fd 7, size 1890 for process 187 Jan 29 02:34:50.608: TFTP: Finished flash:/SIPDefault.cnf, time 00:00:00 for process 187 Jan 29 02:34:50.648: TFTP: Looking for P0S3-08-6-00.loads RTR#(config-telephony)# Jan 29 02:34:50.648: TFTP: Opened flash:PHONE/7940-7960/P0S3-08-6-00.loads, fd 7, size 459 for process 187 Jan 29 02:34:50.748: TFTP: Finished flash:PHONE/7940-7960/P0S3-08-6-00.loads,time 00:00:00 for process 187 RTR#(config-telephony)# Jan 29 02:34:53.412: TFTP: Looking for P0S3-08-6-00.sb2 Jan 29 02:34:53.412: TFTP: Opened flash:PHONE/7940-7960/P0S3-08-6-00.sb2, fd 7, size 756320 for process 187 RTR#(config-telephony)# Jan 29 02:37:25.537: TFTP: Finished flash:PHONE/7940-7960/P0S3-08-6-00.sb2,time 00:02:32 for process 187 RTR#(config-telephony)# Jan 29 02:39:34.571: TFTP: Looking for SIPDefault.cnf Jan 29 02:39:34.571: TFTP: Opened flash:/SIPDefault.cnf, fd 7, size 1890 for process 187 Jan 29 02:39:34.975: TFTP: Finished flash:/SIPDefault.cnf, time 00:00:00 for process 187 Jan 29 02:39:35.159: TFTP: Looking for SIP000D299D3284.cnf |
Ensure that there is no voice register pool for the device you are trying to upgrade. If there is a voice register pool then delete it and make sure you “create profile” within voice register global. The next step is to add the correct SCCP firmware in the load statement within telephony-service.
Sample output
telephony-service load 7960-7940 P00308000500 load 7962 SCCP42.8-3-3S
Ensure that the relevant “tftp-server” commands are entered into configuration on the router. See below for the best way to add this.
RTR#sh flash | i .txt 2 18836 Dec 18 2008 13:49:48 bacdprompts/app-b-acd-2.1.2.2-ReadMe.txt 183 22542 Dec 18 2008 13:49:46 CME-7-0-full-readme-v.1.0.txt
RTR#more CME-7-0-full-readme-v.1.0.txt | i tftp-server … tftp-server flash:phone/7940-7960/P00308000500.bin alias P00308000500.bin tftp-server flash:phone/7940-7960/P00308000500.loads alias P00308000500.loads tftp-server flash:phone/7940-7960/P00308000500.sb2 alias P00308000500.sb2 tftp-server flash:phone/7940-7960/P00308000500.sbn alias P00308000500.sbn tftp-server flash:phone/7941-7961/apps41.8-3-2-27.sbn alias apps41.8-3-2-27.sbn tftp-server flash:phone/7941-7961/cnu41.8-3-2-27.sbn alias cnu41.8-3-2-27.sbn tftp-server flash:phone/7941-7961/cvm41sccp.8-3-2-27.sbn alias cvm41sccp. 8-3-2-27.sbn tftp-server flash:phone/7941-7961/dsp41.8-3-2-27.sbn alias dsp41.8-3-2-27.sbn tftp-server flash:phone/7941-7961/jar41sccp.8-3-2-27.sbn alias jar41sccp. 8-3-2-27.sbn tftp-server flash:phone/7941-7961/SCCP41.8-3-3S.loads alias SCCP41.8-3-3S.loads tftp-server flash:phone/7941-7961/term41.default.loads alias term41.default.loads tftp-server flash:phone/7941-7961/term61.default.loads alias term61.default.loads tftp-server flash:phone/7942-7962/apps42.8-3-2-27.sbn alias apps42.8-3-2-27.sbn tftp-server flash:phone/7942-7962/cnu42.8-3-2-27.sbn alias cnu42.8-3-2-27.sbn tftp-server flash:phone/7942-7962/cvm42sccp.8-3-2-27.sbn alias cvm42sccp. 8-3-2-27.sbn tftp-server flash:phone/7942-7962/dsp42.8-3-2-27.sbn alias dsp42.8-3-2-27.sbn tftp-server flash:phone/7942-7962/jar42sccp.8-3-2-27.sbn alias jar42sccp. 8-3-2-27.sbn tftp-server flash:phone/7942-7962/SCCP42.8-3-3S.loads alias SCCP42.8-3-3S.loads tftp-server flash:phone/7942-7962/term42.default.loads alias term42.default.loads tftp-server flash:phone/7942-7962/term62.default.loads alias term62.default.loads
You need to change the path to reflect the correct directory structure that is preloaded onto the flash- the word “phone” needs to up upper case “PHONE”. So in effect to register a 7960 and 7962 you would need these commands:
tftp-server flash:PHONE/7942-7962/apps42.8-3-2-27.sbn alias apps42.8-3-2-27.sbn tftp-server flash:PHONE/7942-7962/cnu42.8-3-2-27.sbn alias cnu42.8-3-2-27.sbn tftp-server flash:PHONE/7942-7962/cvm42sccp.8-3-2-27.sbn alias cvm42sccp. 8-3-2-27.sbn tftp-server flash:PHONE/7942-7962/dsp42.8-3-2-27.sbn alias dsp42.8-3-2-27.sbn tftp-server flash:PHONE/7942-7962/jar42sccp.8-3-2-27.sbn alias jar42sccp. 8-3-2-27.sbn tftp-server flash:PHONE/7942-7962/SCCP42.8-3-3S.loads alias SCCP42.8-3-3S.loads tftp-server flash:PHONE/7942-7962/term42.default.loads alias term42.default.loads tftp-server flash:PHONE/7942-7962/term62.default.loads alias term62.default.loads tftp-server flash:PHONE/7940-7960/P00308000500.bin alias P00308000500.bin tftp-server flash:PHONE/7940-7960/P00308000500.loads alias P00308000500.loads tftp-server flash:PHONE/7940-7960/P00308000500.sb2 alias P00308000500.sb2 tftp-server flash:PHONE/7940-7960/P00308000500.sbn alias P00308000500.sbn |
Sample Output
ephone 1 mac-address 0017.94CF.219E type 7960 button 1:1 !!! ephone 2 mac-address 0021.A086.7F8E type 7962 button 1:2
This will result in the following SEP files pointing to the system XMLDefault files. Each of the XML Files (XMLDefault, XMLDefault7960 and XMLDefault7962) have the correct load information set for the appropriate phone.
RTR#sh telephony-service tftp-b ... tftp-server system:/its/vrf1/XMLDefault.cnf.xml alias XMLDefault.cnf.xml tftp-server system:/its/vrf1/XMLDefault7960.cnf.xml alias SEP001794CF219E.cnf.xml tftp-server system:/its/vrf1/XMLDefault7962.cnf.xml alias SEP0021A0867F8E.cnf.xml ... If we look into this file you will see the load information correctly set.:
RTR#more system:/its/vrf1/XMLDefault7962.cnf.xml <loadInformation>SCCP42.8-3-3S</loadInformation> After a certain amount of time the phone will request the configuration file:
Apr 22 18:46:05.742: TFTP: Looking for CTLSEP0021A0867F8E.tlv Apr 22 18:46:05.910: TFTP: Looking for SEP0021A0867F8E.cnf.xml Apr 22 18:46:07.278: TFTP: Opened system:/its/vrf1/ XMLDefault7962.cnf.xml, fd 7, size 1143 for process 220 RTR# Apr 22 18:46:07.586: TFTP: Finished system:/its/vrf1/ XMLDefault7962.cnf.xml, time 00:00:00 for process 220 RTR# Apr 22 18:46:14.342: TFTP: Looking for SCCP42.8-3-3S.loads Apr 22 18:46:14.342: TFTP: Opened flash:PHONE/7942-7962/ SCCP42.8-3-3S.loads, fd 7, size 658 for process 220 Apr 22 18:46:14.538: TFTP: Finished flash:PHONE/7942-7962/ SCCP42.8-3-3S.loads, time 00:00:00 for process 220 Apr 22 18:46:15.174: TFTP: Looking for jar42sccp.8-3-2-27.sbn Apr 22 18:46:15.174: TFTP: Opened flash:PHONE/7942-7962/jar42sccp. 8-3-2-27.sbn, fd 7, size 443607 for process 220 RTR# Apr 22 18:47:43.689: TFTP: Finished flash:PHONE/7942-7962/jar42sccp. 8-3-2-27.sbn, time 00:01:28 for process 220 RTR# Apr 22 18:47:46.833: TFTP: Looking for cnu42.8-3-2-27.sbn Apr 22 18:47:46.837: TFTP: Opened flash:PHONE/7942-7962/ cnu42.8-3-2-27.sbn, fd 7, size 585562 for process 220 Apr 22 19:09:11.612: %IPPHONE-6-REG_ALARM: 25: Name=SEP0021A0867F8E Load= SCCP42.8-3-3S Last=Initialized Apr 22 19:09:11.640: %IPPHONE-6-REGISTER: ephone-2:SEP0021A0867F8E IP: 192.168.24.3 Socket:3 DeviceType:Phone has registered.
In total it took around 25 mins from the moment the phone grabs the xmldefault file to registering with the CME. |
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: