Convert 7940/7940 Cisco IP Phone from SCCP to SIP

I work for a call center and I work with a 7942 Cisco IP Phone. I’m always impressed by the quality of the phone. The feature that I love a lot would be the speaker phone. I thought it would be a perfect addition to my room and so I searched for it online and see where I can get a good deal. I was lucky enough to get multiple phones for a cheap price on Craigslist. At that time, my dad was telling me that you can convert SCCP to SIP only if you are a Cisco Certified so I had to do some digging online. I found a lot of tutorials on how to do it and sites where you can download firmwares and upgrade it via TFTP.

I have read a lot of tutorials and all of them seemed to vary. I followed one after another until I got the hang of it. (trial and error, I know it is not good especially when messing with firmwares. I do it a lot..)

Things that you need for this:

  • TFTP Server – I used my laptop with Windows 7 and used the program TFTPD32. I have not tried setting up a tftp server in my Ubuntu.
  • 7940/7960 Cisco IP Phone – I have only tried this with these models. If you do try it on any other models, let me know what happens but I do not recommend it if you do not want to brick anything.
  • Router or switch
  • Firmware – I got my firmwares from this FTP site or I found this one from Jtech.

First thing you want to do is figuring out what firmware your Cisco phone is running. There are several ways to do this.  Check out my tutorial on how to check your firmware here.

How to check firmware for Cisco IP Phone 7940/7960

In this tutorial, you would want to see “0” as the third character on your Application Load ID. It means you are running SCCP firmware.

Now that you know what version you have, time to figure out how to proceed on upgrading. The upgrading process will actually depend on the firmware you are running. With the older firmwares, it requires you to upgrade to a certain version before you can go up on a higher version. Basically, you can’t just skip to the latest firmware. You can take a look at the matrix here:

Cisco 7940 and 7960 IP Phones Firmware Upgrade Matrix

or there’s this guide which is very helpful. It can save you a lot of time reading through the Cisco’s Upgrade Matrix.

Jtech Firmware Upgrade Guide


One phone that I bought had an SCCP version 5. Here’s the upgrade matrix that I had to do.

From SCCP version 5 -> SIP version 6.3 -> SCCP 7.0 -> SIP 8.11 -> SIP 8.12

* I don’t know if you can upgrade from SCCP 7.0 directly to SIP 8.12. I just read it on one forum and just followed it.


Files that you would need:

Download the firmware. Link is above. Once you have extracted the firmware zip file, it should contain the following:

*** I will use P0S3-8-12-00 as an example for the files needed. ***

Screenshot 2014-02-13 10.54.00

  • OS79XX.TXT – This is the first file your IP phone will look for and this is where you will specify the version you are upgrading to. So if I was to upgrade to SIP version 8.12, I would edit this file and input

Since this tutorial is mainly for converting SCCP to SIP, you have to remember, the third character is supposed to be the letter ‘S‘ which stands for SIP.

  • P0S3-8-12-00.bin
  • P003-8-12-00.sbn
  • P0S3-8-12-00.loads
  • P0S3-8-12-00.sb2

Along with these files, you would need to add two more files. I just used Notepad to add these files.

  • SIPDefault.cnf – in this file you would input
image_version: "P0S3-8-12-00"
  •  SIP<mac_address>.cnf – This file is for the configuration of the phone. Rename this file and put your MAC Address for your SIP phone. You can locate the MAC address on the back of the phone at the very bottom. You will edit the file and input
# SIP Configuration Generic File# Line 1 appearance
line1_name: 1234567

# Line 1 Registration Authentication
line1_authname: "UNPROVISIONED"

# Line 1 Registration Password
line1_password: "UNPROVISIONED"

# Line 2 appearance
line2_name: 12345678

# Line 2 Registration Authentication
line2_authname: "UNPROVISIONED"

# Line 2 Registration Password
line2_password: "UNPROVISIONED"
####### New Parameters added in Release 2.0 #######

# All user_parameters have been removed

# Phone Label (Text desired to be displayed in upper right corner)
phone_label: "" ; Has no effect on SIP messaging

# Line 1 Display Name (Display name to use for SIP messaging)
line1_displayname: "User ID"

# Line 2 Display Name (Display name to use for SIP messaging)
line2_displayname: ""
####### New Parameters added in Release 3.0 ######

# Phone Prompt (The prompt that will be displayed on console and telnet)
phone_prompt: "SIP Phone" ; Limited to 15 characters (Default - SIP Phone)

# Phone Password (Password to be used for console or telnet login)
phone_password: "cisco" ; Limited to 31 characters (Default - cisco)

# User classifcation used when Registering [ none(default), phone, ip ]
user_info: none

In order for the phone to get all those configuration, the phone and the TFTP server needs to be in the same network. That is why it requires a switch or router.

Setting up TFTP

At this point, we are ready to set up our TFTP server. As I specified above, I used TFTPD32. Install it. I made sure I ran it as an administrator on my Windows 7.

Screenshot 2014-02-13 10.50.57

You will see Current Directory. Point it to where you unzip the firmware files.

For the Server Interface, this is usually the IP address of your computer where your TFTP server is installed.

Now you will go to Settings.

Under Global, you will only need to tick TFTP Server, Syslog Server and DHCP Server (Optional, if you need to use DHCP.)

Screenshot 2014-02-13 10.58.05


Under TFTP, change the TFTP Security to ‘None‘. Also, you can change the Base Directory in here.

Screenshot 2014-02-13 10.58.45

Under DHCP, these are my settings. You might only need to set this if you are using a switch. I used a switch but it was connected to a router so I still had DHCP Server. I had to use it when I encountered an error “Application Protocol Invalid” I will make a tutorial on how to fix that in the future.

Screenshot 2014-02-13 10.59.10


Once you have setup your TFTP Server, we are ready to move on to our Cisco IP Phone.

Upgrading the Cisco Phone


Before we change or do anything on the phone, we would want to clear out the previous configuration.

If you haven’t done it before, you can see how I cleared out the configuration in this tutorial.

How to erase configuration on Cisco 7940/7960

After we cleared out the settings, we will configure the phone to pull files from our TFTP Server.

We must first unlock the settings so we can make changes.

*These options may vary on which model and version you have.

Press Settings and Option #9 Unlock Config. It will ask you for your password. The default would be ‘cisco’.


Then go to Option# 3 Network Configuration -> Option 32 Alternate TFTP and change this to ‘YES



Then go to Option #7: TFTP Server and change this to the IP Address of your TFTP Server and press ‘Validate‘ and ‘Save’


Usually after you press ‘Save‘ it will reset the phone, if it does not in one minute, go ahead and reset it by unplugging it from the power source.

The phone will now start communicating with our TFTP Server and get the firmware. You will see that status on the phone. It will verify the load and start uploading it on the phone. While it is uploading, if you look at your TFTP Server and go to Log viewer tab, you will see the events occurring and what file the phone is trying to get.

Once done and rebooted, you will now see an “SIP” logo on the upper right corner of the screen. This confirms that you are successful on converting your Cisco IP Phone. Congratulations!!


If you have any questions or comments, feel free to write below. If you like my contents, don’t forget to subscribe!


8 Replies to “Convert 7940/7940 Cisco IP Phone from SCCP to SIP”

  1. Hello, I already have Cisco 7940G IP phone so I need to configure it to Sonetel phone system but firstly I need to upgrade firmware version so how can I find supported SIP firmware ? Here I add my firmware version,
    please send me supported firmware link to download. thanks

  2. Do you know why I am still seeing could not find XMLDefault.cnf.XML when I try to change to SIP from SCCP.

    Model – 7940
    Phone Loaded with: P00308000500

    I m changing it to : P0S3-8-12-00. Your advise is much appreciated.


      1. Not sure why my post is not visible. Was looking for some input on converting to SIP. I have read so many articles that I am confused and was hoping for some input.

  3. Ok so not sure were I am getting this wrong. I have a 7940G with P00308000500 and trying to get it to SIP. I think my biggest issues is understanding the versions. I know P0S3### is SIP. Just can not figure which package to take it to for making the change. I have to get this one phone to work to see if it will function correctly then we will get some more. Any help will be grateful.

    1. This process is to just convert the protocol of the phone. After you have converted to SIP Protocol, you can now configure those options (SIP Server, SIP port, etc) from the phone.

Leave a Reply

Your email address will not be published. Required fields are marked *