Cisco IP Phones 79XX with Asterisk

 

 

Recently we had a pack of cisco 7942G phones that we were required to get them up running with Asterisk. The good thing about 79XX series is that they all support SIP besides SCCP. Whereas, the bad thing is that they are by default running on SCCP and you have to upgrade them to SIP first. I spent a great deal of time trying to figure this out, as I were going to use SIP Version 8 and there is no to-the-point documentation (at least not that I could find!)

 

Here are the steps you need to get this up and running:

Cisco phones 79XX series support 2 protocols: SCCP (skinny) and SIP. By default the phones are working with SCCP. The way to get the Cisco phone to work with Asterisk is to load the SIP firmware into the phone and then configure the extension. For this to work you need a TFTP server plus a DHCP with option 150 enabled – an option to auto-provision the tftp server ip address when the DHCP server hands out the regular ip address to the phone.
Without an auto-provisioned tftp server address, the phone will only complete half the upgrade and come up with an error message of “protocol application invalid.” This just means that the phone could not complete the second half of the upgrade and needs the tftp ip address to be specified. Only problem is since there is no application running, there is no place to specify the address! Thank goodness for DHCP option 150 which does this for us when the phone grabs an IP address after loading the bootloader.

Below are instructions to upgrade/convert any Cisco 7940, 7941, 7960, 7961, 7970, 7971, 7942, 7962, 7945, 7965 IP phone to any firmware you want from the Cisco web site (SIP/SCCP), and to recover any cisco phone which may have screwed up somehow while upgrading firmware (like if you get the protocol application invalid message).
Step 1: Upgrading to SIP firmware 8-5-3
1) Download SIP firmware 8.x from CCO Cisco Web site

Download  7941_7961-sip.8-3-1 Or 7942_7962-sip.8-5-3

you need to be a registered cisco partner with a valid service contract otherwise you cannot download it directly from cisco website, which in our case is true. so you need to search for the firmware. check the links below

ftp://ftp.itl.ua/pub/cisco/ip-7900ser

http://radiotwenterand.nl/~graver/cisco/SIP-7960/

2) Download the .zip file and extract it into your TFTP root directory. (See next step)

Step 2: Download and configure the DHCP/TFTP server
1) TFTP/DHCP server under windows:

a. Go here to download the tftp/dhcp server – http://tftpd32.jounin.net/
Download and install version 3.23 (<–YOU MUST DOWNLOAD AND INSTALL THIS VERSION. I have had many people complaining about their phones not obtaining a correct ip address and also the files not being sent correctly. Every one of these problems was due to using the incorrect version and/or having their firewall on).

b. You will also have to configure your windows machine to use ip address of 192.168.1.1 and subnet mask of 255.255.255.0.
Youll configure this tftp server to host the upgrade files via tftp server (theres an option to configure the working directory in the program to use for the stored firmware files on the windows machine – this must be set correctly!).

c. Under DHCP server within the tftp32 program, enter the following and click SAVE:

-IP pool starting address as 192.168.1.2
-Size of pool as 250 (if doing multiple phones, this just makes sure your phones are able to receive an ip address)
-Default router as 192.168.1.1
-Mask as 255.255.255.0
-Additional option, enter 150 in the first box, then 0x0101A8C0 in the second box (this number is 192.168.1.1 in Hexadecimal).

2) TFTP/DHCP server under ubuntu:

First you need to install tftp server:

# sudo apt-get install tftpd-hpa

Second you need to download dhcp server.

# apt-get install dhcp3-server

Thrdly, for option 150 you need to do the following changes in /etc/dhcp3/dhcpd.conf
a) edit /etc/dhcp3/dhcpd.conf
b) Copy the following section in the appropriate place

option voip-tftp-server code 150 = ip-address; # DON’T change this
option voip-tftp-server _PBX-IP_;

default-lease-time 600;
max-lease-time 7200;

option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name “smartpbx.lan”;

subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.200;
}

d) restart tftp and dhcp server:

# /etc/init.d/dhcp3-server restart
# /etc/init.d/tftpd-hpa restar

Step 3: Configuration
1) Download the file XML.Default.cnf.xml copy it in tftp boot folder (/var/lib/tftpboot)

make sure you write the correct firmware filename in <loadInformation>SIP42.8-5-3S</loadInformation>
2) Download SEP<MAC_Address>.cnf.xml from below web links and put it in firmware directory. You must put the MAC address of each phone in the file (eg. SEP24B657B1DED4.cnf.xml). Note that for every phone you need one file with the MAC address of the phone.
3) Download the file dialplan.xml and copy it into the firmware directory.
<DIALTEMPLATE>
 <TEMPLATE MATCH="*" Timeout="5"/> <!-- Anything else -->
</DIALTEMPLATE>

Step 4: Configuration on the Asterisk PBX side
The only thing you need to do on the Asterisk is to create a valid SIP extension. The point is you need to set “nat” to “no” otherwise you’ll have to go through a lot of hassles to get

the phone to register to Asterisk.

Step 5: Reset factory the phones and start configuration

Power Cycle the phone. Hold down the # key then power on the phone. When the light blinks on the phone line button, release the # key, then follow by pressing 123456789*0#. The firmware you put in the tftp root folder will start loading.

Once firmware upgrading finishes, verify the new SIP firmware version. Press “setting” then select ;
A – Device Configuration > SIP Configuration
B – Model Information > Load File, Boot Load ID
C – Status > Firmware Version


Sources:

Asterisk phone cisco 79×1 xml configuration files for SIP

Asterisk phone cisco 79xx

Configure Cisco IP Phones with Asterisk

Setup Cisco 7941 or 7961 with Asterisk

load SIP or SCCP on a Cisco Phone

You may also like

Leave a Reply

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