I had to google around quite a lot to find a quick way for changing the default display language on Grandstream GXP series IP phones. That’s why I’m coming up with my own howto.

This short guide should work for all Grandstream IP phones (as long as I know it should work at least with all GXP phones), but it has been tested only with the GXP1200.. so keep your eyes open while adapting this guide to your scenario.

You’ll need a web server to provide the language files to the IP phone: you should use your Asterisk PBX or another web server you have access to. Just connect to the web server as root and create a directory for firmware/language packs. For example:

mkdir /var/www/html/provisioning

Now grab the GXP Language Pack from Grandstream website: https://www.grandstream.com/firmware/BT200_GXP/GXP_Language_Pack.zip [link dead]
Inside the language pack you will find the following secondary languages zip files:

Catalan
Croatian
Czech
Dutch
Estonian
Finnish
French
German
Hungarian
Italian
Polish
Portuguese
Serbian
Slovak
Slovenian
Spanish
Swedish
Turkish

Unzip the one you need and put its content (“gxp.lpf”) in the provisioning directory you created on the web server. I suggest you to rename the gxp.lpf file and add a postfix according to the language chosen. Let’s say, for italian language:

mv /var/www/html/provisioning/gxp.lpf /var/www/html/provisioning/gxp_IT.lpf

Now open your browser and connect to the administrative web interface of your IP phone. Enter your password and click on “Advanced Settings”. Scroll down to “Firmware Upgrade and Provisioning” and enter in the server path boxes (“Firmware Server Path” and “Config Server Path”) the full path to your provisioning directory, e.g.

192.168.1.4/provisioning

Then, scroll down to the bottom (“Display Language”) and check “Secondary Language”. Insert in the “Language File postfix” box the postfix of your language file. Following my italian language example, that will be:

IT

Click the “Update” button, then reboot and you’re done!