Cisco 7940 & 7960

7940 7960

Cisco 3750 switch config

These phones contain a three port switch, one external port is the uplink to the ethernet switch (and pbx), the other external port connects to a downstream device such as a pc. My config uses a voice vlan (vlan 7), this is disabled on a 3750 switch by default. The following enables it and sets up the port.

IOS config (3750)

interface FastEthernet1/0/15
 description Room 101 7960
 switchport mode access
 switchport voice vlan 7
 spanning-tree portfast

7940 registration with trixbox

My 7960's worked with almost no effort so when I bought two 7940's I just used the config for an extension with a 7960.

This didn't work, the 7940's would not register, but the 7960's would. The same firmware is used for both.

The solution seems to be, set:-

extensions.conf
nat=never
qualify=yes

Source http://fonality.com/trixbox/node/32491

Registration with FreePBX

Force rport = No
Rewrite Contact = No

Speed Dial button setup

The extension button at the top is programmed from the .cnf files, but unused buttons at the bottom on a 7940 (two buttons) and 7960 (six buttons) can be set via the user menus.

On my 7960, with POS3-8-12-00 firmware

Settings → 6 call prefs → 9 speed dial lines,
Select a free line to configure.

I cannot see as yet a way to set this via the cnf file.

Speed Dial at bottom of LCD screen

79xx dial from cli via telnet

> test open
> test offhook
> test key 201#
> test onhook
> test offhook
> test key 222#
> test onhook

https://stackoverflow.com/questions/10116212/how-to-dial-a-call-on-cisco-voip-7940-from-my-pc

Use “reset” command from cli session to Reboot (eg to pick up a new config).

> reset

Reboot and Factory Reset

Reboot

To reboot Cisco 7940/7960 IP phone hold down the following keys :-

“*” and “6” and “Settings”

To perform a factory reset (hard reboot)

  1. Disconnect the phone from the network.
  2. Hold down # whilst plugging the phone back in.
  3. Wait until Green Headset light has extinguished and message on LCD says sequence accepted.
  4. Enter “123456789*0# within 1 minute.
  5. Choose to keep or erase network settings as prompted.
  6. Factory reset will proceed and phone will reboot.

Firmware upgrade from SCCP to SIP

Most 7940 and 7960 phones will be loaded with SCCP firmware to talk to Cisco Call manager systems. SIP firmware images are available to load but trouble can be experienced loading it. The sequence below shows the files requested converting a SCCP image to SIP. I want to end up with POS3-08-12 as it seems the most current code, but attempts to load it were unsuccessful initially.
It seems that you have to load an early version and upgrade in steps.

Jul 19 20:17:28 localhost dhcpd: DHCPREQUEST for 192.168.5.205 from 00:14:a9:10:43:e4 via eth0
Jul 19 20:17:28 localhost dhcpd: DHCPACK on 192.168.5.205 to 00:14:a9:10:43:e4 via eth0
Jul 19 20:17:31 localhost dhcpd: DHCPDISCOVER from 00:16:47:39:a8:3d (SEP00164739A83D) via eth0
Jul 19 20:17:31 localhost dhcpd: DHCPOFFER on 192.168.5.250 to 00:16:47:39:a8:3d (SEP00164739A83D) via eth0
Jul 19 20:17:31 localhost dhcpd: DHCPREQUEST for 192.168.5.250 (192.168.5.17) from 00:16:47:39:a8:3d (SEP00164739A83D) via eth0
Jul 19 20:17:31 localhost dhcpd: DHCPACK on 192.168.5.250 to 00:16:47:39:a8:3d (SEP00164739A83D) via eth0
Jul 19 20:17:31 localhost in.tftpd[1145]: RRQ from 192.168.5.250 filename CTLSEP00164739A83D.tlv 
Jul 19 20:17:31 localhost in.tftpd[1145]: sending NAK (1, File not found) to 192.168.5.250
Jul 19 20:17:31 localhost in.tftpd[1148]: RRQ from 192.168.5.250 filename SEP00164739A83D.cnf.xml 
Jul 19 20:17:31 localhost in.tftpd[1148]: sending NAK (1, File not found) to 192.168.5.250
Jul 19 20:17:31 localhost in.tftpd[1149]: RRQ from 192.168.5.250 filename SIP00164739A83D.cnf 
Jul 19 20:17:31 localhost in.tftpd[1149]: sending NAK (1, File not found) to 192.168.5.250
Jul 19 20:17:31 localhost in.tftpd[1150]: RRQ from 192.168.5.250 filename MGC00164739A83D.cnf 
Jul 19 20:17:31 localhost in.tftpd[1150]: sending NAK (1, File not found) to 192.168.5.250
Jul 19 20:17:31 localhost in.tftpd[1151]: RRQ from 192.168.5.250 filename XMLDefault.cnf.xml 
Jul 19 20:17:31 localhost in.tftpd[1152]: RRQ from 192.168.5.250 filename P003-8-12-00.loads 
Jul 19 20:17:31 localhost in.tftpd[1152]: sending NAK (1, File not found) to 192.168.5.250
Jul 19 20:17:32 localhost in.tftpd[1153]: RRQ from 192.168.5.250 filename P003-8-12-00.sbn 

