Cisco 7940 can not be factory reset

I have a Csico 7940 phone with network and sip setting locked. I am trying to do factory reset but common procedure holding # , plugin power cabe, when leds flashing in turn, releasing #, the press 123456789*0# doesn’t work.

Some comments saying using a DHCP sever to provision the TFTP server address and a TFTP sever to load the firmware for recovery. I setup a solarwinds DHCP sever. The phone IP address could be changed to, but the TFTP sever address couldn’t. It is always thought I set it in the server conf. Anyone has the experience?

corydon means that the TFTP server will bind to all IP addresses of the machine where it is installed.


Sorry not clear your comment, could you elaborate? What I am trying to do is to let the Cisco 7940 get the TFTP server address of

The topology is just 2 devices interconnected by once lan cable: 1 Cisco 7940 and a Windows 10 laptop with DHCP server and TFTP sever on it. The windows 10 has the the IP and It seemed 7940 has the IP of I set the DHCP option 150 in the DHCP sever conf. But it seems not provisioned to phone.


Sorry, I misunderstood you.
What DHCP server are you using? Not all DHCP servers have a direct way of setting Option 150.

I ma using Open DHCP server.



@cynjut is very knowledgeable on Cisco 79xx, hopefully he might jump in here.

If you are trying to get it back to Skinny mode, you’ll need to use the method using a factory load file and DHCP.

  1. You will need to configure your DHCP server to offer configuration information on option 150. This is possible from the DHCP server that comes with FreePBX (you can set the option 150 address there). If you are using some other non-standard DHCP server, you will need to set it up so that it provides the phone with the correct TFTP server address.

  2. Once you have DHCP set up, you can use the Factory Reset Sequence to brick the phone. Note that there are several, depending on the specific model of the phone, so the one you are using may or may not work.

  3. In the TFTP server, set up the SEPxxxxxxxxxxxx.XML file so that the options (including the correct firmware version) is set correctly. Optionally (well, recommended but not required) is the OS79XX.TXT file (spelling and case are critical) which contains the firmware version for all of the phones supported by that file.

  4. You have to make sure that the firmware version file name is exactly the same as the firmware you are trying to load, and the load file names vary wildly from version to version.

  5. Once you get the SCCP firmware loaded, proceed with the instructions I reference in here:
    Interesting new success with Chan-SCCP-B and SCCP-Manager (both from GitHub)

This will give you the full capabilities of the phone without having to patch anything. The Skinny module handles all of the heavy lifting.

1 Like

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.