Grandstream Networks, Inc.
Firmware Upgrade Guide
Introduction
Grandstream products' firmware are improved and updated regularly. Latest firmware versions are available at http://www.grandstream.com/support/firmware.
Published firmware versions on the Grandstream official website have passed QA tests and include new enhancements, reported issue fixes for better user experience. All changes are logged in Release Notes documents.
Firmware packages are specific to a single product or product series, similar to release notes documents. For example, Release_GXP16xx_1.0.3.28.zip
and Release_Note_GXP16xx_1.0.3.28.pdf
are specific to GXP16XX Small Business IP Phones series.
Grandstream recommends reading the Release Notes document, which may include special firmware upgrade notices, and keeping devices up-to-date by upgrading their firmware versions regularly.
This document describes the steps needed to upgrade Grandstream devices firmware version and covers the following scenarios:
- Scenario 1: Upgrade using Grandstream Public HTTP Server.
- Scenario 2: Upgrade using local HTTP/HTTPS/TFTP Server.
- Advanced options.
Scenario 1: Upgrade using Grandstream Public HTTP Server
Grandstream hosts latest firmware files on a public HTTP server, allowing customers to directly upgrade their Grandstream devices. This server also hosts BETA firmware when available.
Follow these steps to successfully upgrade your device:
- Access the web interface of your device and navigate to Maintenance ➡️ Upgrade and Provisioning settings page.
- Ensure "Always Check for New Firmware" is selected.
- Under "Firmware", select Upgrade via HTTP.
- Enter
firmware.grandstream.com
under Firmware Server Path. - Press the Save and Apply button to apply the new settings.
- Reboot the device and wait for the upgrade process to complete.
Notes:
- To upgrade using the Grandstream HTTP server, the device must be connected to the Internet.
- To upgrade to BETA firmware (if available), use
firmware.grandstream.com/BETA
in step 4.
Scenario 2: Upgrade using Local HTTP/HTTPS/TFTP Server
Customers can use their own HTTP, HTTPS, or TFTP server to upgrade Grandstream devices. To do this, first download firmware files for the appropriate device model from http://www.grandstream.com/support/firmware. Unzip the downloaded package and place the extracted files in the root directory of your server.
Notes:
- Your devices and server must be on the same LAN.
- If using a remote server, ensure ports are open/redirected in your router so devices can download firmware files from it.
Reminder: HTTP (TCP) default port is 80, HTTPS (TCP) default port is 443, and TFTP (UDP) default port is 69.
Local Upgrade via HTTP Server
Refer to the steps below for local upgrade using an HTTP File Server tool.
Installing HTTP Server and Uploading Firmware File(s)
Follow these steps to download and install the HTTP server and upload the firmware:
- Launch the installation of the tool after downloading it from http://www.rejetto.com/hfs/download.
- Click Run to launch the HTTP server.
[image: A security warning dialog box for running an executable file named "hfs (1).exe". It asks "Are you sure you want to run this software?" and mentions the publisher is unknown and the file lacks a valid digital signature. Buttons are "Run" and "Cancel".]
3. Start the HFS server, browse to locate and select the required firmware files from your local directories under the Menu options ➡️ Add files.
[image: A screenshot of the "HFS ~ HTTP File Server 2.3m" application. It shows the "Virtual File System" pane with options like "Add files...", "Add folder from disk...", etc. The "Log" pane shows update check messages. The status bar indicates no connections and zero data transfer.]
4. Choose your local directory where the firmware files are downloaded and click Open to upload the file(s) to your HTTP server.
[image: A screenshot of the "HFS ~ HTTP File Server 2.3g" application's file upload dialog. It shows a file explorer window titled "Open" with a file named "gxp2170fw.bin" selected. The path is "C:\Users\User\Downloads\hfs".]
[image: A screenshot of the "HFS ~ HTTP File Server 2.3g" application, showing the "Open in browser" link as "http://192.168.5.101/gxp2170fw.bin". The "Virtual File System" pane lists the uploaded file "gxp2170fw.bin".]
Configuring Grandstream devices for local HTTP upgrade
Follow these steps to configure Grandstream devices to upgrade the firmware:
- Access the web GUI of your device and navigate to "Upgrade and Provisioning" settings.
- Ensure "Always Check for New Firmware" is selected.
- Select Upgrade via HTTP.
- Enter the path of your HTTP server containing the firmware file under Firmware Server Path.
- In our example, the firmware server path is configured as:
"192.168.5.101"
. - Ensure that the leading
http://
is not included in the HTTP Firmware server path.
- In our example, the firmware server path is configured as:
- Press Save and Apply at the bottom of the page to apply the new settings.
- Reboot the device and wait until the upgrade process is completed.
You can verify the status of the upgrade progress on the HFS Server as displayed in the following screenshots:
[image: Two screenshots showing the progress of a firmware upgrade. The top one shows a log entry "Requested GET/gxp2170fw.bin" and a status bar indicating "50,715,628/52,502,976 sent". The bottom one shows "Fully downloaded - 50.1 M @ 11.1 MB/s - /gxp217" and a progress bar at 96%.]
Local Upgrade via HTTPS Server
Refer to the steps below for local upgrade using HTTPS. XAMPP, with its built-in HTTPS server, is available for download from https://www.apachefriends.org/download.html and can be used.
Installing HTTPS Server
1. Download the appropriate version depending on your platform.
[image: Screenshot of the Apache Friends website's download page, showing XAMPP for Windows versions and download links.]
2. Launch the XAMPP server installation once it's fully downloaded and follow the installation steps by clicking the Next button.
[image: Screenshots of the XAMPP installation wizard, showing welcome and unpacking files screens.]
3. Launch the XAMPP server. The following interface will be available:
[image: Screenshot of the XAMPP Control Panel, listing modules like Apache, MySQL, FileZilla, Mercury, Tomcat, with Start/Stop/Admin/Config/Logs/Services/Help buttons.]
Uploading firmware file(s) to XAMPP HTTPS Server
1. Start the Apache module to use the HTTPS server.
[image: Screenshot of the XAMPP Control Panel showing the Apache module status changed to "running".]
2. Access the XAMPP root directory on your computer and place the firmware files in the following directory: "C:\xampp\htdocs\xampp"
.
[image: Screenshot of a Windows File Explorer showing the XAMPP directory structure, specifically C:\xampp\htdocs\xampp, containing firmware files like gxp2170fw.bin.]
3. To list available firmware files on the root directory, access the local link address https://127.0.0.1/xampp/ from the computer running the HTTPS server.
[image: Screenshot of a web browser showing "Index of /xampp" with a file gxp2170fw.bin listed.]
Note: XAMPP includes built-in SSL certificates for HTTPS access. If users need to change certificates, they can do so by copying/pasting generated certificates into the folder: "C:\xampp\apache\conf"
. This folder contains 3 subdirectories (ssl.crt
, ssl.csr
, ssl.key
) for placing SSL certificates.
Configuring Grandstream devices for a local HTTPS upgrade
Follow these steps to configure Grandstream devices to upgrade the firmware:
- Access the web GUI of your device and navigate to "Upgrade and Provisioning" settings.
- Ensure "Always Check for New Firmware" is selected.
- Select Upgrade via HTTPS.
- Enter the HTTPS server URL containing the firmware file in the Firmware Server Path field. Example: (
x.x.x.x/xampp
) wherex.x.x.x
is the IP address of the computer running XAMPP. - Press "Save and Apply" at the bottom of the page to apply the new settings.
- Reboot the device and wait until the firmware upgrade process is completed.
The following screenshot illustrates the steps mentioned above:
[image: Screenshot of a Grandstream device's web GUI showing the "Firmware" settings. "Firmware Upgrade via" is set to HTTPS, "Firmware Server Path" is "192.168.5.117/xampp". Other fields like User Name, Password, Prefix, Postfix are shown.]
Local Upgrade via TFTP Server
To upgrade locally using TFTP protocol, users can download and install a free TFTP server as described in the steps below.
Installing the TFTP Server
A free Windows version TFTP server is available for download from http://tftpd32.jounin.net/.
[image: Screenshot of the tftpd32.jounin.net website, showing download links and information about the TFTP server.]
1. Select the version appropriate for your computer and start downloading it.
[image: Screenshot of the TFTP server download page showing different versions of tftpd32/tftpd64, with download links.]
2. Launch the TFTP server installation and click the "next" buttons to continue the installation.
[image: Screenshot of the TFTP server installation wizard, allowing selection of components like "Tftpd64 Standalone Edition".]
3. Once the TFTP server is installed, the following interface will be displayed:
[image: Screenshot of the Tftpd64 application interface, showing server status, interfaces, and log viewer.]
Uploading the firmware file
1. Ensure that the TFTP services are selected and started under Settings ➡️ Global and click the OK button to confirm your configuration.
[image: Screenshot of the Tftpd64 Settings dialog, showing the "GLOBAL" tab with "TFTP Server" checked.]
2. Browse to locate and select the required firmware from your local system.
[image: Screenshot of the Tftpd64 application's "Browse For Folder" dialog, showing the selected directory "Firmware Upgrade".]
3. Press Show Dir to verify if the firmware file is uploaded on the TFTP server.
[image: Screenshot of the Tftpd64 application showing the "Tftpd64: directory" window with the uploaded file "gxp2170fw.bin" listed.]
4. Select the interface of the computer running the TFTP server on Server Interfaces.
[image: Screenshot of the Tftpd64 application's main window, showing the "Server interfaces" dropdown menu with options like "192.168.5.117" and "127.0.0.1".]
Configuring Grandstream devices for local TFTP upgrade
Configure your Grandstream devices for upgrading via your TFTP server by following these steps:
- Access the web GUI of your device and navigate to "Upgrade and Provisioning" settings.
- Ensure "Always Check for New Firmware" is selected.
- Select Upgrade via TFTP.
- Enter the path of your TFTP server containing the firmware file under "Firmware Server Path".
- Press "Save and Apply" at the bottom of the page to apply the new settings.
- Reboot the phone and wait until the upgrade process is completed.
ADVANCED OPTIONS
Automatic Upgrade
Automatic Upgrade allows periodic checks for newer firmware versions to download and upgrade the device, helping to keep devices up-to-date. This option can be enabled from the web configuration interface ➡️ Upgrade and provisioning settings.
[image: Screenshot of a Grandstream device's web GUI showing the "Automatic Upgrade" settings. Options for "No", "Yes, check for upgrade every...", "Yes, check for upgrade every day", "Yes, check for upgrade every week" are visible, along with fields for "Hour of the Day" and "Day of the Week".]
The automatic upgrade can be configured based on the following options:
- Every interval in minute(s).
- Every day (the "Hour of the Day" should be configured).
- Every week (the "Hour of the Day" and "Day of the Week" should be configured; 0 is Sunday).
If firmware is available, it will be downloaded and the device will be upgraded automatically.
Firmware File Prefix and Postfix
Firmware prefix and postfix are options configurable by users to lock firmware updates. Only firmware with a matching prefix and/or postfix will be downloaded and flashed onto the phone. Firmware file prefix and postfix can be configured from the web GUI ➡️ Maintenance ➡️ Upgrade and provisioning.
[image: Screenshot of a Grandstream device's web GUI showing fields for "Firmware File Prefix" and "Firmware File Postfix".]
Use Case Example: Using firmware prefix and postfix, users can store different firmware versions in the same folder and upgrade to a specific version.
- If Firmware File Prefix is set to
1.0.3.14
on a GXP1600 series phone, the requested firmware file will be1.0.3.14gxp1600fw.bin
.
[image: Screenshot showing the "Firmware File Prefix" field set to "1.0.3.14".]
- If Firmware File Postfix is set to
1.0.2.22
on a GXP1600 series phone, the requested firmware file will begxp1600fw.bin1.0.2.22
.
[image: Screenshot showing the "Firmware File Postfix" field set to "1.0.2.22".]
[image: Screenshot of a Windows File Explorer showing firmware files with prefixes and postfixes, e.g., "1.0.3.14gxp1600fw.bin".]
HTTP/HTTPS User Name and Password
HTTP/HTTPS User Name and Password need to be configured if the HTTP/HTTPS server requires authentication to access and download firmware files. To begin the firmware upgrade process, the phone sends an initial request to download firmware files from the server. The server will challenge for valid credentials, and the phone then sends the same request including the configured HTTP/HTTPS User Name and Password. If accepted, the firmware upgrade process can start.
If Always Authenticate Before Challenge is set to "Yes", the phone includes configured credentials in the initial request to download firmware files before being challenged by the server. The default setting is "No".
[image: Screenshot of a Grandstream device's web GUI showing fields for "HTTP/HTTPS User Name", "HTTP/HTTPS Password", and radio buttons for "Always Authenticate Before Challenge" (No/Yes).]