Tuesday, December 11, 2007

Windows Cannot Recognize Wireless USB mouse

Problem: Windows Stops Recognizing USB Mouse

Symptoms: When the USB receiver is plugged in, Windows pop pops up a message in the system tray that it is unable to recognize the USB device. This is despite the fact that plugging it into a different port may (but mostly will not) work.


This is direct from "Newbie Poster" at http://www.daniweb.com/forums/post41808-5.html. The solution worked for me despite not deleting the oem inf files or any registry entries.:

I found a fix for USB devices not working, actually came from Microsoft technicians. Apparently there's a problem with the Intel USB chipsets going flakey

Step 1: Remove Hidden Devices

  1. Open a Command Prompt.
  2. Type "set DEVMGR_SHOW_DETAILS=1" (without quotation marks) and press Enter.
  3. Type "set DEVMGR_SHOW_NONPRESENT_DEVICES=1" (without quotation marks) and Press Enter.
  4. Type "start devmgmt.msc" (without quotation marks) and click press Enter.
  5. Click View. Click Show hidden devices.
  6. Click "+" to expand devices, Unknown devices and USB devices.
  7. Are there any devices and unknown devices (including grayed out devices)? If so, please right click it and click Uninstall them.

Step 2: Remove all oem*.inf files


1. Click start and click run then under the run line type in the command "cmd" (without the quotation marks)

2. In the command line, type in the following (without the quotes) and press enter after each command:

"cd \windows\inf"
"ren infcache.1 *.old"
"ren oem*.inf *.old"
"del C:\windows\setupapi.log"

Step 3: Removing all entries under HKEY_LOCAL_MACHINE/Enum/USB that start with VID using REGEDIT.


Removing the VID entries from the registry will cause them to be redetected at restart.

CAUTION: If you have a USB keyboard, mouse, scanners, and other things you know are working, do not remove the VID entry for these devices, otherwise, Windows may not restart correctly.

1. Click Start and click Run. Type regedit and click OK. The Registry Editor window will open.

2. Go to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Enum\USB.

3. Highlight and delete all the VID_.... entries for usb devices that you cannot identify. Remember not to delete the entries mentioned above.

You may not have permssion to delete keys, do the following.
Permissions may be set allowing the deletion of the VID_ entries by following the steps below:

a) Right-click the key to be deleted, and then click Permissions. The VID_... Permissions window will open.
b) With Everyone highlighted in the Group or User name section, select Full Control in the Permissions section.
c) Click Apply, and then click OK.

5. Restart your compuer.

Step 4: Reconnect the USB device that was not previously working. Windows should automatically rerinstall the drivers.

This worked for me and hope it helps you out. Good luck with it.

Sunday, July 29, 2007

The GrandStream BudgetTone-200 (part 2)

The Firmware Update

I am pleased to say that this was painless and was quite simple to do. I was a little worried about it, but GrandStream seems to have done an excellent job of making it simple to perform.

Defining Simple
If you have the right setup, the update is painless
The requirements for this seem simple enough. You need:
  1. a working dhcp server
  2. a working tftp (or http) server
  3. the ability to configure both
The dhcp server is not strictly necessary as long as the phone is configured with an IP address, subnet, etc.

If you have a working setup already, the firmware update is easy. If you do not have a working setup, you need to start there.

  1. Download the latest firmware update
  2. Unzip the files to the root of the tftp server
  3. login to the phone's web interface (default admin password)
  4. update the Firmware Upgrade and Provisioning to be Upgrade Via tftp
  5. Set the Firmware Server Path to the tftp server ip address
  6. Set the Config Server Path to tftp server ip address
  7. Save settings via Update button
  8. Click Reboot
That's it! The phone will reboot two or three times and at the end (not really evident) you can login to the phone's web site and check the Software Version on the Status tab.


I have not tried the http update of the firmware but I suspect that replacing tftp with http in the instructions above should make it possible.

Friday, July 27, 2007

The GrandStream BudgetTone-200 (part 1)

The purchase:

