Mollien dot Net is IPv6 Enabled!

   My About.Me page
   View my profile on LinkedIn
   Follow me on Twitter
    View my Facebook profile   View my Hyves profile   View my YouTube favorites and uploads


IPv6 Certification Badge for Cas Mollien

Cisco 7970 IP Phone (SIP) Configuration
My findings on how to install, upgrade and use the functions of the Cisco 7970 IP Phone
By: Cas Mollien
Last modified on: 09 September 2011, 1:57h

Since the article that I wrote years ago on upgrading 7940/7960 phones to SIP turned out to be one of the most popular articles on my site, I decided to put my experiences on the Cisco 7970 (with the color screen) here as well..

I purchased a 7970 from eBay a while back and in my initial attempts to upgrade the phone, I thought I bricked it. It was unresponsive, the screen would stay stuck on the Cisco screen and the lines would keep on blinking. Today, I upgraded a stubborn 7940 to the latest SIP firmware which was actually so easy that I decided to see if I could salvage the 7970 and give it an other try.

To my surprise, after being in the closet for over 6 months, the phone booted into the basic screen with the directory, settings and services buttons all working, but nothing else and being completely unprovisioned.

So, here is what I started out with:
Model 7970G
Load file: TERM70.7-0-SR1S
Boot Load ID: 7970_6406118.bin
Call Control Protocol: SCCP (Skinny)

I have option 150 enabled in my DHCP server. I don't know if I need it or not, but I did it for a 7940 that did not want to upgrade (see the 7940/7960 article on how to set up option 150 and why).

So after some fiddling around, I got it to accept the v8.2.2SR4S SIP firmware!

There is a great article here on Voip-Info with many intricate settings and configurations. In the checklist on this page, I am missing the SIP70.sbn file, but it upgraded anyway.

After initially booting, my TFTP server tried to serve the following files:
Serving CTLSEP0016C7414900.tlv - Does not exist
Serving SEP0016C7414900.cnf.xml
Serving English_United_States/td-sccp.jar - Does not exist
Serving United_States/g3-tones.xml - Does not exist

I had to hard-reset my phone (see below on how to do this), after which the phone pulled a LOT of other files:

Serving term70.default.loads
Serving Jar70.72-1-0-1.sbn
Serving cnu70.72-1-0-1.sbn
Serving CVM70.72-1-0-1.sbn
Serving CTLSEP0016C7414900.tlv - Does not exist
Serving SEP0016C7414900.cnf.xml
Serving SIP70.8-2-2SR4S.loads
Serving Jar70sip.8-2-2ES6.sbn
Serving English_United_States/td-sccp.jar - Does not exist
Serving United_States/g3-tones.xml - Does not exist

I had to change the Jar70sip.8-2-2ES6.sbn file on my TFTP server, as it started with a lower case: jar70sip.8-2-2ES6.sbn. After this change and an other factory reset, it took a very long time on the notification 'Verifying Load', but when it was done it rebooted and went into the 'Firmware upgrade' mode.. Finally, success!

Note: Sometimes it is necessary to unlock the settings of the phone. Certain firmwares, like 8.4, can be unlocked by opening Settings -> Security Configuration, and typing **# to unlock the config screens.

At that point, the phone was running with the v8.2.2SR4S firmware but it could not register in Asterisk. There was a red X next to the extension, even though the messaging URL worked (I could check voicemail). I could not, however, make any regular calls. I was able to call the extension of the 7970, but I could not pick up the line, neither on speaker or on the handset.

Oddly enough, the Trixbox phone provisioning system fixed the issue: By creating a Trixbox-provisioned SEP.xml.cfg, the phone worked fine after a reboot. The only issue that I had, was that Trixbox provisioned for the wrong firmware version, so the phone complained about that. Updating the SEP-file with the correct firmware revision fixed that problem as well.

Now, I have a working 7970 connected to my Asterisk!

I'll be playing around with this phone over the coming period. Any additional comments or experiences will be updated in this article.

Performing a factory-reset on the phone when you get stuck
If you happen to find a 7970 where the screen will not turn on after a
reboot, and the line lights blink green in sequence with the Headset
button illuminated, then your CTL file system is corrupt. Here are the
steps you need to take to format the flash, recover to the default
configuration and reload the default load:

