Grandstream GXP21XX and GXP17XX IP phones have introduced a new VPK (“Virtual Multi-Purpose Keys”) feature to add more flexibility and provide better user experience using Multi-Purpose Keys modes.
With the new VPK feature design, line keys can be assigned with multiple functions. Users have also the ability to add more VPKs which will be displayed on different screens. The screens are dynamically added to match the extra VPKs, and incrementally indexed on the top of the main screen (1 to 4) until reaching the maximum number of supported VPKs.
Using VPK, users will be able to monitor extensions, use speed dial numbers, send DTMF during calls and more from their phone screens directly; switching between screens will show configured VPK and bring more flexibility to user’s experience.
If using standard MPK on a GXP2160 IP phone, for instance, which supports 6 line keys, customers can use 1 LINE key for the main SIP accounts and the 5 others (not including built-in MPKs) can be used for monitoring/speed dial or any other available features using that account. While using VPK feature on the same GXP2160, customers can configure the same LINE key with up to 4 features virtually mapped on different screens, as an example, Line 1 key can be configured as LINE on the first screen, BLF on screen 2, Speed Dial on screen 3 and Call Park on screen 4.
Below screenshot shows the 4 screen pages of the GXP2160.

FIXED AND DYNAMIC VPK
Fixed VPK
Fixed VPKs are the hard line keys on each phone model; their default mode is “Line” and support all other modes (BLF, Speed Dial…).
Each phone model has a specific number of hardline keys limiting the number of supported Fixed VPK. For instance, GXP2170 has 12 Line keys allowing to support 12 Fixed VPKs
Dynamic VPK
Dynamic VPK are virtual keys that can be added by users.
Each phone model has a specific number of allowed Dynamic VPK, depending on number of hard line keys and screens. For instance, GXP2170 has 12 hard keys, number of supported VPKs (Fixed and Dynamic) is 48 VPK = 12 (Fixed VPK) x 4 (screens), available Dynamic VPKs is 36 VPK = 48 VPK – 12 hard keys.
The screens are dynamically added to match the extra VPKs, and incrementally indexed on the top of the main screen (1 to 4) until reaching the maximum number of supported VPKs.
Fixed/Dynamic VPK per Phone Model
The table below shows how many Fixed/Dynamic VPKs each GXP model support.
GXP2130 | GXP2140 | GXP2160 | GXP2135 | GXP2170 | |
Fixed VPK | 3 | 4 | 6 | 8 | 12 |
Dynamic VPK | 9 | 12 | 18 | 24 | 36 |
Total VPK | 12 | 16 | 24 | 32 | 48 |
GXP1760 | GXP1760w | GXP1780 | GXP1782 | |
Fixed VPK | 6 | 6 | 8 | 8 |
Dynamic VPK | 18 | 18 | 24 | 24 |
Total VPK | 24 | 24 | 32 | 32 |
VPK CONFIGURATION
To configure/add/edit or delete VPK, follow below steps:
- Access Web GUI of GXP phone.
- Go to Settings 🡪 Programmable Keys 🡪 Virtual Multi-Purpose Keys.

- Configure Fixed or Dynamic VPKs as follow:
- Fixed VPK:
- Press Edit VPK button
- Select mode to use from Mode dropdown list.
- Select Account# from Accounts dropdown list.
- Enter a description text in Description field (optional).
- Enter the value sequence for each mode in Value field if required.
- Press Save button to save your configuration (Reset button allows to reset all fields to default values).
- Press Save VPK to apply changes to VPK.

Example:
Customer’s GXP2170 has a SIP account registered on Account 1 and needs to monitor extension 1000.
Below values needs to be used:
- Mode: Busy Lamp Field (BLF)
- Accounts: Account 1 (selected)
- Description: BLF_1000 (optional)
- Value: 1000
- Dynamic VPK
- Press Add VPK to create a new Dynamic VPK.

- Select mode to use from Mode dropdown list.
- Select Account# from Accounts dropdown list.
- Enter a description text in Description field (optional).
- Enter the value sequence for each mode in Value field if required.
- Press Save button to save your configuration (Reset button allows to reset the VPK to default value).
- Press Save VPK to apply changes to VPK.

