Configuring Cisco 7975 IP Phones for SIP

7975_photoAnyone who has had the “pleasure” of trying to configure a Cisco 7975 phone with a SIP IP PBX system such as Asterisk, trixbox, or 3CX can attest to the fact that the phones are very picky with their config files and much of the information that is really handy to know is simply not documented anywhere. On top of that, to get the phones to even work right you have to use very specific versions of the SIP firmware as the phones are not designed to work with third-party phone systems that talk generic SIP messages. While I can tell you that Cisco recommends using SIP firmware 8.3.2 SR1S, I cannot provide the firmware files because of their licensing agreements. Assuming you can get the correct firmware copied to your tftp server, and your DHCP server is serving out Option 66 to tell the phones where to look for its config files (yes, these are mandatory requirements), then we can get into how to actually configure the phones themselves.

To start off with I have created a set of files that will help you get started, you can download the set here (download).

Inside the zip file are the following files:

  • SEP7975.cnf.xml – A clean example file
  • SEP0023331BEA0A.cnf.xml – Same as the previous but showing how the mac address is added to the file
  • Desktops320x216x167975Logo.png – Background image for phone
  • Desktops320x216x167975Logo-TN.png – Thumbnail image
  • Desktops320x216x16List.XML – Background image config file

Let’s assume your phone’s mac address is 0023331BEA0A, we will need a file named SEP0023331BEA0A.cnf.xml for the phone to configure itself. Using the included files as a guide, we need to edit the following lines:

Line 27: <processNodeName></processNodeName>

Change IP address to IP address of your PBX system. Using a host name tends to cause the phone to not parse the file properly.

Line 71: <authenticationURL>http://{TBexternalIPaddress}/xmlservices/authentication.php</authenticationURL>
Line 72: <directoryURL>http://{TBexternalIPaddress}/xmlservices/PhoneDirectory.php</directoryURL>
Line 75: <informationURL>http://{TBexternalIPaddress}/xmlservices/index.php</informationURL>
Line 78: <servicesURL>http://{TBexternalIPaddress}/xmlservices/index.php</servicesURL>

If you are using XML services you will need to change the above lines to the correct URLs.

Line 155: <phoneLabel>VoipStore </phoneLabel>

Now I know you don’t want to change this πŸ™‚

Line 160: <featureLabel>402</featureLabel>
Line 162: displayName>402</displayName>

This is the text shown next to the line key, usually the extension number

Line 161: <name>001FCA368894</name>
Line 163: <contact>001FCA368894</contact>
Line 170: <authName>001FCA368894</authName>

Lines 161, 163, and 170 are the SIP login, on some systems this is the extension (trixbox CE, 3CX, FreePBX) and on others it is the mac address (trixbox Pro).

Line 164: <proxy></proxy>

The proxy IP address is the IP address of your IP PBX system.

Line 171: <authPassword>9svHcd92t4H</authPassword>

The auth password is the SIP password (secret on some systems) for this extension

Line 174: <messagesNumber>8555</messagesNumber>

This value is the number to dial to access the voicemail system. On trixbox Pro this is 8555, on trixbox CE it is *97, for 3CX this is 999.

Lines 184 – 209 repeat the same information to add another active line key, you can continue adding sections like this for all eight line keys.

Adding the background image

If you copy the existing files from the zip file to the right locations, you should be able to activate a new background image for your phone. Press the Settings key, then 1 for User Preferences, then 2 for Background images, use the directional keypad to move to the image you want to use, then press the Select softkey, then press the Save softkey. Your new background image will now display in all its glory.


I cannot begin to stress how picky these phones are with their configuration files. If you are making changes and rebooting the phone and your changes do not seem to be taking effect, go to Settings, Status, Status Messages to get a list of errors that the phone is encountering. Typical ones to ignore are the following:

  • Error updating Local
  • No CTL installed
  • File not found: CTLFile.tlv

Those are actually “normal”, what you do not want to see is “Unable to Parse file”, that will tell you that it did not like something in your config file. This can be something like using a host name when it wants an IP address. Just understand that you will probably experience quite a bit of frustration getting the 7975 to work properly, but with enough persistence it actually is possible.

