The VoIP Addict’s Guide – Polycom and TFTP
Simply put: Trivial File Transfer Protocol (TFTP) is a no-frills method of moving files from one place to another. There’s no authentication, and there’s no encryption. It is, however, one of the most common ways to place a select version of firmware on a phone, and for our discussion, a Polycom phone.
Why Polycom? Well, it’s the golden standard by which we measure all other phones. Also, because it has the most confusing firmware.
So, why even bother changing firmware?
Well, you might not need to. However, we may change firmware on a phone for a few reasons:
- There might be a software bug
- There might be a vulnerability
- There might be an interoperability issue
- There might be a new feature
Typically, upgrading your phone system will require a phone firmware upgrade. Documentation might suggest making a phone firmware change to leverage a new feature. If you are an installer, or integrator, and want to be good at your job, always read your system’s firmware release documentation.
How to Upgrade a Polycom Phone Firmware
Let’s get down to business. First, install a TFTP server.
Luckily, most TFTP servers are free, just like the best things in life. We recommend the one from SolarWinds.
After installing, open the TFTP server.
By default, TFTP uses UDP port 69, and c:\TFTP-Root as the root directory. You’re welcome to change the root directory by going to File -> Configure, and going to Storage, but for our purpose, we’ll leave it as it is.
Next, download the recommended firmware from Polycom. Double check your documentation for the correct version and also check your bootrom version currently on the phone.
Bootrom is code that is run when a phone first starts, and it executes the actual firmware. Older bootrom versions will not always be compatible with newer firmware, so when downloading from Polycom, make sure to RTFM (Google it if you don’t know) before proceeding with an upgrade because you end up in a boot loop. Luckily you should be provided with the correct bootrom file for the intended firmware version.
Extract the files you downloaded into the TFTP root directory, which is indicated on the bottom of the TFTP server window. Make sure the firmware files AND the bootrom file in included in the root directory to avoid any mishaps.
You’ll also notice that there are two types of downloads, combined, and split. Combined is a single universally accepted firmware across a range of phone models. The split has the firmware broken out by phone model. The split will load faster due to the files being much smaller.
Now configure your Polycom phone to connect to the TFTP server:
- Plug in your Polycom IP Phone and press the SETUP button to stop the auto-boot process when prompted.
- Enter the password 456 when prompted
- Scroll down and select server menu
- Edit the server type to “Trivial FTP”
- Edit the server address to the IP address of the PC running the TFTP server
- Exit the server menu, and exit the setup menu.
- The phone will prompt you to save and reboot, select OK
- After rebooting, the phone will go through its auto-boot process again, and then display “Uploading Bootrom” on the screen
- You will also see verification on the TFTP Server as the bootrom and firmware files are being uploaded to the phone
- When the phone completes its boot cycle, it will briefly display a welcome screen, which shows the current firmware version loaded
- If you see this version, you have successfully upgraded your Polycom phone
Using the DHCP option 66 method:
DHCP option 66 is a pointer some devices read when they receive their IP address information. By setting option 66 in your DHCP server to the IP address of the TFTP server, you can avoid manually setting the TFTP server address in all of the phones you are upgrading.
Multiple phones may upgrade at once, but if you are using the combined firmware, you could experience a much-delayed process.
Also keep in mind that because TFTP is an extremely unsecured protocol, you’ll want to keep these file transactions on your local network.
Thanks for reading and happy VoIPing!