Uniden UIP200 Sip Phone

We have a bunch of UIP200s in our office and they're mostly fine. We use Asterisk for transfers, so we have no issues with call dropping. Two complaints: The time zone info is wrong and Uniden refuses to fix it, and the phones do lock up mysteriously after a few days. We solved the latter problem with a script that reboots the phones at 2am each morning using SIP NOTIFY.

I am that happy customer below, and although the device IS installed in a home, it has been used for rigorous business use. I stand by my statements. It is clearly NOT being used for "home" use rather "home office" use. I can however now document that the unit does not peacefully coexist with my newer APC UPS. At the power switchover it lights up like a blinking Christmas tree. I guess the APC takes too long on the switchover. I have used these phones for transfers (receiving transferred calls and transferring c alls to other users), and now that I have a working firewall configuration (no STUN), all is well. I would still buy these units given the opportunity. I have seen no time zone issues, my phone gets the time from my trixbox.

Note that the "happy" customer of Uniden below, is not using these phones in an office environment, but at home. There are no Uniden to Uniden SIP phone transfers, etc.

These phones suck. Stay away. Just ask anyone that has used them in an office rollout.

I believe the warning herein to be the result of someone's isolated bad experience with this phone! I have used this phone with Asterisk, SER and VoIPSwitch, and aside from the STUN Client in the latest firmware , it all works very well. Like most other devices installing the latest firmware should be considered a requirement.

I found the NAT capabilities with STUN disabled to exceed the capabilities in Sipura/Linksys products. Let me explain. My UIP 200 is behind my cable providers firewall/NAT. I have no control over that firewall/NAT . I have at times had issues with Linksys/Sipuras with this Cable company Firewall/NAT, regardless of settings it seems. However in the case of the UIP 200 I have no issues as long as I leave STUN disabled. I am using Trixbox (Asterisk 1.2.18) and have set qualify to yes and NAT to never.

Also quite noteworthy is that I have this phone connected to a TripLite UPS in Mexico (notorious for bad power) and I have no issues with the phone resetting or otherwise. For a while it was used on two other brands of UPSs with no issues there either. I suspect there may be different power supplies for this phone and mine says IPAD-532

I also believe that the Call waiting and transfer issues described herein may also be isolated cases, as mine works very well.

This phone has an excellent speakerphone , as well as a voice quality from the handset that is very hard to beat. I like the lower volume dial tone and DTMF tone in this phone over others I have tested, as DTMF and dial tones do not need to be heard at full volume

I am certain there are some of these phones out there for a good price , and I would prefer them any day over the cheap Chinese junk that would be in the same price range. I would not hesitate to buy them for a good price.

My ONLY complaint about this phone is that it should allow easier access to the call log menu. It should be only one keystroke away. Overall , it has exceeded my expectations, and has worked better than other phones that I have paid more for. It does not feel like disposable cheap Chinese junk , like another unit I bought5 at the same time at near the same price.


Stay away from these phones. *Just* *stay* *away*. It has been reported multiple times that Uniden is not actively developing or even fixing bugs in the firmware for these phones. Furthermore, there are problems with call waiting, transfers, you name it. Calls are often just dropped on the floor. These phones lock up for no reason, and are extremely sensitive to power fluctuations. Asterisk 1.4 seems to be more rigid in its SIP implementation, and the buggy Uniden firmware just isn't working well with it.

If you have any choice, if you think you're going to save one penny by purchasing this phone instead of moderately more expensive phones, you are absolutely wrong. The support cost and time of working with these phones is JUST NOT WORTH IT.

I wish someone would have stated this clearly here, long before I and others I know puchased these buggy and annoying phones.

You've been warned!


Recent testing has shown that this model of Uniden phone is particularly sensitive to power fluctuations. This being the case, you will find that this phone performs a reboot during power spikes, EVEN IF YOU HAVE YOUR PHONE CONNECTED TO A UPS.

Say again, even if you have your Uniden connected to the UPS, beware. The temporary power fluctuation that occurs when the UPS switches to battery and back due to a power spike on your power lines, results in a phone reboot. All your calls are dropped on the floor.

Unless you have completely stable power, with nary a spike or UPS protection event, don't even consider buying these phones. Alternative suggestions from Uniden include investing in PoE (expensive if you don't already have the infrastructure), or buying a UPS that is extremely quick in switching between mains and battery (also extremely expensive).

As far as I'm concerned these phones are utterly useless for any production environment, as this stands. Uniden, comments?

    • Comment from Uniden: So far, APC UPSes seem to be the only one to exhibit this problem.

More as things progress...


The phones are configured using either text files on a tftp server or the menu buttons on the phone itself. There is no web interface. As of firmware version BS4.56 the tftp server can be specified in dhcp making it very easy to setup once the text file is in place on the tftp server.

DHCP Configuration

The tftp server can be specified using option 150 in dhcp (as of phone firmware version BS4.56). Please note that dhcpd v3 is required for this, at least under Debian. Debian's default install (with apt-get install dhcp) installs v2 of the server... so make sure you have version 3 of the server installed!

Here's an example dhcpd.conf showing how it's done:

ddns-update-style ad-hoc;
option option-150 code 150 = ip-address;

subnet netmask {
option routers;
option subnet-mask;
option domain-name-servers,;
default-lease-time 21600;
max-lease-time 43200;
# tftp server for the uniden phones
option option-150;

Restarting the phone remotely

The UIP200 responds to a SIP NOTIFY message for phone reboots. The correct event type is "check-sync". A typical message might look like:

NOTIFY sip:2403330021@ SIP/2.0
CSeq:886151525 NOTIFY

It appears CVS HEAD has support for sending the correct message from the Asterisk console, see this Digium bug track entry: http://bugs.digium.com/view.php?id=3243

Distinctive Ringing

Phone supports distinctive ringing. Like Cisco phones, it uses ALERT_INFO to pass this to the phone. However, unlike Cisco phones, the UIP200 expects a URL (!). Correct format seems to be:

exten => 1234,1,SetVar(ALERT_INFO=<>)

Where "Bellcore-dr1" can be replaced with other distinctive names. It understands "Bellcore-dr1", "Bellcore-dr2", "Bellcore-dr3" and "Bellcore-dr4". By default the phone will use "Bellcore-dr1".
NOTE: With newer versions of Asterisk, ALERT_INFO is now _ALERT_INFO! Use _ALERT_INFO= instead of ALERT_INFO!


The current Firmware is BS4.77 as of August 2006.

Uniden Release Date: July 24, 2006
Model: UN008ZH2 (UIP200)
Release Software Version: BS4.77 (GA) based on BS4.70.
Target Hardware: Production

1. Overview
This version of firmware includes mainly improvements.

2. Features Added

3. Issues Addressed
1) Error handling modification after pushing Xfer key during a call transfer.

During a failed call transfer, UIP200 generates local audio alarm and flashes LED at receiving error messages sent by the server. In previous version UIP200 only handles 486 (BUSY) message, after the modification, UIP200 should be able to handle all the 4xx(client error) including 404, 5xx(server error) and 6xx(global failure) messages sent by certain servers.

2) Timer-J value modified from 32 to 4.
UIP200 is able to handle VWMI (NOTIFY message) periodically sent by the server in the interval of about 2 seconds in previous version it can only handle in the interval of longer than 10 seconds. The recovery time is also improved from 30 to about 4 seconds.

3) Implementation specific RNA(Ring No Answer) timer value changed from 40 seconds to 4 minutes.
This is to accommodate requirement for an implementation specific Follow-me/Find-me feature. The feature is transparent to UIP200 and it requires UIP200 to be able to keep in RINGING state for at least 4 minutes.

4) Input field restriction changed from 2 to 3
This is to allow time zone setting for Hawaiian customers in configuration file.

4. Known Issues

5. Special Instructions

This firmware builds on the previous advances found in firmware BS4.70:
This version improves STUN, Call Logs(incoming, outgoing, missed), Phone book and on-handset call forwarding.
  • Bug fix - One way Voice on Hold.
  • Bug Fix - Semi-Attended Transfer
  • Bug Fix - Early Media (183 message). In previous load DTMF digits were not sent after receiving a 183 message.

Please make sure that you use the latest configuration files for this firmware version.

Instructions for upgrading firmware:

1) Please ensure that the unidencom.txt and the unidenmac.txt files that you are using to configure the UIP 200 are those that came with the new firmware load.
2) I haven't been able to upgrade the firmware unless the tftp server was on the same subnet as the phone.
3) YOU MUST have the firmware file downloaded from the bcs.uniden.com website in your tftp server root folder, otherwise the phone will just reboot over and over again. If this happens, you can get it out of the loop by unplugging the ethernet cable, which will give you the "DISCONNECTED" error, and allow you to access the menu. (Answers a question posed in a comment below)

Special point of note:

Ensure that "portfast"/"port host" (depending on your hardware) is NOT set on the port on the ethernet switch that you have the UIP200 plugged into.
As the UIP200 is an ethernet switch (NOT a hub) this can cause an issue when spanning-tree negotiations take too long, and the phone may time out.

If you are unsure of how to config/if you are unable to configure your "upstream" switch and TFTPs are still failing (e.g. the phone boots to red lights, shows an LCD test, and then repeats continually) then plug your phone onto a local network (e.g. hub) with a TFTP server.

For example, if you are using A@H/Trixbox/other implementation where you have your firmware file in /tftpboot and you are having no luck upgrading, leave the firmware file in that location BUT set up a LOCAL TFTP server on your PC.
You can then use the keypad on the phone to a) turn off DHCP b) change the TFTP server address to that of your laptop c) reboot the phone to pull the firmware from your TFTP server on your PC

Once the phone is upgraded, you will have to go back into the phone and re-enabled DHCP (if you use it, that is).

On future boots, the system will check (if configured) the firmware on the phone vs. the firmware on the regular /tftpboot server; the versions will match and the phone will not attempt to upgrade - and it should work perfectly.

Issues with the UIP200 and Asterisk (:confused:)

>>>The latest firmware fixed this problem

  • Sound prompts get clipped in several situations (ie: while navigating voicemail menus in voicemailmain, or using the Directory application). I do not think Uniden has been able to duplicate this, but it is a common problem (for Asterisk+uip200 users anyways)
  • Uniden DR#60: You MUST use nat=never or nat=route (as of CVS-HEAD 2004-08-27) in sip.conf. The UIP200 does not like rfc3581 (rport), and will not reply to requests. nat=never disables *'s support for this rfc and assumes no NAT, while nat=route assumes NAT and disables support for the rfc.
  • Uniden DR#61: If you wish to disable call-waiting, you will need to do it at the server-side. There is a bug in the UIP200 firmware that will cause the phone to drop calls if call-waiting is disabled in the phone's config file. Specifically, if (while on a call) someone leaves you a VM (your vm indicator will light up) your phone enter a state where the next (3rd) incoming call will cause the uip200 to drop the original call.

If having remote DTMF recognition trouble with sip to zap calls set callprogress=no in zapata.conf

TFTPD Server configuration (:cool:)

  • Most Linux distros doesnt come preconfigured for tftpd service this is a great page for learning how to do it
  • Remember: TFTPD is very insecure

Support/Configuration/Administrative Guide

The phones contain a lot of "hidden" options available in the administrative guide that can be obtained by going to the following web site: http://bcs.uniden.com. The username and password required can be obtained by emailing: VOIPSupport@uniden.com and asking them.

The following is a sample configuration file:

 # UIP200 Mass Configuration System Generic File
 # Notes:
 # 1. Lines start with '#' are comments
 # 2. To leave a field value unchanged (as saved on local phone), leave value to blank.
 # 3. To set a field's value to empty, use '-' as value.
 # 4. To NOT overwrite user local settings of: programmable key, one/two touch keys, VMA
 #    number, VMWILampIndicator, set "OverwriteLocalSetting = NO". Default is "YES". This
 #    key will ALSO affect whether or not THESE settings in uniden<MAC>.txt be used.
 # 5. Any duplicate parameters exist in both unidencom.txt and uniden<MAC>.txt, MAC settings
 #    will be used.
 # Current Limitation: No spaces allowed for a setting's value
 # Version: 4.59a

 #Overwrite user local settings of programmable keys, one/two touch keys, vma settings
 #If set to no, these current settings on the phone will not be overwritten.
OverwriteLocalSettings        YES                     # must be placed on top of config file

 # Sip Settings --If only ProxyServer needed, set OutboundProxy1/Port same as
ProxyServer                     # can be an IP address or FDQN
ProxyServerPort               5060                     # 0 to use default port
 #OutboundProxy1                  # can be an IP address or FQDN
 #OutboundProxy1Port            5060                     # enter a port number or 0 for default (5060)
 #OutboundProxy2                  # can be an IP address or FQDN
 #OutboundProxy2Port            5060                     # enter a port number or 0 for default (5060)
 #EmergencyProxyPort            5060
Registrar1                      # can be an IP address or FQDN
Registrar1Port                5060                     # enter a port number or 0 for default (5060)
 #Registrar2                      # can be an IP address or FQDN
 #Registrar2Port                5060                     # enter a port number or 0 for default (5060)
 #DnsServer_1                        # may not be necessary if use DHCP
 #DnsServer_2                   # may not be necessary if use DHCP