49 Responses to "Configuring Cisco 7975 IP Phones for SIP"
  1. Thank you so much! πŸ™‚
    Now my Cisco 7975 works with Trixbox.
    Is there a similar effective tutorial available that explains how to use a central phonebook?


  2. Thanks Mike,

    I was able to install (somehow) a central phone directory.
    Out of the box (Trixbox 2.8) it didn`t work, although there are lots of conf-files for Cisco xml-service on the server.
    Somehow only the local directory displayed extensions. The phone directory didn`t work.
    I am a newbie so I just used the info from the local directory php file to create my phone directory. Created several tables in asterisk (phonebook-A-F, phonebook-G-K, etc)
    Now it works and I circumvent the problem that the Cisco 7975 can only digest 30 entries per page.
    I have several phonebooks now and it`s much more convenient than the search for last name feature…

    Your tutorial was the best one, I could find!
    Keep up the good work.


  3. [email protected] says:

    Kerry, that’s super-useful info!!

    I have a system that I can get a 7960 to work on… no problem, but when I try to get a 7970 on it, it won’t go! and nothing’s documented, like you said! Wish I could switch to a trixbox but i just want my current thing to work. This seemed to help but didnt quite get me there.


  4. Yes, you are right that`s the best Info about the Cisco 7975 you can get…on the www

    Problem is that people don`t post any results once they got it working.

    Just in case, somebody wants to add some features to the line buttons on the right.
    Here are the featureIDs I know of:
    1 = Redial
    2 = (Speed)Dial
    3 = Hold
    4 = Transfer
    5 = ForwardAll
    9 = Line
    21 = BLF (Red light when extension busy), doesn`t work with asterisk, because Cisco uses some kind of special protocol. If somebody finds a solution, please post it!!!!

    So in your SEP-mac.cnf.xml file it looks like this:



  5. Just found out that you cannot post a code here.
    Try it again, without the arrows:
    line button=”3″

  6. I have some 7975 phones and a Digium Switchvox. I am having a heck of a time and would be glad to pay someone to get this working for me. Can anyone help? I even tried resetting the phone to the factory defaults and now it is rebooting over and over again. I am afraid to shut it off because they said not to

  7. i have a question.
    i have a rececpionist that handles all incoming calls from 1 phone a 7960 if someone knows of a way to use a central phonebook like i give you an example the boss calls from his cellphone and in the cisco 7960 it only apears the number not the name i just want a REALY BASIC function off a phone… like BOSS is calling or someone of my clients that are important got a CUCMBE 6.1.4 and Unity 2.1 and IPCC express advanced 5.2 it cost about a houe in licenses and still no phonebook..

  8. Anyone know if it is possible to get a 7975 working over NAT? (For a remote/"tele-worker" who is on a different network than the server?) The box has a dedicated IP and, theoretically, it should work (we've been able to get several polycoms working successfully), but the 7970/75 has never worked over NAT.

  9. Thank you so much! πŸ™‚
    Now my Cisco 7975 works with Trixbox.
    Is there a similar effective tutorial available that explains how to use a central phonebook?


  10. Our 7975g justs sits on the "Registering" message. If we check the status messages, we find:

    TFTP Error: dialplan.xml
    Error Updating Locale
    No CTL Installed
    File Not Found: CTLFile.tlv

    • John,

      How did you get 3CX to register Cisco 7595?
      Mine just gets stuck on registering the line.

      Where did you get the correct firmware from?
      Please can you help me…I have been trying for weeks

  11. Tried to install the phone with the 8.3.2 SR1S which I took from the cisco download software area of 7975. Unlike previous versions it is written there that this file is for the callmnager. On the 7961 and others you have SIP files for "other systems".
    What to do – to take this version from 7961 ? (since with this files I can see the process is running but at the end it makes reset and restart the process again and again …)

    • To get Exchange UM talking with our IP PBX ( Asterisk / Trixbox) we have opted to inlsatl SipX server which provides a bridge between the Asterisk PBX (which uses SIP over TCP) and Exchange UM (which uses SIP over UDP). Page 2

  12. Hi all,

    I have a 7975 and they are 2 days that I'm trying to connect it to my Asterisk server…
    I have installed firmware SIP 8-3-3 (but also 8-5-4 for some tests).

    Right now, I'm using the above configuration from skintigh, deleting the NAT entries.
    7975 is not able to register to Asterisk.

    Strange behaviour: 7975 is NOT registered to Asterisk (grey icon with red cross), but is able to call other phones through Asterisk. Instead, other phones are not able to call the 7975.

    During the registration, Asterisk CLI reports:

    — Registered SIP '0011' at port 5060
    > Saved useragent "Cisco-CP7975G/8.3.0" for peer 0011
    — Unregistered SIP '0011'

    In status messages, 7975 tells:
    Anonymous (a part from Error Updating Locale).

    My users.conf in Asterisks sounds like this:

    fullname = console
    cid_number = 0011
    nat = no ; there is not NAT between phone and Asterisk
    insecure = invite
    type = friend
    allow = all
    context = console
    hasmanager = no
    callwaiting = yes
    threewaycalling = yes
    hasagent = yes
    group =
    host = dynamic
    vmsecret =
    registersip = yes
    registeriax = no
    ;limitonpeers = yes
    secret = xxxxxxx

    Any proposal??? I don't know now what to do…

    Thanks in advance

    • It is very difficult to troubleshoot these which is why I do not recommend using them with Asterisk. Without having access to the system its even harder to figure out why they aren’t working. Try changing the NAT and Qualify settings to see if that helps.

    • I did you fixes this problem? I also have the same problem with 3CX.
      Did you find out why it Cisco 7975 not register??

      Want to see from your experience and see if you can help me solve the problem.


  13. 1. If you use SIP, then don’t use Cisco. Try linkys (wich is also cisco) instead.

    2. If you really like to use Cisco (cause their phones are really decent and beautiful) then use it in combination with SCCP (chan_skinny for asterisk and mod_skinny for FreeSWITCH).

  14. Anyone having problems with their Cisco IP Phones, please see the article i've put together on getting SEVERAL different models connected to asterisk with SIP firmware.

    Regarding the TFTP ports (aka DHCP options), start here:

    According to this CCM 3.3 (the link on the page to the CCM 4.1 info is the same) the TFTP port (or DHCP option) is port 69, NOT 66 or 150 as many documents will indicate. If this doesn't work, the phones network settings contain a spot for "Alternate TFTP". Setting this will ignore any passed DHCP options and try to connect to the provided address on port 69 directly.

    Also, best experiences to date have come from 8.4.X firmware versions of the SIP images

  15. Hi there,

    I've got it to load firmware SIP75.9-3-1SR1S onto the phone as thats all i could get my hands on from cisco. The phone comes up now with 'unprovisioned' when i then go into the settings, it shows:
    'Error updating Locale'
    Any ideas what could be causing this? or how i could go about resolving the issue? any help would be greatly appreciated!


    • You can ignore the LOCALE errors. Is your phone registering? Be sure in the BUTTON area that any line button you create uses USECALLMANGER for the proxy address for the line button.

  16. I've got a 7975G workng perfectly with 3CX V11 other than one handup. Conference calls do not connect. I can make a primary call, then i can make a 2nd call…. but when i go to hit conference a 2nd time to connect all three conversations together the phone says it can't complete the conference. I suspect this hgas to do with the USECALLMANAGER requirement on the LINE button for PROXY. Ideas?

  17. Hi Keith,
    i have got exactly the same (7975G + 3CX v11 + InPhonex) but unfortunately, the phone rings then NO VOICE !!!
    For outbound calls you get the dial tone but once you dial a number, you hear nothing also…
    what is the proper SEP config?
    what settings you have in the 3CX?
    I appreciate if you could help

  18. Hi everybody,

    We've finally managed this phone to work with an Asterisk and FreePBX installation. However, there's a problem concerning the display while being on a call. The display goes off while on the phone and I don't know where else I should have a look in order to keep it on. For example, when there's an incoming call, it is not possible to see who's calling.

    It'd be great if you could suggest us something we can do regarding this issue.

    Thanks a lot in advance.

  19. Hello:

    I'm trying to insert the alternative backgrounds but without success.
    I'm leaving the files on Desktops320x216x16 folder of my TFTPD32 but it don't work.
    I use this phone with SIP firmware connected to my Asterisk.
    Everything works fine except the personal background.

    Somebody can help me?

    Best Regards!

Leave a Reply