This post it originally from this website:
http://www.linuxnoobie.com/?p=18
I’m using a Cisco UC520 with Cisco Phone 7975 and 7945.
Step One: Create Your Images.
I use Photoshop CS4, but any photo editing software should do.
The images need to be 320 x 212 and saved in PNG format. I found that all the different was Photoshop saves PNGs tended to work. (Save for Web… vs Save As…) I used the PNG-24 format on Save For Web…
The key is… save is as a PNG and don’t get too hung up on all of the color density gobbledy gook they talk about on the Cisco website.
Now create thumbnails for these images by resizing each image to 80×53. It doesn’t matter what filename you use, just keep it consistent.
Just for reference, here are a few of the backgrounds I used:
Step Two: Transfer the Files to the UC520.
Now, get a TFTP server running on your local PC and put all of the PNG files into the TFTP directory. Since I use a Mac, I use the TFTP Server GUI found here.
Once the server is up and running, log into your UC520 Command Line.
Go into the “flash:Desktops/” Directory by typing# cd flash:Desktops/
# dir
This will print out a list of all of the desktop image files in your system.
Directory of flash:/Desktops/
130 drw- 0 Jan 10 2009 03:21:46 -06:00 320x212x12
132 drw- 0 Jan 10 2009 03:21:48 -06:00 320x212x16
134 drw- 0 Jan 10 2009 03:21:48 -06:00 320x216x16
136 -rw- 131470 Jan 10 2009 03:21:50 -06:00 CampusNight.png
137 -rw- 80565 Jan 10 2009 03:21:50 -06:00 CiscoFountain.png
138 -rw- 8156 Jan 10 2009 03:21:52 -06:00 CiscoLogo.png
139 -rw- 138278 Jan 10 2009 03:21:52 -06:00 Fountain.png
140 -rw- 109076 Jan 10 2009 03:21:54 -06:00 MorroRock.png
141 -rw- 108087 Jan 10 2009 03:21:54 -06:00 NantucketFlowers.png
142 -rw- 10820 Jan 10 2009 03:21:56 -06:00 TN-CampusNight.png
143 -rw- 9657 Jan 10 2009 03:21:56 -06:00 TN-CiscoFountain.png
144 -rw- 2089 Jan 10 2009 03:21:56 -06:00 TN-CiscoLogo.png
145 -rw- 7953 Jan 10 2009 03:21:58 -06:00 TN-Fountain.png
146 -rw- 7274 Jan 10 2009 03:21:58 -06:00 TN-MorroRock.png
147 -rw- 9933 Jan 10 2009 03:21:58 -06:00 TN-NantucketFlowers.png
128184320 bytes total (21442560 bytes free)
The first three directories (320x212x12, etc…) contain a “List.xml” file. We’ll get to this file in a minute.
Upload your images by typing the command:# copy tftp:<filenameOfFile.png> flash:/Desktops/
It will then ask you what the IP address is of your TFTP server (this is your local PC’s IP address) and it will copy the file to the UC500.
Repeat this for the thumbnail file as well:# copy tftp:<filenameOfThumbnail.png> flash:/Desktops/
Step 3: Edit the List.xml file.
The List.xml files (located in the 320x212x12, 320x212x16, and 320x216x16) directories is an xml file that the phones read to know the location of the PNG files we just created. The XML file looks like this:
<CiscoIPPhoneImageList>
<ImageItem Image="flash:/Desktops/TN-NantucketFlowers.png"
URL="flash:/Desktops/NantucketFlowers.png"/>
<ImageItem Image="flash:/Desktops/TN-CampusNight.png"
URL="flash:/Desktops/CampusNight.png"/>
<ImageItem Image="flash:/Desktops/TN-Fountain.png"
URL="flash:/Desktops/Fountain.png"/>
<ImageItem Image="flash:/Desktops/TN-MorroRock.png"
URL="flash:/Desktops/MorroRock.png"/>
<ImageItem Image="flash:/Desktops/TN-CiscoLogo.png"
URL="flash:/Desktops/CiscoLogo.png"/>
</CiscoIPPhoneImageList>
Downloading this list was tricky for me. First, I had to create a blank xml file in my TFTP directory (I called it List.xml) and make it world writable. (equivalent of chmod 777) This allows the TFTP server access to overwrite the file.
Then in the CLI, I ran:
# copy flash:/Desktops/320x212x12/List.xml tftp:List.xml
This copied the contents of the file over my temporary copy.
Now, edit this list and add your new file. The “Image” attribute in the XML refers to the thumbnail file while the “URL” attribute refers to the full image file.
For the file I included above, it would be this:
<ImageItem Image="flash:/Desktops/IwoJimaThumb.png"
URL="flash:/Desktops/IwoJima.png"/>
Step 4: Tell your UC500′s TFTP Server about the files
When I was figuring this out on my own, this was the step that I couldn’t figure out. It was NO WHERE in documentation that I could find.
I was going up to my phone, going into the Desktop Background chooser, and seeing empty spots where my pictures were supposed to be. The files were there, the XML was in place… WHY WASN’T IT WORKING!
Running debug commands to see the output of the TFTP traffic between the UC500 and Phones revealed that the phones were requesting the new graphics, but never getting them.
# terminal monitor
# debug tftp event
#
#
*Jul 31 04:19:07.484: TFTP: Looking for Desktops/320x216x16/List.xml
*Jul 31 04:19:07.564: TFTP: Opened flash:Desktops/320x216x16/List.xml, fd 10, size 916 for process 169
*Jul 31 04:19:07.568: TFTP: Finished flash:Desktops/320x216x16/List.xml, time 00:00:00 for process 169
*Jul 31 04:18:14.153: TFTP: Looking for /Desktops/IwoJimaThumb.png
*Jul 31 04:19:08.664: TFTP: Looking for /Desktops/TN-NantucketFlowers.png
*Jul 31 04:19:08.728: TFTP: Opened flash:/Desktops/TN-NantucketFlowers.png, fd 10, size 9933 for process 169
*Jul 31 04:19:08.768: TFTP: Finished flash:/Desktops/TN-NantucketFlowers.png, time 00:00:00 for process 169
I stumbled upon the solution in the documentation for uploading ring tones… and here it is…
I had not told the TFTP server of the UC500 it was OK to serve up those files. This config is stored in the running config of the UC.
So I had to run this command for each file:
# config t
(config)# tftp-server flash:/Desktops/IwoJima.png
(config)# tftp-server flash:/Desktops/IwoJimaThumb.png
... etc....