This was the first head scratcher, I had a SEP config file with the MAC address of the phone, but tftpd showed it could not be found. The phone showed it was trying to load P003-8-12-00.sbn, even though I had my SEP00164739A83D.cnf.xml and OS79XX.TXT referring to P0S3-05-0-00. P003-8-12-00.sbn loaded from tftp but the phone gave a message about not being able to load the application. A directory listing of /tftpboot showed:-

r--r--r-- 1 root root 1170 Jul 16 20:06 SIP00164739a83d.cnf
r--r--r-- 1 root root   89 Jul 19 20:16 SIP00164739a83d.cnf.xml

1st rule of UNIX, everything should be treated as case sensitive even if it on rare occasions isn't. Changing to all upper case filenames solved this. The log extract below also shows the files loaded and their order:-

Jul 19 20:20:10 localhost in.tftpd[1196]: RRQ from 192.168.5.250 filename OS79XX.TXT 
Jul 19 20:20:10 localhost in.tftpd[1197]: RRQ from 192.168.5.250 filename SIPDefault.cnf 
Jul 19 20:20:10 localhost in.tftpd[1198]: RRQ from 192.168.5.250 filename SIP00164739A83D.cnf 
Jul 19 20:20:12 localhost in.tftpd[1199]: RRQ from 192.168.5.250 filename RINGLIST.DAT 
Jul 19 20:20:12 localhost in.tftpd[1200]: RRQ from 192.168.5.250 filename dialplan.xml 

Continual reboot, Protocol Application Invalid after updating from SCCP to SIP

Phone CLI information

You can telnet to the 7940/7960, once there, useful information is available. In this case, the phone is registered ok:-

SIP Phone> show register

LINE REGISTRATION TABLE
Proxy Registration: ENABLED, state: REGISTERED
line  APR  state          timer       expires     proxy:port
----  ---  -------------  ----------  ----------  ----------------------------
1     111  REGISTERED     3595        3408        192.168.5.17:5060
2     ...  NONE           0           0           undefined:0
3     ...  NONE           0           0           undefined:0
4     ...  NONE           0           0           undefined:0
5     ...  NONE           0           0           undefined:0
6     ...  NONE           0           0           undefined:0
1-BU  111  REGISTERED     3595        3407        192.168.5.17:5060

Note: APR is Authenticated, Provisioned, Registered
SIP Phone> 

Still trying to debug this failed upgrade message…

SIP Phone> show status

Current Phone Status
--------------------
W361 DNS Server Unavailable
W710 Loader failed upgrade to P0S3-08-12-00, ignoring reset

SIP Phone>

Directory XML structure

In SIPDefault.cnf, set

directory_url: "http://192.168.123.123/directory.xml" 

Example directory.xml file is below, the first line seems to have to be <CiscoIPPhoneDirectory> anything else causes an error on the phone CMXML Error, the <Title> tag displays on the top line of the screen, whilst the <Prompt> tag displays on the bottom line.

<CiscoIPPhoneDirectory>
   <Title>Telephone Directory</Title>
   <Prompt>People on VOIP</Prompt>
   <DirectoryEntry>
      <Name>37 Work Room</Name>
      <Telephone>301</Telephone>
   </DirectoryEntry>
   <DirectoryEntry>
      <Name>39 Front Room</Name>
      <Telephone>302</Telephone>
   </DirectoryEntry>
</CiscoIPPhoneDirectory>
 
voip/cisco7940-7960.txt · Last modified: 10/11/2023 15:08 by andrew