I recently purchased two GrandStream BudgetTone-200's from http://www.voipdepot.ca. This was an amazing experience and I cannot hesitate to recommend voipdepot.ca. I placed the order Wednesday at 10:21 AM and the package was delivered to my door Thursday at 10:19 AM. A couple of things makes that impressive:
  1. It was less than 24 hours
  2. They are located in Mississauga, Ontario
  3. I am located in Moncton, New Brunswick
  4. Google tells me that it is 1,544 km – about 16 hours 2 mins to drive
Granted, they gained an hour in the time zone but I sill had my order in less than 24 hours.

The GrandStream BT-200; First Impressions:

The phone itself seems to be sturdy and well designed with large buttons. I plugged in the parts, the manual says to connect all the parts and the network before the power and that makes sense.

As soon as the power is supplied the following occurs:
  1. a red light appears
  2. you hear a little noise (like a speaker)
  3. No IP appears on the display
  4. The default date and time 1900-01-01 0:00 AM appears on the display
  5. The correct date and time (more or less) appears
At this point, there is a dial tone and if you left the receiver and press the MENU button you find the IP Address of the phone.

The GrandStream BT-200; Initial Configuration:

The first thing I noticed was that the time was off by an hour or two. It was just an annoyance but it was the first thing I tackled. Pressing the menu butting displayed a number of configurable items but nothing related to time and I also noted there did not seem to be any SIP configuration available.

Upon reviewing the manual I noted that the phone has a web server that is used for configuration. More experience with VOIP would have probably made that obvious but it was not. I opened Firfox and entered (the IP address revealed by lifting the receiver and pressing MENU).

That brought me to the Grandstream Device Configuration page and yet another review of the manual told me that "123" was the user password.

Logging in, I set the Time Zone and enabled Daylight Savings Time. Upon applying the setting it explained that a reboot was necessary. Rebooting caused my IP address to change (DHCP is the default) so I need to discover it again (Lift Receiver press MENU) to continue exploring the config.

The GrandStream BT-200; Exploring the Configuration:

Logging in as an "End User" (the default 123 password) allows you access to the Status and Basic Settings tabs. I clicked on the Advanced Settings and Account but received a rather unhelpful message: Access Denied Content-Type: text/html;charset=iso-8859-1 Server: Grandstream/1.10. It took some time to realize that you need to login as the "Admin" (the default admin password) on the initial login page. You cannot login as an End User and then escalate to the Admin. A nice "You need to login as the Admin" page would have been helpful.

Accessing the "Status" tab displays some information about the phone. In particular, it displays the Software Version. In my case, the installed Program-- and Bootloader-- versions seemed well behind the current version of the firmware displayed in the site ( It seems that one of the first tasks will be to upgrade the firmware.

The GrandStream BT-200; Initial Tests:

Browsing through the manual, I noticed that it is possible to make IP to IP calls if you have multiple devices on the same network (subnet). To place a direct IP to IP call, first off-hook, then press the “MENU” key, then enter a 12-digit target IP address to make the call and press the SEND button.

This is where having multiple devices really has advantages when you are trying to understand VOIP and you want to verify that the phones actually work. With this out of the way (and a nice conversation with my 2 year old with the new phones) I was ready to look at the firmware upgrade.

Saturday, July 21, 2007

Migrating Evolution Contacts to Gmail

Evolution exports its contacts in a VCard format. You can simply select all contacts that you want to export and save a VCard. All VCards a saved in the same file.

Getting the contacts out of VCard format and into something that is usable for GMail takes a little Perl code. The following code creates a comma separated value format file in GMails native format. It currently only supports two sections Personal and Work.

The inspiration for this was is was based on the Linux Journal article at http://blog.ibao.net/linux/2004/07/19/export-evolution-address-book-to-gmailbut it was completely rewritten (well some cut and paste and editing) to take advantage of the GMail csv format that allows you to import your information into named sections. In addition, it properly formats the address (Canadian Standards)

No doubt you may need to modify it for your own use. That is fine, but this code is licensed under the terms of the GNU General Public Licence

You can download the code from: http://timlegge.googlepages.com/evol_gmail.pl

You should note that an issue in GMail results in being unable to view some imported contacts. The work around is to clear your cache and restart the browser.

I have updated the script recently to use alternative email addresses if they are available...