Example:
Customer’s GXP2170 has a SIP account registered on Account 1 and wants to add a Speed Dial for extension 1001.
Below values needs to be used:
- Mode: Speed Dial
- Accounts: Account 1 (selected)
- Description: SP_1001 (optional)
- Value: 1001
VPK MODES AND INDICATION FOR GXP21XX
Fixed VPK support all available modes (20 modes), while Dynamic VPK doesn’t support Line, Shared Line and None modes (17 modes). The following table provides a description of each mode as well as state, icon, and LED status.
VPK Mode | Description | State | Icon | LED Status |
Speed Dial | Speed Dial mode allows to set a key for one touch
| Account Unregistered | OFF | |
Account Registered | ON | |||
Busy Lamp Field (BLF) | Busy Lamp Field (BLF) mode allows to monitor status Select the Account to monitor the BLF status. Enter the | Offline, Unknown | OFF | |
Terminated | GREEN | |||
Proceeding | RED | |||
Ringing (Early) | Flashing RED | |||
Trying | Flashing RED | |||
Confirmed | RED | |||
Speed Dial via Active Account | Speed Dial via active account mode allows to set a key | No state changes | OFF | |
Dial DTMF | Dial DTMF allows customers to send digits while in communication, for instance, when dialing to an IVR, users can set Dial DTMF Key to send digits to the IVR. Enter a series of DTMF digits in the Value field to be dialed during the call. | No state changes | OFF | |
Voicemail | Allows access to user’s voice mail by pressing | Account not registered | OFF | |
Account Registered (No new voicemail) | OFF | |||
Account Registered (Voicemail available) | OFF | |||
Call Return | Allows users to dial last answered call by pressing configured VPK. The Value field should be left blank. This option is not binding to the account and the call will be returned based on the account with the last answered call. | No state changes | OFF | |
Transfer | Allows to set a destination number to transfer calls to it
| Account Unregistered | OFF | |
Account Registered | OFF | |||
Call Park | This feature allows to park/pick up the call, and can be | Account Unregistered | OFF | |
Account Registered | OFF | |||
Intercom | Allows to set a VPK as intercom button to a specific | Account Unregistered | OFF | |
Account Registered | OFF | |||
LDAP Search | This option is to narrow the LDAP search scope. | No State | OFF | |
Multicast Paging | Multicast paging is a feature that allows the user to make
| No State | OFF | |
Record | Allows users to record ongoing calls. Recording needs | Idle | OFF | |
Recording | Flashing | |||
Call Log | This Key is a shortcut to Call History | No state | OFF | |
Menu | This Key is a shortcut to the Menu button | No state | OFF | |
Presence Watcher | Presence watcher allows to monitor presence /
| Offline, Unknown | OFF | |
Available | GREEN | |||
Monitored Call Park | This feature allows to park/pick up the call, and monitor
| Offline, Unknow | OFF | |
Available | GREEN | |||
Call Parked | RED | |||
Eventlist BLF | Eventlist BLF allows to monitor a list of extension similar | Offline, Unknown | OFF | |
Terminated | GREEN | |||
Proceeding | RED | |||
Ringing (Early) | Flashing RED | |||
Trying | Flashing RED | |||
Confirmed | RED | |||
Line | Regular line key to open up a line and switch line.
| Unregistered | OFF | |
Registered + Idle | OFF | |||
Unregistered + IM + | OFF | |||
Registered + IM + | OFF | |||
Unregistered + IM | OFF | |||
Registered + IM (No | OFF | |||
Unregistered + Voice | OFF | |||
Registered + Voice | OFF | |||
Unregistered + Call | OFF | |||
Registered + Call | OFF | |||
Unregistered + Call | OFF | |||
Registered + Call | OFF | |||
Unregistered + Call | OFF | |||
Registered + Call | OFF | |||
Unregistered + Call | OFF | |||
Registered + Call | OFF | |||
Registered + Ringing | Flashing RED | |||
Registered + On | Flashing GREEN | |||
Registered + | GREEN | |||
Registered + | GREEN | |||
Shared Line | Share line for Shared Line Appearance feature. Select
| Unregistered | OFF | |
Registered + Not | OFF | |||
Registered + Not | OFF | |||
Registered + Idle | OFF | |||
Registered + Seized | RED (Alternate DUT) | |||
Registered + | Flashing GREEN (Alternate DUT) | |||
Registered + Alert | Flashing RED | |||
Registered + Hold by | Flashing GREEN | |||
Registered + Hold by | Flashing RED | |||
Registered + | GREEN |
Table 3: VPK Modes and Indications for the GXP21xx
SCREEN EXAMPLES FOR GXP2170
The following screenshots show the GXP2170 screen’s first two pages:


VPK MODES AND INDICATION FOR GXP17XX
Fixed VPK support all available modes (20 modes), while Dynamic VPK doesn’t support Line, Shared Line and None modes (17 modes). The following table provides a description of each mode as well as state, icon, and LED status.
VPK Mode | Description | State | Icon | LED Status |
Speed Dial | Speed Dial mode allows to set a key for one touch
| Account Unregistered | OFF | |
Account Registered | ON | |||
Busy Lamp Field (BLF) | Busy Lamp Field (BLF) mode allows to monitor status
| Offline, Unknown | OFF | |
Terminated | GREEN | |||
Ringing (Early) | Flashing RED | |||
Trying | Flashing RED | |||
Confirmed | RED | |||
Speed Dial via Active Account | Speed Dial via active account mode allows to set a key
| No state changes | OFF | |
Dial DTMF | Dial DTMF allows customers to send digits while in | No state changes | OFF | |
Voicemail | Allows access to user’s voice mail by pressing
| Account Registered (No new voicemail) | OFF | |
Account Registered (voicemail available) | OFF Blinking Green light | |||
Call Return | Allows users to dial last answered call by pressing
| No state changes | OFF | |
Transfer | Allows to set a destination number to transfer calls to it
| Account Unregistered | OFF | |
Account Registered | OFF | |||
Call Park | This feature allows to park/pick up the call, and can be
| Account Unregistered | OFF | |
Account Registered | OFF | |||
Intercom | Allows to set a VPK as intercom button to a specific
| Account Unregistered | OFF | |
Account Registered | OFF | |||
LDAP Search | This option is to narrow the LDAP search scope. Since the Base for LDAP server configuration is | No State | OFF | |
Multicast Paging | Multicast paging is a feature that allows the user to make
| No state | OFF | |
Record | Allows users to record ongoing calls. Recording needs | Idle | OFF | |
Recording | Flashing | |||
Call Log | This Key is a shortcut to Call History. | No state | OFF | |
Menu | This Key is a shortcut to the Menu button. | No state | OFF | |
Information | This Key will display General information (IPv4, | No state | OFF | |
Presence Watcher | Presence watcher allows to monitor presence /
| Offline, Unknown | OFF | |
Available | GREEN | |||
Monitored Call Park | This feature allows to park/pick up the call, and monitor
| Offline, Unknown | OFF | |
Available | GREEN | |||
Call Parked | Flashing RED | |||
Eventlist BLF | Eventlist BLF allows to monitor a list of extension similar | Offline, Unknown | OFF | |
Terminated | GREEN | |||
Ringing (Early) | Flashing RED | |||
Trying | Flashing RED | |||
Confirmed | RED | |||
Line | Regular line key to open up a line and switch line.
| Unregistered | OFF | |
Registered + Idle | OFF | |||
Registered + Dialing | GREEN | |||
Registered + Connected + Incoming Call | Flashing RED | |||
Registered + Connected + Outgoing Call | GREEN | |||
Registered + Connected + Call Established | GREEN | |||
Registered + Connected + On Hold | Flashing GREEN | |||
Shared Line | Share line for Shared Line Appearance feature. Select
| Unregistered | OFF | |
Registered + Idle | OFF | |||
Registered + Dialing | OFF |
Table 4: VPK Modes and Indications for GXP17xx
SCREEN EXAMPLES FOR GXP1760
The following screenshots show the GXP1760 screen’s first two pages:


SUPPORTED DEVICES
Following table shows Grandstream products supporting VPK feature:
Model | Supported | Firmware |
---|---|---|
GXP2130 | Yes | 1.0.7.25 or higher |
GXP2140 | Yes | 1.0.7.25 or higher |
GXP2160 | Yes | 1.0.7.25 or higher |
GXP2135 | Yes | 1.0.7.25 or higher |
GXP2170 | Yes | 1.0.7.25 or higher |
GXP1760 | Yes | 1.0.1.74 or higher |
GXP1760W | Yes | 1.0.1.74 or higher |
GXP1780 | Yes | 1.0.1.74 or higher |
GXP1782 | Yes | 1.0.1.74 or higher |