Tuesday, December 29, 2015

Windows 10 USB Selective Suspend

Recently I lost hours of my life due to an odd USB setting in Windows 10.  If you are experiencing or have experienced issues with USB devices and Windows 10 then hopefully you can keep reading and save yourself the hours of frustration and rage inducing failures that I’ve been dealing with since first starting to use Windows 10.

First a bit of background, USB Selective Suspend is not new.  It has been around since USB 2.0 in Windows XP.  Selective Suspend allows the operating system to save power by placing specific USB ports into a suspended mode to save power, similar to how a laptop or tablet can be placed into sleep mode.  What’s cool about it is that it can do USB ports individually without powering down all the USB ports or the entire USB bus.

What’s bad about it is that it really isn’t necessary on a desktop machine that is plugged into power. Powering down USB ports won’t save the grid that much power on a desktop.  Now on a laptop or tablet on battery power it’s a different story.  That’s why Windows allows you to enable or disable USB Selective Suspend based on the computer being plugged in or on battery power.

Another interesting fact here is that previous versions of Windows allows you access to the USB Selective Suspend setting easily in the advanced power profile settings.  Windows 10 hides that setting unless you modify the registry.

One more gotcha here, the driver for the USB device must support Selective Suspend in order for it to work properly.  This has been around since Windows XP and USB 2.0 so you’d think that it is widely supported.  Well…...cue the rage inducing failures.

I started using Windows 10 on a Surface Pro 2 using a Toshiba USB 3.0 dock to connect to my keyboard, mouse, and dual monitors.  I had no issues.  Then I got my Surface Pro 4 and the new Surface Dock and things started to go south in a hurry.  The biggest issue I faced was that my display port monitors would go to sleep and rarely wake up when connected to the dock.  Randomly they would come back on but most of the time in order to use my monitors connected to the Surface Dock I’d have to unplug the Surface Dock Connector from my Surface and then plug it in again.

After spending weeks trying to figure out why the monitors wouldn’t wake up I finally broke down and called Microsoft support.  They told me it was probably a hardware issue with the Surface Dock so they sent me another one.  I hooked the new one up and the same problem.  I had a hunch all along it was either a firmware issue with the Surface Dock or it was a driver issue on the Surface itself.

Without any solution I continued to unplug my new Surface Dock from my Surface multiple times every day to wake up my monitors.  The convenience of the new Surface Dock with its single connection into the Surface that provides communications and power was totally lost.

A few days before Christmas I decided to update my TomTom GPS with the latest map before we did some traveling for the holiday.  I plugged the GPS into one my Surface Dock USB ports and told it to update but it kept dropping its connection.  It would update for a few seconds and then say it wasn’t connected.  I then plugged the GPS USB cable and plugged it directly into the Surface.  Same problem.  So I unplugged the Surface Dock completely and still the GPS would connect and then drop its connection.

Must be a cable problem, right?  I tried 3 different cables and they all had the same issue.  Was the micro USB port on my GPS bad?  Seemed unlikely but I checked it out.  After another hour of testing and messing with it I still had no luck and by this point my GPS map was totally hosed because of the constant connecting and reconnecting.

Time to take a step back and relax.  Sometimes when troubleshooting an issue, you can lose the forest for the tress so I decided it best to take a break.  I did a few other things, took a shower, and then came back to start again.  This time I started researching USB connection issues with my GPS and Windows 10.  After about an hour of reading it appeared based on some user forums that Selective Suspend was to blame because the TomTom MyDrive software and GPS driver were not configured to support Selective Suspend in Windows 10.

That made sense.  Windows 10 kept trying to enable Selective Suspend on the port and that caused the connection to drop because the TomTom driver wasn’t updated to let Windows 10 know it could not enabled suspend on the port while the GPS was connected and trying to update a 6gb map.

To test this, I went to disable Selective Suspend in the advanced power profile settings but found the USB Settings option missing.  Really?  A quick Google revealed that in order to see the advanced power options you had to modify a registry entry.  Part of me understands why Microsoft would hide this, part of me doesn’t.  You can find plenty of articles online with detailed in instructions for how to change a reg key so you can see these settings.  I changed the key, rebooted and sure enough the USB Selective Suspend settings appeared.

The options are enable and disabled for plugged in and on battery.  I disabled mine while plugged in but left it turned on while on battery.  Rarely would I every attempt to update my GPS while on battery power and if it does save me some juice to make my battery life last longer then fine.

Immediately my GPS connected and updated as it should.  My rendered useless GPS became useful once again.  While I took the long way around the barn was I grateful that the issue was fixed.  So I connected my Surface to the dock again and went to bed.

The next morning, I got up expecting to have to unplug my Surface Dock from my Surface to get my monitors to wake up but found that when I moved the mouse the monitors woke right up.  Intrigued I let the monitors go back to sleep again and they again woke up as they should.  Fascinating.  I finished what I was doing and left for the day.  When I got back later that night my monitors again woke up when I moved the mouse or touched the keyboard.  Could it be?  Could the Selective Suspend issue have caused my Surface Dock to not work properly?

