Cisco Factory Defaulted Phone Fails to Boot

This is related to yesterday’s post about Cisco changing the phone firmware signatures in 8.5.2(SR1).  To quickly recap the underlying issue is that a phone with firmware prior to 8.5.1 trying to connect to a system with firmware 8.5.2(SR1) or later will fail it’s upgrade due to “Auth Fail”.  This is because Cisco changed the firmware package signature in 8.5.2(SR1) and only firmware 8.5.1 and 8.5.2 have the new signature as well as the old signature.  This means you must upgrade to 8.5.2 before you can upgrade to 8.5.2(SR1) or later.

This trickles down to a factory defaulted phone that runs a firmware prior to 8.5.1.  The way factory defaulting works is once you default the phone it knows to request a specific file from the TFTP server to figure out what versions of what to load.  This file is named “termXX.default.loads”.  The XX is the two digit model number in question. The problem is created when a device pack or service pack is installed on the server that includes firmware 8.5.2(SR1) or newer.  Along with all the firmware files the termXX.default.loads files are overwritten automatically by the latest version installed.

This means if you install 8.5.4 but go to Device Defaults and specify the 8.5.2 version it won’t matter for a factory defaulted phone because the termXX.default.loads file is from 8.5.4 pack.  The reverse is also true.  If you are running 8.5.4 but due to this issue go and install 8.5.2 your termXX.default.loads will now reflect 8.5.2 so all defaulted phones will also go to 8.5.2 and then have to upgrade again to 8.5.4 even if they were already at 8.5.4 previously.  This means if you install a downgraded version of firmware you need to make sure to go back and re-upload the currently installed versions of the termXX.default.loads files.

Checking Your Default Loads Files
This is actually pretty straight forward since the file is in plain text.  Simply use a TFTP client and request the “termXX.default.loads” file for the model of phone you are curious about.  Open it in a text editor and you should see the filenames it will instruct the phone to request.  From those filenames you should see the version number.

Downloading A Different Version of Default Loads Files
If you were like me when you first discovered you found that you needed an 8.5.2 file but the file reference 8.5.4 and the 8.5.2 was already installed.  This isn’t an issue since you can get the correct file from CCO.  If you haven’t installed the 8.5.2 simply backup (Via TFTP) the current version of the file, install the old version and then re-upload the backed up version of the file to restore it to the original state.  If you don’t need the firmware just the file simply go to CCO and find the phone in question.  There should be three files in each model’s area.  One is a .sgn which is for CUCM 5+, One is a .exe for CCM 4.x and the last is a .zip which says firmware files only.  You want to download the .zip firmware files only one.  Once you download it unzip it and you will find copies of your default loads files.

Replacing the Default Loads File
You need to log into the OS Administration section and then go to Software Updates/TFTP File Management.  If you search for termXX you can find the existing file there.  Simply upload the new version and it will automatically over-write the existing version of the file.

NOTE: Make sure you backup the existing one first so you can restore it later.

NOTE: You must restart the TFTP server after uploading the file for the new version to be offered.

You’re Done
At this point the phones that won’t boot should request the new termXX.default.loads file and download the 8.5.2 version of firmware.  Once that is done they should request the latest version assuming the device defaults references a newer version.



Leave a Reply