I recently bought some Cisco IP phones off of ebay so I could start my own VOIP lab at home. I purchased a 7940G and 7912G to start out with. The 7912G wasn’t too big of a pain; I basically had to reset the phone to factory defaults (no big deal thx to documentation online–and it already had SCCP). Well the 7940 was a different story. It was configured with MGCP firmware with a non-default password. I ended-up trying the two recovery methods on Cisco’s site. Needless to say, holding “#” while resetting didn’t work (it’s meant for SIP phones) and the “**#” didn’t work either (as it’s meant for SCCP phones). I was left wondering how I was going to get my 7940 working.
After google failed me, I came across this link
Talk about vague, but I somehow willed myself to figure it out (procedure D was what I was looking at).
Here’s my convoluted thought process:
Look at MGCP firmware files and see what’s included
You basically see the following:
OS79XX.txt
P003-07-7-00.sbn
P003-07-7-00.bin
P0M3-07-7-00.loads
P0M3-07-7-00.sb2
The example files I’m using above are for MGCP 7.0 firmware. To explain the above (if I remember right), the sbx files are signed, whereas the bin file is un-signed. What IS important is what the default value is in the “OS79XX.txt” file. Here is what you will see in that file:
P003-07-7-00
So when your MGCP phone boots up and gets its TFTP server it will ask it for that file (to see if it needs to upgrade). I had tftpd32 running on my PC and was looking at the log to help me figure out what the phone was looking for during boot-up. This really helped me to get this working. Now if I would have left it at what you see above, it would have upgraded me to build 7.0. I need to go to SCCP, so I changed the txt file to read:
P0030702T023
Don’t insert any extra lines like I did. When I was looking at the log I noticed the phone asking for the P0030702T023.x files but it had a weird character in it. Once I got rid of the extra line it worked fine.
Here’s your typical SCCP firmware (the one I’m going to use for my 7940G):
P0030702T023.sbn
P0030702T023.bin
P0030702T023.loads
P0030702T023.sb2
So by changing the MGCP txt file on your TFTP server above to contain the image name for your SCCP files, you cause it to attempt to change to SCCP (you could do the same if you wanted to go to SIP too).
So when looking at the tftp log, you’ll see it asking for another file now “MGCDefault.cnf” (among others)
This is a file you can download in the MGCP firmware section on the CCO. You basically have to edit one line.
Change “image_version: P0M3-03-0-00″, to “image_version: P0030702T023″
Here’s part of the config file (I doubt you need the rest since we are concerned with SCCP not MGCP):
# Generic MGCP Default Config File Options
#
# Any or All of these options can be configured
# in the user config file (MGC
# The user config file options override any options
# specified here in the Default Config File.
# :sample user config file name: MGC003E362FE92.cnf
# image_version - specifies which image version should
# be on the phone. This is used to upgrade from an
# MGCP image to a diferent MGCP image. The OS79XX.TXT
# file is only used to switch protocols (ie. SIP to MGCP).
image_version: P0030702T023
# tftp_cfg_dir - specifies the directory to use for the
# retrieveing the MGC
# for the directory is the base TFTP Server directory.
# tftp_cfg_dir is limited to 64 characters.
tftp_cfg_dir : “”
So basically having the SCCP firmware and those two files in the root of the TFTP server made everything work. The key is to look at the log on the TFTP to see what the phone is asking for. You’ll finally see the phone start pulling the SCCP files in the TFTP log.
Phone now upgraded to SCCP, no more MGCP and no more password.
I’m pretty new to this phone firmware business, but I’m slowly learning I guess.
May 13, 2008 at 4:23 pm
I had a problem just like this - the configuration was locked to a static IP with the TFTP server located outside of that network. I used a (real) router - not a Linksys - to network the two IP schemes together with my laptop. I used PumpKIN as my TFTP server and the configuration and firmware loads were given to me.