While I didn’t find any articles saying that there was a connection for the new Surface Dock, remember it has only been out for just over a month, I found many related to docks using USB.  Since the new Surface Dock doesn’t use USB I didn’t think the issues would be connected but my experience suggests that they are, even if the evidence is circumstantial.

It baffles me that Microsoft’s own hardware isn’t compatible with Selective Suspend.  Why TomTom hasn’t kept their driver current is also a bit of a surprise but Windows 10 is still relatively new.  I don’t see any excuse for Microsoft.

For now, at least it appears that my Surface Dock works as it should and my GPS can be updated anytime I want.  If you are having similar struggles with a dock or USB device, you might want to check out the power saving convenience that is USB Selective Suspend.

Saturday, December 26, 2015

Windows 10 November Update

Microsoft has released the first major update to Windows 10.  In the good old day of previous Windows versions this would have been called a Service Pack but under the new Windows 10 paradigm this is just an update to the continual evolution of Windows.

There are a lot of changes to Windows in this update, many of them are under-the-hood improvements to how the operating system works.  One is that boot times are 30% faster.  My testing has revealed this to be true.  This update has also helped Windows 10 mature for mass deployments.  The business case for upgrading large organizations to Windows 10 continues to grow stronger as these updates are released.

Here are some of the top feature additions and changes you need to be aware of.

For mobile users Windows finally has the native ability to track your laptop or tablet.  This feature relies on the users Microsoft account.  When enabled the device will phone home with its current location allowing you to track the device if it is lost or stolen.  Other operating systems have had this for years and it is good that it has finally come to Windows – especially when you consider how many Windows based devices are mobile.

Another interesting feature is that Windows 10 will now automatically set your default printer to be the last printer you printed to.  This feature is enabled by default once you install the November Update.  I disabled this feature on my work computer as I often print to different printers but don’t want each of those printers to become my default.  This feature has its place but I’m not sure why it is enabled by default when you update.

Windows 10 also adds the ability to automatically set your time zone based on your location.  This may be handy for laptop and tablet users that travel a lot but isn’t very useful for desktop users.  Auto time zones is set to on by default – I’m not sure why.  Does this indicate that Microsoft thinks the majority of Windows 10 users are mobile?  Regardless this did not work well on my desktop.

I live in the part of Indiana that up until 2007 did not observe Daylight Saving Time.  Since the auto time zone setting is turned on by default my desktop set my time zone to Indiana East.  Indiana East was the old time zone we used before 2007 as it did not observe DST and left our computers on Eastern time year round.  Now that we observe DST our time zone setting is Eastern but the auto time zone didn’t get that right.  For desktop users is it probably best to turn auto time zone off to avoid a potential calendar nightmare.  (Getting rid of Daylight Saving Time all together is another way to solve this issue but that’s a different topic for a different time.)

Microsoft Edge also receives several additional features. While still not supporting extensions the new browser in Windows 10 now syncs favorites and reading lists through the users Microsoft account.  Edge can now import favorites from other browsers and then keep them in sync across all machines the user logs in to.

Several visual improvements are also included in the November Update.  The right click contexts menus on the Start Menu are much easier to read and navigate.  The Start Menu itself can also handle more shortcuts and now allows for additional shortcuts to be arranged into each section.  Windows also now applies the default windows color to the title bars making windows easier to see.

The Start Menu also gains the ability to show advertisements.  This is turned on by default but can easily be turned off – which I recommend.  I’m not really concerned that Microsoft is starting to insert ads into Windows 10 – so long as the users always have the ability to turn them off.

One feature that is still lacking is the ability to customize the login screen.  The November Update allows you to set a solid background color for the login screen but does not allow you to set a custom image.  There are hacks available for doing this online but hopefully the next Windows 10 update will allow for full login screen customization.

The upgrade process was simple enough but varies based on whether or not your machine is part of a domain.  For a non-domain joined machine the upgrade was seamless.  The November Update appeared in Windows Update on the Surface Pro 2 I tested and the update process took around 15 minutes.  When it was done Windows worked as it did before without any issues relating to the update.

On a domain joined machine I did not have as much luck.  Domain joined machines will not receive the update via Windows Update.  To update a domain machine you have to download and install the November Update ISO from Microsoft.  On the desktop machine I tested the upgrade process took over an hour.  This could have been due in part to the desktop machine not having solid start hard drives.

Once the update completed there were several issues to fix.  Several of my default programs had been changed.  PDF files were changed from Acrobat to Edge and the file associations for OneNote were gone.  These were easy to fix but I’m not sure why this only happened on the domain joined machine.

In addition, all of the server admin tools I had installed were wiped out.  Active Directory Management and Group Policy Administration still had shortcuts but the applications were gone.  I had to download and reinstall the Server Administration Toolkit from Microsoft to get them back.

Despite these issues the Windows 10 November Update is a step in the right direction.  If Microsoft, or any software developer waited until their software was perfect to release it then we wouldn’t have any software at all.  Fortunately, Microsoft is keeping with the new Windows paradigm and continuing to improve Windows 10.

If you are looking to deploy Windows 10 and want to use the latest edition, make sure you download the Windows 10 ISO with the November Update built in.

Thursday, December 10, 2015

Technology, Christmas Gifts, and Keeping Kids Safe

My latest article is now live at ministrytech.com.

Christmas is a great time of year for ministries as we celebrate the birth of our Savior.  It can also be a challenging time for parents as kids Christmas lists are full of the latest high tech gadgets and whatchamacallits so they can visit websites you’ve never heard of.  Here are some tips for parents to help keep children safe on Christmas Day and every day.

I am very pro technology but like most things in life you have to earn the privilege to use it and then continue to use it responsibly.  For example, when you learn to drive you don’t get behind the wheel of a race car at Indianapolis right away.  That isn’t saying that race cars in Indy are bad but that you have to earn it and work hard to use it properly.

In the real world we have curfews, why not in the virtual world?  Parents should set boundaries on their kids use of technology and devices.  I don’t agree with the notion that as parents we should let our kids fail first and then pick them up and help them along and allow them to continue making bad decisions so that they can “learn”.  That is how many kids end up viewing porn or participating in online activities that are not appropriate – often times long before mom and dad are aware.  And by the time mom and dad become aware it is too late. (Prov. 22:6 and Ephesians 6:4)

It is also important to encourage Godly relationships.  Positive peer influence is critical as over 80% of kids ages 7-10 years old view pornography online at the encouragement of a friend.  Do your kid’s friends model a Godly example and help them live a life that strives to become more like Christ?  Those peer influences in the physical world also impact actions in the virtual world.

Proverbs has a few things to say about this.  Proverbs 27:17 talks about iron sharpening iron.  Remember that this iron sharpening can happen virtually as well.  Proverbs 18:24 says, “A man of too many friends comes to ruin, but there is a friend who sticks closer than a brother.”  What did it say?  Too many friends can be a bad thing?  Seem to fly in the face of the goal of having as many online friends and connections as possible.

As a parent I expect obedience.  The Bible is pretty clear about the whole children obeying your parents thing (Eph. 6:1) but often the rules seem looser when it comes to online obedience or obeying mom and dad when they don’t understand the technology.  Internet use, cell phone use, tablet use, video console use, etc. is not a right.  It’s a privilege that is earned through responsibility.  It is not an inalienable right.  After all, who is paying for it?

Removing the technology should always be an option that is on the table when it comes to expecting obedience.  Granted, some technology is required for school but there must still be a way for young people to accomplish their education and then not use their devices for anything else.  If there is a sin issue in their life as a result of the technology then it must be removed, whether that sin is something obvious like pornography or something less obvious like gossip.

The story is told of a traveling salesman back in the good ole days before the internet and cell phones who struggled with pornography on hotel room TVs.  Recognizing this challenge in his life he decided that he would not stay at hotels unless they would physically remove the TV from his room, and if the hotel would not remove the TV from his room then he would stay at a different hotel.

What lengths are you willing to go to in order to help your kids stay pure?  It might not be easy but I believe that if we are going to stand before God and give an account for how we raise our children then how easy or convenient it is shouldn’t matter.  (1 Cor. 10:31, Col. 3:23-24)

Finally, we should provide accountability and set a good example.  How are mom and dad using the latest technology and gadgets?  Who helps hold mom and dad accountable?  What’s better, for mom and dad to learn about the latest technology, gadgets, and social media and teach their children, or for the kids to learn about it from someone else?

A recent study of 13 year olds by CNN found that parental involvement and accountability “effectively erased the negative effects” of their kid’s online interactions, whether through social media, games, chats, etc.  When a secular study says that it seems that, we as Christian parents should take notice and provide accountability.

Here are some accountability suggestions:
  1. Spend time with your children online and learn from them.  Ask them to show you what they like to do online and their favorite sites.  Ask them to teach you how to use the latest gadgets.
  2. Check up on their logs and history, across all devices.
  3. Use other software for filtering and internet tracking.  The goal is not to remove independence but provide accountability to help the children grow and mature spiritually.
  4. Find out about other points of access.  Where else can your kids get online and use other devices?  School?  Friend’s house?
I believe we are all accountable for our actions.  I think we tend to forget what “ALL” means and who it applies to.  We are accountable for our actions both in the real world and in the online world.  We are accountable for our children, and our kids are accountable for themselves before God.  God is still God, even in the virtual world filled with high tech gadgets and toys.

If you’d like to learn more about keeping kids safe and technology, visit http://faithlafayette.org/parenttech.