1) Power off 7970
2) Power on 7970 (with a power-brick) while holding the # key
3) The lines lamp should blink amber in sequence, let go of the # key
4) Press 123456789*0#
5) The lamps should blink green in sequence
6) The phone will obtain IP information via DHCP
7) The TERM70.default load will be loaded on the phone
8) The phone should recover the configuration file from CallManager, if
not reset with **#** and your confriguration will be restored

If you do not have a power-brick connected, while doing the 'Factory
Restore' then this process will fail because the 7970 cannot TFTP the
TERM70.default load from itself with inline power.

Changing the background image
Changing the background image on this phone was actually quite easy. Since I use Trixbox as my Asterisk server, it already came with the basics, so all I needed to do was update the List.xml and upload my images.

First of all, images are no longer loaded over HTTP, but over TFTP. You also do not need to reboot the phone to get it to see the new image (or even the new image list): It is updated on the fly.

I simply resized a JPG image from my camera to 320x212 pixels and saved it as a PNG, named MyPhoto.png (obviously, name it whatever you want). Then, I resized it again to 80x53 and named it MyPhoto_sm.png to distinguish between the thumbnail and the full background.

I copied both backgrounds into my TFTP directory - under a specific subdirectory:
In that directory should be a file called List.xml. Open that file, copy one of the 'ImageItem' lines and replace the first image reference with MyPhoto_sm.png and the second image reference with MyPhoto.png, to make both the thumbnail and the background available.

Once done (make sure that the file owner and permissions are set correctly), press 'Settings -> 1 -> 2' on the phone and your image should show up.

Just worth mentioning: I have read that the maximum depth is 4096 colors, but the directory name suggests 12k colors... I did not mess with the color depth as the phone appears to interpret it properly without changing it, so YMMV.

Screen Backlight Timeout
The screen on the 7970 has an automatic timeout function. To set a custom time for this to happen, edit the SEP.cnf.xml, locate the vendorConfig section, and append this to the settings within it (so right before the < /vendorConfig >-tag) and adjust to your liking:

<daysDisplayNotActive>1,7</daysDisplayNotActive> <displayOnTime>07:30</displayOnTime><displayOnDuration>10:30</displayOnDuration><displayIdleTimeout>01:00</displayIdleTimeout>

MWI - the Message Waiting Indicator
The MWI (the red light that indicates new voicemails) has been working flawlessly since Asterisk version 1.4. However, there are times that the MWI does not work out of the box with certain Asterisk implementations. I have had the issue with a roll-your-own Asterisk 1.4 with FreePBX. After researching the issue, the directive 'buggyciscomwi=yes' comes up in a lot of articles online. This is however, a WRONG DIRECTIVE. The right one is 'buggymwi=yes'. So, in order to fix the issue, add this directive to your sip.conf file or, if you use FreePBX, edit sip_general_custom.conf in your Asterisk config file directory and either add buggymwi or replace the faulty buggyciscomwi.

Saving presets in the empty additional lines
This too can be done in the configuration file of the phone. Just find the < sipLines >-tag in the file and add a line with the following settings:
<line button="8"> <featureID>2</featureID> <featureLabel>My best friend</featureLabel> <speedDialNumber>305-555-5555</speedDialNumber></line>

Obtaining the latest firmware
Firmware for these phones is a hot topic on several forums. The official word is that you need to get a $30 USD annual update subscription for the Cisco website, which you can only get through a Cisco reseller, of which very few are willing to sell individual licenses. There are some online stores that are able to sell these, though.

An other option is eBay or other market sites. Some sellers sell CD's with firmware versions, although I doubt the legality of most of these CD.

Then there is the carefully crafted Google search. Once again, legality is doubtful but it may give you an immediate answer (and an immediate firmware download).

Other resources
A page dedicated to this phone.
An other page describing the config files. Not related to Asterisk, but an other SIP server. The phone config is the same, though.

Found this article useful? Please consider buying me a beer - or something else useful..
blog comments powered by Disqus

Terug naar Mollien Dot Net

Terug naar Mollien Dot Net

Terug naar Mollien Dot Net
Total Hits: 1
Unique Visitors: 1
Page Impressions : 1
Remote address: