Grandstream is the most widely deployed IP phone brand globally. Getting SIP configuration right on Grandstream devices — GXP, GXV, HT ATA series — requires attention to NAT settings, codec order, and DTMF mode. Here is the complete configuration guide.
SIPSymposium is an independent platform not affiliated with or endorsed by any product or company mentioned in this guide.
Grandstream device web UI is accessed at the device IP address (default admin/admin). Navigate to Account 1 (or the relevant account):
| Setting | Value | Notes |
|---|---|---|
| Account Active | Yes | Must be enabled |
| SIP Server | Your PBX or provider hostname/IP | Use FQDN not IP where possible |
| SIP User ID | Extension number or username | What you register as |
| Authenticate ID | Auth username (may differ from SIP ID) | Check with provider |
| Authenticate Password | Your SIP password | Case sensitive |
| SIP Registration | Yes | Enable registration |
| Register Expiration | 60 (minutes) | Most providers accept 60 |
After saving, check the Account Status on the main Status page — it should show "Registered" with the registration server IP. If it shows "Trying" or an error, check credentials and server address.
Navigate to Advanced Settings (or Network Settings on newer firmware):
| Setting | Recommended | Notes |
|---|---|---|
| NAT Traversal | Keep-Alive | Sends keepalives to maintain NAT binding |
| STUN Server | stun.l.google.com:19302 | Use if behind NAT without SBC |
| Use NAT IP | Your public IP | Only if STUN not available |
| SIP Local Port | 5060 | Standard port |
| Local RTP Port | 5004 | Starting port for RTP |
If the phone is behind a corporate firewall or NAT and calls have one-way audio, set NAT Traversal to STUN and configure the STUN server. If using an SBC or hosted PBX that handles NAT, set to Keep-Alive only.
Navigate to Account 1 → Codec Settings:
| Priority | Codec | Use case |
|---|---|---|
| 1st | PCMU (G.711u) | Maximum compatibility, no compression |
| 2nd | PCMA (G.711a) | European standard G.711 |
| 3rd | G.722 | HD audio, same bandwidth as G.711 |
| 4th (optional) | G.729 | Low bandwidth, less quality |
Set ptime (packetization time) to 20ms. Some providers require specific ptime values — mismatched ptime causes audio quality issues even when codecs match.
Enable VAD (Voice Activity Detection) / Silence Suppression only if your provider and PBX both support comfort noise generation. Enabling VAD without CNoise support causes clipping at the start of speech.
Navigate to Account 1 → DTMF:
| Setting | Recommended | Notes |
|---|---|---|
| DTMF Mode | RFC2833 | Most reliable — use for almost all cases |
| DTMF Payload Type | 101 | Standard telephone-event payload |
Never use in-band DTMF if G.729 is the active codec — compression destroys tone accuracy. SIP INFO DTMF is a legacy fallback that works but requires proxy support.
In the Grandstream device web UI (navigate to device IP, login admin/admin), go to Account 1 and set: SIP Server to your PBX hostname or IP, SIP User ID to your extension, Authenticate ID and Password to your credentials. Enable registration and set Register Expiration to 60 minutes. Save and check the Status page for "Registered" status.
One-way audio on Grandstream phones is a NAT issue. The phone is advertising its private IP in the SDP. Fix by enabling STUN in Advanced Settings and setting STUN Server to stun.l.google.com:19302. If behind corporate NAT, set Use NAT IP to your public IP. If using a hosted PBX or SBC that handles NAT, just set NAT Traversal to Keep-Alive.
Set DTMF Mode to RFC2833 with payload type 101 on all Grandstream phones. RFC2833 is the most reliable method and works with all codecs including G.729. Never use in-band DTMF with G.729 as compression destroys the tones. SIP INFO works as a fallback but requires your SIP proxy to pass INFO messages end-to-end.
Capture SIP from your Grandstream device (Maintenance → Packet Capture) and upload to SIPSymposium for automated analysis of registration, codec, and DTMF issues.