Configuring Cisco 12SP phones with Asterisk

Configuring Cisco 12SP+/30 VIP phones with Asterisk

This page documents how you configure a Cisco 12SP+/30VIP phone with Asterisk.

The Cisco 12SP+/30VIP IP Phones are EOL and they are not supported by Cisco anymore.

Cisco states that they do not have any listings for this phone and offer no support or downloads for it anymore.

What you need:

A Hex Editor of some kind
TFTP server
Firmware image file ( P002L2J2.bin 128368 bytes )

Let's start off with SEPDefault.cnf.

SEPDefault.cnf is a 17-byte long BINARY file not an ASCII text file

Open up your SEPDefault.cnf in your hex editor and look for the highlighted section in the example.

The hexadecimal breakdown is here:

Offset 0x0: Header:

01 01 00 01 02

Offset 0x5: Server IP:

C0 A8 01 5A

Offset 0x9: Buffer:

01 03

Offset 0xB: Port number (2000):

D0 07

Offset 0xD: Footer, EOF:

00 00 01 FF


Use a binary calculator such as "bc" to calculate the value.
You can also use the standard calculator that comes with Windows to make these cconversions. Just click on the View menu and switch to Scientific mode. A full binary/hex/octal/decimal calculator is available in this mode.

bash-2.05b# bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.


In this example, CO A8 01 5A is the IP address of my * server. Change that value to what your ip address of your * server is.

Save this file as SEPDefault.cnf and upload it and your firmware image file to your tftp server.

On your phone, press ' **#' and set your ip address, netmask, dns server, gateway (point to * server). Press * to save your settings.

edit /etc/asterisk/skinny.conf in your favorite text editor

you should have a section similar to this

version=P002L2J2 #The version of your firmware file ( P002L2J2.bin )
line => 1234

Make sure you add a section to extensions.conf for this phone as well

exten => 1234,1,Dial(Skinny/1234@florian1,30)

Shut down and restart your asterisk server once you have made changes to your skinny.conf file. You MUST do this! A reload will NOT work!

If your phone has a different firmware version on it, it will upgrade/downgrade it depending on what version is on your tftp server and specified in skinny.conf.

If it is different, your phone will say "Programming" when it boots up and downloads the files.

With the version of the firmware in this HOW-TO, your phone should say

Copyright 1999 L2.J2
Cisco Systems Inc.

If you are running your * server in verbose mode ( asterisk -vvvvvvvcg ) you should see some lines like this

— Starting Skinny session from (Phone's IP address)
Device SEP(MacAddressofPhone) is attempting to register
— Device '(Section name of this phone in skinny.conf)' successfuly registered
Requesting capabilities
Version Request
Received CapabilitiesRes
Buttontemplate requested
Received Time/Date Request

Go ahead and pick up the reciever or hit the speakerphone button, and if all went well, you should have dialtone!

Don't forget to setup your voicemail box with that handy little script provided in ./asterisk-src/contrib/scripts.

Download P002L2J2.bin from

See Also

This page was haxored at Sun 12 of Dec, 2004 (21:21 UTC)

64103 people have read this page

Created by: kFuQ, Last modification: Sat 13 of Mar, 2010 (06:55 UTC) by bombcar
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+