RegisterExpireSec             60
RegisterRetrySec              90
RegisterExpireLimitPercent    10
FailoverRetrySec              8
SipPort                       5060
SRVRecordName                 - #_sip._udp.unisip.com

 # Sip Settings
MyLcdDisplay           1XX
MyDialNumber           1XX
DisplayName            1XX
 #UserNameForProxy       1XX
 #PasswordForProxy       ***
UserNameForRegistrar   1XX
PasswordForRegistrar   ***

AdminPassword            1234/1111

 # options are ON or OFF
SessionTimerSupport           ON

 # options are ON or OFF
SessionTimerRefresher         ON

SessionTimerMin               60
TimerInterval0                300
TimerInterval1                150

 # Audio Settings
G711MuTxPacketLength          20
G711MuJitterBufferLength      10
G711MuJitterBufferMax         200
G711ATxPacketLength           20
G711AJitterBufferLength       10
G711AJitterBufferMax          200
G729TxPacketLength            20
G729JitterBufferLength        10
G729JitterBufferMax           200
LongHoldAlertPeriod           360

 # options are ON and OFF
DiffServMode                  OFF
DefaultDiffServParam          192
RTPDiffServParam              160

VlanMode                      DISABLE
VlanID                        1
PcVlanID                      2
TftpAddress                  # save to phone and used next time if not offered from DHCP
Q_Param                       50

 # UIP200 Mass Configuration System Mac-based File
 # Notes: Lines start with '#' are comments
 # To leave a field value unchanged (as saved on local phone), leave value to blank.
 # To disable a field, use '-' as value
 # Current Limitation: No spaces allowed for a setting's value
 # Version: BS.459a

 # Firmware. The items listed in this Firmware section must be in this order.
 # FirmwareVersion and FirmwareFileName only used if AutoFirmwareUpdate is YES
 # FimrwareFileName only used if FirmwareVersion differ from firmware ver in Flash
AutoFirmwareUpdate    YES              #choices are YES and NO
FirmwareFileName      uip200_459aenc.pac
FirmwareVersion       BS4.59a

 # Sip Settings
MyLcdDisplay           1006
MyDialNumber           1006
DisplayName            Sharon
UserNameForProxy       1006
PasswordForProxy       ****
UserNameForRegistrar   1006
PasswordForRegistrar   ****

 # Programmable Keys. Key functionality must go before key values.
ProgrammableKey1       OneTouchDial
ProgrammableKey2       OneTouchDial
ProgrammableKey3       OneTouchDial
ProgrammableKey4       OneTouchDial
ProgrammableKey5       TwoTouchDial
ProgrammableKey6       DoNotDisturb
ProgrammableKey7       VMA
ProgrammableKey8       Mute
 # One and Two-touch keys. Must go after Programmable keys functionality definitions.
 # Refer to Programmable and Fixed Function Keys for usage guide
 # OneTouchKeyX value is used ONLY when ProgrammableKeyX is OneTouchDial
OneTouchKey1             88
OneTouchKey2             4111
OneTouchKey3             3456
OneTouchKey4             8500
OneTouchKey5             18178583152
OneTouchKey6             18178583152
OneTouchKey7             18178583152
OneTouchKey8             18178583152

Other "hidden" Features

  • In order to configure One Touch dialing to dial as soon as you pick up the handset (or activate the speakerphone), append a '%S' (that's a capital 'S', yes it's case sensitive) to the end of the dial string. This can also be done for the VmaDirectCallNo.

Asterisk configuration

in sip.conf
mailbox=100 ; mailbox number
secret=100 ; password for registration
nat=never ; either never or route
qualify=no ; You will not be able to receive call if qualify is set to anything else than "no"
context = sip ; Default context for outgoing calls
callerid="UIP200" <100>

RJ45 Connectors

  • On some phones the RJ-45 connector labeled PC is the one that the phone uses to access the network, rather than the one labeled as LAN.

  • *** Some of the phones doesn't register to the asterisk server unles you connect the network on the connector labeled PC, however you have to go back to the connector labeled LAN in order for the phone to continue working and registering properly ***

Distinctive Ringing Under Asterisk 1.4.x is now:


Created by: abuser, Last modification: Mon 25 of Jun, 2012 (20:52 UTC) by admin
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+