Simple GUI for Linksys SPA 962 / SPA942 / SPA941 Personal Directory

Updated Version now available:

We’ve been using the Linksys SPA942 handsets for a while and they have worked very well for us. One of the major annoyances for us and others is the inability to populate the personal directory automatically.

I’ve read a number of posts on how to use wget to issue to personal directory to the phone via a HTTP post and this seemed like a good solution. In particular this post and this post inspired me to see if I could create a solution using the same technique in VB.Net.

So I have put together a simple program which will allow you to load/save a personal directory to/from a tab delimited file or handset. There are loads of enhancements that could be made in order to make the application more sophisticated but this is really a first attempt, so please report any problems.  You will need .net framework 3.0 to run the tool.  I’ll put the project into a proper setup file if it is sufficiently popular.

Here is a screenshot of the utility:

Download the program from the newer post :

I’m using firmware version 6.1.5a, I’d be interested to hear if this does/does not work on other versions or if anyone has any suggestions for enhancements.

This is also a great way to backup/restore your Linksys SPA handset – I factory reset my handset and this much easier than re-entering all the personal directory.

34 thoughts on “Simple GUI for Linksys SPA 962 / SPA942 / SPA941 Personal Directory

  1. Can up/download to and from file, and download from SPA942, but get “Submitting Personal Directory
    The underlying connection was closed: The connection was closed unexpectedly.” error when I try to upload

    Grant has it going, so it’s something I’m doing or not doing…

    System is XP SP2 with .net framework 3 installed; SPA942 software is 6.1.5(a); hardware is 1.0.2(8971)

    Any suggestions?

  2. Do you have any special characters in your personal directory entries?

    I suspect it is one particular entry causing a problem, how many do you have?

  3. That was it – I was using an ampersand ‘&’ in the name field. Replace it with ‘and’ – and all is well!

    Thank you very much – both for the quick help and the original code – makes life much more pleasant!



  4. Thanks, I will add some code soon which encodes the special characters, so hopefully this won’t be a problem.

    Glad you found useful.

  5. I’ve used this with the spa962 and spa941.
    I was looking for a program like this.
    Only thing you can’t delete an entry, only overwrite it with another name and phone number. But that is only a little detail.

  6. This is the program I was looking for.
    I tested it on a SPA942 with firmware 6.1.5a and it worked fine.

    Couple of things I noticed:
    – In the status box (the field on the bottom right) it gives an output like etc.. Seems like it doesn’t parse the html code but this is not a big issue

    – if you plan to develop this tool further I would be happy with a way to push it to multiple phones. i.e. we have 30 phones and now I have to do each phone manually. If I could give some kind of starting IP range and end IP range it would be great.

    – i can resize the tool to a fullscreen application but the fields won’t resize along with it

    OPnce again, very nice tool! If you don’t want to develop it any further maybe there is a chance you share the code so we can do it ourselves.

    Cheers, Jamie

  7. Hi I like to agree with Jamie that it would be great to push the Directory to more than one Telephone.
    I take a look to your binary at my small private lab with an SPA941 with 5.1.8 without any Problems.
    The GUI did not scale and normaly did not show all three fields at one time.
    Cheers, Markus

  8. Great Tool very useful to back up all the different personal directories people have. I am using 942s with 6.1.5a and 5.1.15(a) and it works with both and is really useful as I need to upgrade all the phones to 6.1.5a and the easiest way is through TFTP but it only seems t work if the phone is Factory reset first ths deleting the directory. As others have said it would be great to provision more than 1 phone at a time and also if you load a directory with 30 items and then another phone with 10 entries it replaces the 10 but keeps the “extra” 20 from the previous phone.

    Thanks very much,


  9. Man, excellent tool! populate this phones is a big pain in the ass, but not anymore thanks to you…

    Just a couple of suggestions:
    1) I would be happy with a way to push it to multiple phones
    2) create a proper setup file for this… trust me.. will be very popular!


  10. Many thanks.
    this is what I was looking for.
    and please as David Spangle says:
    it would be great to provision more than 1 phone at a time and also if you load a directory with 30 items and then another phone with 10 entries it replaces the 10 but keeps the “extra” 20 from the previous phone.
    Thanks in advance

  11. Hi Everyone,

    I have just uploaded an improved version and will look to make more regular updates from now on.

    The new version fixes the following problems:

    Directory entries from previous lists are removed when loading a new list
    Entries on the handset are now deleted properly when uploading a directory with fewer entries than the handset has

    I have also resized the application, although it is still not scaleable you should be able to see a lot more than you did before. I know everyone wants a way to push the directory to multiple phones at the same time. I have a version that does this, just need to do a little bit more testing.


  12. Thank you very much for this excellent tool! It has just made managing the directories on our Linksys phones MUCH easier.

  13. Hello, i am very curious to try out the version for multiple phones, could you send me the file, or a link from where i can download the file.


  14. Amazing! Thanks so much for this, I was looking for something like that. it works perfect with the SPA962

  15. This is fantastic. from vista sp1 *shiver* to spa942 firmware 5.1.15(a). This has saved us considerable time and resource. Do you take donations?

  16. Thanks for this. It has helped me a lot. How’s the progress on your version that pushes directories to multiple phones? I am very interested in that one and can’t wait for you to make it available for download.

    Thanks again 🙂

  17. Hi
    Tried this tool on one of the new Cisco SPA500 Series, and i can read (download) the directory from the phone, but when i try to upload to the phone, i always get an error (error 400 – I think it means something was not found).
    My guess is the SPA500 has some differences on the web interface that cause this.
    Any ideas to make it work ?


  18. I guess that the web interface on the telephone is different. I could modify the code to suit, but I’d need a 500 Series in order to play around with it – I don’t have one so it is probably not going to get fixed. Sorry.

  19. This is an awesome utility which works very well and takes some time to figure out how to use correctly.

    in our office set-up, we had to leave a blank line in the tab delimited file and then enter the info afterwards and assign ring tones for various contacts.

    Problem we not have, is the office expanded and we bought spa942 replacement which is the Cisco 504g and the util does work as it reports that it cant find the device. Would be great if the util can be updated to support the newer ip handsets available.

  20. Torsten,

    I’ve always wanted to add a calling feature, but I cannot find anyway to make the SPA do this via HTTP, or indeed any other method, so if you find a way that works, I would gladly update the application to support this. But I do not think that there is a way.


  21. Will “save from”, but not “load to” SPA504G 1st generation after they re-branded/re-named this from the SPA942. Verified to not work with hardware version 1.0.2(0001), using stock firmware (7.4.3a) or latest firmware (7.4.9a).

  22. Hello Paulie,

    I have problem to upload contact list to SPA514G . Application crash and a pop-up comes up : Unhandled exception has occurred in your application …

    Is there any way to fix it ? Thanks for your help!


  23. I have bought this recently but it is neither working on Cisco SPA525 nor on SPA514,SPA508 any suggestions please

  24. I’m attempting to test this on a SPA525G. It attempts to communicate with the handset on the directory when in fact the personal directory of the phone web gui is on:

    From what I understand, this isn’t the way – and there isn’t away to change the directory.

    Attempting to communicate with SPA –
    Collected personal directory and cells
    Submitting Personal Directory to
    Finding correct page for submission…
    Required page for submission is
    The underlying connection was closed: The connection was closed unexpectedly.

    Any idea?

Leave a Reply

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