Monday, October 03, 2016

Updating Offline Windows 10 with NTLite and enabling .Net 3.5

For imaging I use an extracted .ISO of Windows 10 Enterprise, apply updates using WHDownloader and NTLite, and make settings changes.

One thing missing that needs to be included is the Feature .Net 3.5.  Without this, problems will most likely occur down the road.  This is not listed as an option in NTLite.
But there is an easy solution.  Click on the Updates page of NTLite.  Now browse to your extracted ISO of Windows 10. Specifically to \Sources\SXS

Drag the file and drop it on the Update page.  It will not get installed with the other updates you have selected into your updated install.wim.

Thursday, June 23, 2016

Visual Studio 2015 error mscorlib mismatch when Entity Framework runs transformation

I was following the instructions on this page Databinding with WPF when I ran into an issue at the Updating code generation for data binding step.  I was getting an mscorlib version mismatch error.  I could not compile the project.

I had noticed that changing ICollection<T> to ObservableCollection never did the regeneration of the entity code.  Running 'Run Custom Tool' on the .tt file also did not work.

After some searching I came across this page mscorlib mismatch when Entity Framework runs transformations.  I installed the vs14-kb3151378.exe updated mentioned in the comments section. After the install and reopening my solution in VS 2015, the mscorlib error was gone.  The project would successfully compile.

Some posted in the comments about changing the SQL server authentication off of Integrated but I know for many of us that is very much undesirable.

If you run into this issue and have not installed KB3151378, if you are a candidate for the install, I recommend it as it may solve the issue for you too.

Wednesday, April 13, 2016

Outlook error 0x8000ffff attempting to add data file (.pst)

I encountered this error using Office 2016 (32-bit)  on Windows 7 x64.  Logged on to the system as a User, I opened Control Panel>Mail>Data Files and attempted to add a new data file under my default Exchange account.  All efforts led to the Error code: 0x8000ffff.

This error apparently occurs due to the path I took to add the new data file.  To successfully add a new data file use this:

Open Outlook 2016
Click File>Account Settings (big button to the right)>when it drops down click Account Settings.
This will open the Account Settings for the account in the same view as going through the Control Panel, except now a data file can be added without error.

Click Data Files tab>Add>Select the location for the file, and type the name in the box>Click OK.
The file should successfully be added this time.

Friday, April 01, 2016

Sites to share from posts off the site

  1. Quora
  3. Khan Academy
  4. Computational Knowledge Engine
  5. Nanodegree Programs
  6. Learn to code
  7. edX
  8. Every child deserves opportunity
  9. Stack Overflow
  10. Google Scholar
  11. Play online, learn online and feed the hungry |
  12. Learn to code and help nonprofits
  13. TED: Ideas worth spreading
  14. Lifehacker - Tips and downloads for getting things done
  15. StumbleUpon
  16. Learn to Code by Doing - Code School
  18. MakeUseOf - Technology, Simplified
  19. The Next Web - International technology news, business and culture
  20. Learn Spanish, French, German, Portuguese, Italian and English for free
  21. HSW
  22. No Excuse List
  23. DIY How To Make Instructions
  24. Fresh hacks every day
  25. clear answers for common questions
  26. 750+ Free Online Courses from the Best Colleges |
  27. Computation Meets Knowledge
  28. Mashable
  29. AddictiveTips
  30. Free Online Course Materials
  31. Scribd - Read Unlimited Books
  32. CoinDesk Bitcoin and Blockchain News
  33. Cooking For Engineers
  34. Grow Your Skills with Online Video Lessons
  35. GeekWire
  36. Difference Between Similar Terms and Things
  37. Dictionary and Thesaurus | Merriam-Webster
  38. Wonder How To " Show & Tell for Creators & Doers
  39. Buying Guides, Tips,  How to Advice on the PC Ecosystem
  40. Grow Your Skills with Online Video Lessons
  41. The Verge
  42. Brain Games & Brain Training
  43. Highbrow
  44. Share What You Know! | Learnist
  45. Brain Pump - Learn something new
  46. Gadget Guide, Technology & Electronics, News & Reviews
  47. Free code format online
  49. Random, Interesting, Amazing Facts - Fun Quizzes and Trivia | Mental Floss
  50. Page on
  51. Instead of TV, you should watch...
  53. Launch School (formerly Tealeaf Academy)
  54. Eloquent JavaScript
  55. Learn Enough to Be Dangerous
  56. Learn Ruby The Hard Way
  57.– record movies of your desktop and send them straight to YouTube
  58.– for capturing full length screenshots of web pages
  59.– shorten long URLs and convert URLs into QR codes
  60.– find the original URLs that’s hiding behind a short URLs
  61.– know more than just the local time of a city
  62.– copy special characters that aren’t on your keyboard
  63.– a better search engine for twitter
  64.– search iOS app without launching iTunes
  65.– the best place to find icons of all sizes
  66.– download templates, clipart and images for your Office documents
  67.– everything you wanted to know about a website
  68.– scan any suspicious file or email attachment for viruses
  69.– gets answers directly without searching – more wolfram tips
  70.– print web pages without the clutter
  71.– reformats news articles and blog content as a newspaper
  72.– when you wish to share a NSFW page but with a warning
  73.– a simple online timer for your daily needs
  74.– pick random numbers, flip coins, and more
  75.– check the trust level of any website – example
  76.– Preview PDFs and Presentations directly in the browser
  77.– simultaneously upload videos to YouTube and other video sites
  78.– the best place for searching web videos
  79.– share you email address online without worrying about spam
  80.– now get read receipts for your email
  81.– visualize and compare the size of any product
  82.– quickly determine the font name from an image
  83.– a good collection of fonts – free for personal and commercial use
  84.– find data hidden in your photographs – see more EXIF tools
  85.– this is like an online version of Google Googles
  86.– helps you search domains across all TLDs
  87.– your favorite blogs delivered as PDFs
  88.– share you screen with anyone over the web
  89.– recognize text from scanned PDFs and images – other OCR tools
  90.– Track flight status at airports worldwide
  91.– for sharing really big files online
  92.– a temporary online clipboard for your text and code snippets
  93.– check your writing for spelling or grammatical errors
  94.– easily highlight the important parts of a web page
  95.– work on the same document with multiple people
  96.– planning an event? find a date that works for all
  97.– a less confusing view of the world time zones
  98.– you’ll need this when your bookmarked web pages are deleted
  99.– the perfect tool for measuring your site performance online
  100.– chat with your buddies on from one place
  101.– translate web pages, PDFs and Office documents
  102.– enjoy a never ending stream of YouTube videos
  103.– discover new sites that are similar to what you like already
  104.– quick summarize long pieces of text with tag clouds
  105.– create mind-maps, brainstorm ideas in the browser
  106.– get color ideas, also extract colors from photographs
  107.– setup quick reminders via email itself
  108.– when your friends are too lazy to use Google on their own
  109.– generate temporary email aliases, better than disposable email
  110.– lets you can quickly edit PDFs in the browser itself
  111.– send an online fax for free – see more fax services
  112.– get RSS feeds as an email newsletter
  113.– transfer files without uploading to a server
  114.– setup a private chat room in micro-seconds
  115.– create text notes that will self-destruct after being read
  116.– live flight tracking service for airports worldwide
  117.– track the status of any shipment on Google Maps –alternative
  118.– when you need to raise funds online for an event or a cause
  119.– find if your favorite website is offline or not?
  120.– this website can be used as an example in documentation
  121.– find the web host of any website
  122.– found something on Google but can’t remember it now?
  123.– find whether a photo is real or a photoshopped one
  124.– get word meanings, pronunciations and usage examples
  125.– find definitions of slangs and informal words
  126.– consult this site before choosing a seat for your next flight
  127.– download stock images absolutely free
  128.– chat with your buddies from one place
  129.– unzip your compressed files online
  130.– record your voice with a click
  131.– create custom Google Maps easily
  132.– never miss another Internet meme or viral video
  133.– quickly setup email reminders for important events
  134.– prevent your ISP and boss from reading your search queries
  135.– you can ask or answer personal questions here
  136.– find if that email offer you received is real or just another scam
  137.– master touch-typing with these practice sessions
  138.– send video emails to anyone using your web cam
  139.– quickly send a file to someone, they can even preview it before downloading
  140.– create timelines with audio, video and images
  141.– make a movie out of your images, audio and video clips
  142.– an online audio editor that lets record, and remix audio clips
  143.– print music sheets, write your own music online (review)
  144.– create a temporary web page that self-destruct
  145.– when you need to find the name of a song
  146.– design from scratch or re-model your home in 3d
  147.– use email on your phone to find sports scores, read Wikipedia, etc
  148.– a beautiful to-do app that looks like your paper dairy
  149.– broadcast events live over the web, including your desktop screen
  150.– automatically find perfectly-sized wallpapers for mobiles
  151.– preserve complete web pages with all the formatting
  152.– your virtual whiteboard
  153.– send an email without using your own account
  154.– an excellent layer-based online image editor
  155.– create flowcharts, network diagrams, sitemaps, etc
  156.– Get your Facebook and Twitter streams in your inbox.

Saturday, March 26, 2016

Follow up to Drobo 5N issue and fix

In the previous post I wrote about finding the issue by doing a slot flush on each drive.  When I reached the 4th drive the slot flush did not work, and the Drobo exhibited the same pattern I saw when attempting to boot it.

Having no other answers to what I was seeing I made the assumption that drive 4 was bad.  I went to the store and bought an identical drive of same size and speed.  With the Drobo powered off, I removed the old drive in slot 4 and inserted the new drive.  I also verified that all 5 drives were securely locked in.

I powered on the Drobo and within a relatively short period of time was able to once again gain access to it through the Drobo Dashboard software.  It showed me that Data Protection was running and estimated (way too high) how long until the new drive would be rebuilt.

I do have a 64GB m-SATA drive (accelerator) in the slot on the bottom of the Drobo 5N.  I'm not sure if this made a difference but aside from what the Dashboard reported as the amount of time to for data protection to restore the new drive, the actual time ended up being about 11 hours.  This is on a unit with a total of 20TB of drive space, and about 14.9TB usable.  I had used 80% so this device was close to full.  The Dashboard started off saying it would be 93 hours to restore.  That estimate went down over time but still remained higher than the actual time.

I am not sure if the m-SATA helped speed things up, or if the fact I use 7200RPM drives helped, but I wanted to let others know the restore can happen relatively quickly.  I have read where other's have taken days.

I wanted to make sure nothing attempted to write to the device during the restore so I disabled anything I use that might have tried to write to the Drobo during the restore.  One thing that is incredibly nice was I had access to my data during the restore process.

I hope this additional information answers some questions others may have if they go through the same experience I did.

Saturday, March 19, 2016

My Drobo 5N nightmare (it didn't tell me I lost a drive)

I have a Drobo 5N with (5) x 4TB Hard drives in it.  It also has a 64GB m-SATA accelerator drive.  The Drobo was working Wednesday night and Thursday when I woke up it had no lights except a solid orange power light.  I did troubleshooting the first day but made no progress.

Here is what I saw:
  1. Power on, drive lights all solid orange, power light green, cycling quickly through colors.  
  2. Next, side drive lights all go out, power light flashes green, blue lights move from sides to center
  3. Power light continues to flash green, blue led's at bottom move from left to right stopping on third light from left, the moving on to right.  In the end I would end up with this:
    1. 00X0000XXX (x is a illuminated blue led).
  4. Power light would continue to flash green, and eventually turn orange and blue led's would all go out.  It would sit with solid orange power light for a while and then restart the whole process over.
The next day I tried contacting Drobo and as usual (support in general) I got waived off unless I wanted to purchase a one time support ticket.  In my email to them I listed everything I had tried, everything I had observed.  The response, as usual, appeared they didn't read a word of it as it told me to do all that I had already done.

I was concerned that a drive had failed, but I had no indication.  I had a working email notification system configured on the unit and had never received a message.  No drive light indicated an error drive.  In panic, I ordered a new Drobo 5N but wanted to leave it as a last resort.

I reached the last resort stage, and after following all preparation instructions, finally moved my drives to the new Drobo.  It displayed the exact same boot sequence (and loop).

I came across some discussion of slot flushing, and I had not performed this step.  I put the drives back into my original Drobo, and step by step did a slot flush on each drive.  Each flush worked as documented.  But when I reached the 4th drive, it did not.  I actually exhibited the sequence I had been seeing all along, eventually turning to a solid orange power light.  

This made me believe I had to have a faulty drive.  So a quick trip to the store and came back with a replacement drive of same size and spec.  Having successfully slot flushed the other four drives, and with the device powered down, I inserted the new drive, made sure all were secure in their slots and powered up.  

Finally a normal boot.  Finally the Drobo Dashboard software saw my Drobo.  I should note that was another symptom.  No access to the device using the dashboard unless I removed all drives and directory connected the network cable to my laptop.  

Now the dashboard is reporting 93 hours to restore.  But as the documentation states, I can already access the data stored on the Drobo, I just cannot write to it (and that is fine).  I have a feeling the actual restoration of the new drive will take less time but I really don't care because I have my data back.  

For a while there I was not happy with Drobo.  The whole reason for this large investment was to protect my data, and now I was in a state of no access to my data, and no help from them at all.  Even though I had registered my Drobo after purchase it was out of warranty and I guess they don't care to read what someone writes and instead just send back boilerplate 'make sure you drives are all connected' type stuff.

I had never found an exact description and solution to the problem I experienced when searching, so I wanted to document it in case anyone else runs into the same situation as myself.

I wish I knew why I was not given any indication I had a bad drive.  That would have saved an enormous amount of time and money.  

Be cautious whenever troubleshooting your Drobo.  The last thing you want to do is mistakenly do something that will cause it to wipe your data.

Here is an example of the slot flush procedure.  I am not saying 'do it' but since it gave me the clue to the solution I would like to offer a link:

Monday, February 22, 2016

Server 2012 or 2012R2 - RDP takes long time to logon (10 to 25 minutes)

I have found in our environment we have two particular network settings that have been linked with various issues.  If, when making an RDP connection to a Windows 2012 server the logon takes a long, long time try running these commands from an ELEVATED (Admin) command prompt:

1) netsh int tcp set global rss=disabled

Now test RDP.  If it works normal you are done.  If not, run this second command.

2) netsh int tcp set global chimney=disabled

Try again.  Hopefully it works now.  The values can be checked by running this command

netsh int tcp show global

if the problem re-occurs it can be addressed using a group policy preference modifying the registry settings as shown here:
-EnableTCPChimney and EnableRSS will most likely need to be created as 32-bit REG_DWORDs.

  • Right-click EnableTCPChimney, and then click Modify.
  • In the Value data box, type 0, and then click OK.
  • Right-click EnableRSS, and then click Modify.
  • In the Value data box, type 0, and then click OK.
Another option is executing a computer based script running the above two netsh commands.

Tuesday, February 09, 2016

Repost of Advanced Bash-Scripting Guide

I found this guide helpful.  The original website is:

I wanted a pdf copy to read on my tablet but the link on the site is broken.  So I am reposting a pdf version of the guide here (dropbox download):

I found that the problem on the original site was an incorrect URL.  To access the pdf on the original site visit:

Much appreciation to the author Mendel Cooper.  I hope you don't mind me reposting this valuable guide.

Thursday, December 31, 2015

Teamviewer issues with screen refresh on remote host

I use Teamviewer a lot.  It is a great tool and for personal use, it is free.  I've never really had any issues with it until recently.  I setup a Linux Mint (Rosa) and when remoting to it using Teamviewer, I've had issues with the remote screen not refreshing properly.  I may close a window, but portions of the window will remain behind, buttons, chunks of the previous window, things like that.  Eventually the desktop will become so cluttered I cannot use it.

Sometimes toggling the quality settings will clear up the screen for the moment but I really need a reliable solution.

So far, the only thing I have found is a setting on the local teamviewer client.  Bring up the top menu, under View, click to expand (if necessary) to show 'custom settings'.  Then select the box for 'better compatibility' or 'improve application compatibility' depending on what version of Teamviewer you are using.

This may help.

Thursday, December 17, 2015

Having issues with node-red-contrib-freeboard and your own instance of freeboard?


a npm node by urbiworx

The instructions for node-red-contrib-freeboard say 'Just install this plugin to your Node Red installation by using npm: "npm install node-red-contrib-freeboard" in your Node Red root directory'.- That is supposed to be all that needs to be done for this to work...

When I do this, essentially, freeboard is missing.  The freeboard page is not there and attempting to access yields a 'cannot GET /freeboard' error.The issue is the actual freeboard node is getting placed in the same node_modules folder as the node-red-contrib-freeboard node, and that is not what the 'contrib' node expects. Instead, the contrib-freeboard node is looking for the freeboard directory under it's own node_modules directory, but it is not there.  To remedy this issue, we need to move it to the location where node-red-contrib-freeboard expects it to be.

From the command line go to your node-red/node_modules directory.  If you run: ls free* [enter]
you should see freeboard listed as a directory.  Let's move that...

node-red/node_modules $ mv freeboard ./node-red-contrib-freeboard/node_modules/
Now if you take a look at the contents of node-red/node_modules/node-red-contrib-freeboard/node_modules/ you should see freeboard along with a few other directories. Now when you launch node-red, and open http://localhost:1880/freeboard, it should be there. The above is assuming you are using that port and localhost.

Monday, November 23, 2015

Printable version of the Alexa Skills Kit documentation

I took all of the documents linked from this page:

And made them into a single, printable, PDF file.

Download Here

I removed color from the images and embedded the fonts.  I also applied optimization to reduce size and, although I have not tested yet, made it viewable on mobile devices.

I am not attempting to skirt around the Amazon site.  I know that myself, and some others learn better from a physical document.  I guess since we spent much of our lives studying that way (or atleast I did), it seems more comfortable to me.

This may not be perfect, I apologize ahead of time.  You can always download it and look it over before printing.

Also all section from the list below are included *except* the entire Publishing section.  Please refer to the website for the publishing guidance.

This is the articles included in this PDF, in the same order (minus the Publishing section)

Getting Started
  • Getting Started with the Alexa Skills Kit
Voice Design
  • Voice Design Handbook
  • Defining the Voice Interface
  • Developing an Alexa Skill as a Lambda Function
  • Developing an Alexa Skill as a Web Service
  • Handling Requests Sent by Alexa
  • Implementing the Built-in Intents
  • Linking an Alexa User with a User in Your System
Getting Sample Code:
  • Using the Alexa Skills Kit Samples
  • Deploying a Sample Skill to AWS Lambda
  • Deploying a Sample Skill as a Web Service

  • Choosing the Invocation Name for an Alexa Skill
  • Registering and Managing Alexa Skills in the Developer Portal
  • Testing an Alexa Skill
  • Deploying a Web Service for an Alexa Skill to AWS Elastic Beanstalk
  • Submission Checklist
  • Policy Testing
  • Security Testing
  • Functional Testing
  • Voice Interface and User Experience Testing
  • Submission Testing Walk-through: Tide Pooler
  • Submitting the Skill for Certification
  • Alexa Skills Kit Interface Reference
  • Alexa Skills Kit Interaction Model Reference
  • Alexa Skills Kit Java Library Reference
  • Speech Synthesis Markup Language (SSML) Reference
  • Supported Phrases to Begin a Conversation
  • Alexa Skills Kit Glossary
  • Migrating to the Improved Built-in and Custom Slot Types
Download (same link as above)

Sunday, July 26, 2015

Hue bridge - 14 bulbs - frequent loss of connectivity to bulbs {"reachable":"false"}

After so many wasted hours with the Wink Hub, I really thought the Hue bridge would be create a more reliable, stable environment.  Now that I have been using the Hue bridge for months, I've come to learn my initial hopes were not met.

My primary issue consisted of unpredictable loss of 'reachability' to different bulbs.  This can be seen the Philips Hue app as lights with a (!) symbol next to them.

After much googling I found some things to try to resolve this issue.

Easy - Turn light off and back on

1) Turn the light off and back on.  Wait a minute.  Sometimes the light would rejoin communications.
2) Repeat the above until it worked... when step (1) didn't.

*Save this one if nothing else works - Bulb Reset - Discovery
Time consuming...potential headache... may not even work...
1) Try a different Zigbee channel.  Turn all lights on (make sure the power is on).  Use the Hue app to change the Zigbee channel.  Go around and test the lights.  Under Settings>Lights>tap each one with a (!) make next to it and see if the light flashes on and off.  If so, click ok, and it should be back in contact.  If not, then having to trigger a reset on the bulb (differs by bulb but usually something like turn on, wait a few seconds, turn off, wait at least 3 seconds, repeat 5 times).  The light will give a sign that it reset (GE Link bulbs fade and then go bright, Hue flash (if I remember)).  Then running the auto detection routine in the app (light will flash when detected), name, and should be back on.

Alternate version - perform a reset on the Hue bridge (reset button is on bottom)

Next reset the bulbs using whatever method is used for your type of buld
Use the app to discover the bulb.
Re-add it.

I don't recommend either of the above two approaches unless as a last resort.  Especially if you have a large number of bulbs.  This will take a long time to get fully back up and running, if it succeeds.

When the problem manifests somewhat randomly, and at times works, or at least only affects a small number of bulbs, troubleshooting is a great first step.
  • Did the problem start after a software/firmware update to the Hue bridge?
  • Did the problem begin after some kind of change?
  • Have diagnostics been run on the home network to ensure it is working problem?
  • Anything documented online that matches your situation and has a good solution?
  • If using a mix of brands of bulbs, are the problems limited to a certain brand?
To make this short... I did all of the above, I spent much time trying to find a pattern, a change to my environment, or anything potentially defective.

Essentially, I believe I may have found the problem.  Although the Hue bridge is using Zigbee to communicate with the lamps, it also shares a frequency spectrum near enough to WiFi signals that interference is a potential issue. Well, if you really want to boost the RF interference, put the WiFi network device, and the Hue bridge near each other.  Proximity increase the potential, or real, RF interference.  By creating interference, the Zigbee network suffers significantly.  So after thorough troubleshooting, my issue was having a WiFi AP too close to the Hue bridge.

Oddly, this was not something I really came across while researching the problem I was experiencing.  It was not until I read a research paper on the potential interference be 2.4Ghz Wifi and Zigbee that I realized my AP and bridge may be too close (approximately 3 feet).  

But, I should point out this was a recent change to my environment, yet I have had these issues on and off for a good while.  Further, the AP was still somewhat close, at about 6 feet.  So I would say most of the time the AP has been fairly close.  Today I moved the WiFi AP to another room, about 24 feet way from the Hue bridge.  I then when to each like that had a (!) next to it in Hue app>Settings>Lights and turned the light off and back on.  After about a minute the (!) went away and I regained control of the device.  This went relatively smooth and quick.  I would say this was the most positive sign I have had regarding stability and easy of communication among the devices connected to the Hue bridge.

Although I made this change just a few hours ago, the way things went so easily and quickly, it makes me think this may have been the predominant issue.  

I should add that a while back I did add more bulbs to my environment to ensure that the mesh network should have adequate proximity between bulbs and a reasonable changes to form good signal strength.

To sum, I wanted to get something posted right away in case it might help others.  I am very tired and realize this may be poorly written and a bit confusing.

I'll come back and review when I am rested.  So, when troubleshooting an unreliable Zigbee mesh network, include RF interference as a culprit between WiFi and the Hue bridge.

Saturday, July 25, 2015

Analyzing and troubleshooting network and bandwidth issues

Full diagnostics

This site reports back a great deal of helpful information.  I recently installed Tomato USB firmware (Shibby) on a Netgear R7000 and as part of the setup process, used this site to help with QOS setup and inspecting for any other issues.

Tuesday, July 21, 2015

Windows Update - accidentally applied update during production hours and now have restart countdown timer - how to stop it

I was troubleshooting a problem on a Windows 2008 R2 server that would not install an update properly.  After much Googling, I resorted to this:
  1. Computer>Manage>Configuration>Services
    1. Right click Windows Update service and choose Stop.  Set Startup Type to disabled.
    2. That stopped the restart countdown timer (where you can choose to postpone 10 minutes to 4 hours).  I need this server up all day and I could not sit and keep clicking postpone.
    3. Just stopping the service is not enough.  It will automatically restart itself (it use delay startup).  So you need to set the Startup Type to disabled.
    4. This should get us through the working day without an extremely important server rebooting.
Some notes about the problem.

Microsoft had released an out of band update and the server kept erroring over night trying to install it.  I stopped Windows Update Service, deleted the C:\Windows\SoftwareDistribution folder's contents, and then restarted Windows Update Service.

Apparently that took care of it because after a bit I received notification that the update was applied and the computer needed to restart.

This was not supposed to happen based on GPO settings but after review I saw that the time for installing the update was wrong (11AM instead of 11PM).

To finish this I need to get back on the server this evening after work hours, and set the Windows Update service back to Automatic-Delayed and then Start the service.  That should restore the status of Update services and I can then safely reboot the server.

Another tip: I have read only another solution to this was to run the command 'shutdown /a'.  This was supposed to clear the pending reboot.  It did not.  The command returned the message that no reboots were pending.

If you run into this situation you may want to try what I posted above, just remember to re-enable the Windows Update service and remove the Disabled startup type.  This will allow your system to resume normal updating.

Saturday, May 09, 2015

More on Wink Hub and open source home automation software

I own two Wink hubs.  One, using their cloud service, the other I kept offline for rooting and testing.  The night Quirky pushed the bad firmware, my online hub got it.  At the time I had no idea what happened.  I spent hours trying to get it functioning again.

The next day the announcement about the bricked firmware came out.  Once the instructions were posted on how to fix the hub yourself I followed them.  Apparently it worked.  The hub flashed and then stopped on blue.  After that I could get the hub online for short periods (blue light) and then it would go back to flashing purple.  I spent a good while addressing this, but I never was able to get it working reliably.

I pulled out the other hub, went through the whole thing again, apparently updated to the fixed firmware, and then had exact same problem.  It would connect to the home network for a while and then eventually go back to flashing purple.

So I've given up on Wink hub.

I went out and got a Hue bridge and some bulbs.  Since I already had GE Link light bulbs I needed something that would work with them.  So these days I have a mix of Hue bulbs and GE Link lights all controlled by the Hue bridge.

Home Assistant works with the Hue bridge.  I am still using Home-Assistant as my home automation software.  It meets all of my needs.  The developer and members of the group are continuing to add functionality to the software.  More device support, added features, etc.

I also spent plenty of time testing various other open source offerings.  Nothing has yet to best Home-Assistant.

Although there is not a downloadable application for Home Assistant, it does work with mobile devices and renders nicely.

Home Assistant source code on GitHub

Friday, May 08, 2015

Ubuntu - new setup of nginx, mysql, and php5 - permission denied when trying to view info.php

I followed the very helpful guide here:

I actually did the setup on Ubuntu 15.04 and they worked.  There is one part where you have to change the codename used.

The last step is to create a info.php file that displays all of the php5 information.
When attempting to view this file I would get error 404.  I googled and started trying to find the issue.  The log stated the file was not found.  Since this is new to me I wanted to make sure the correct location was being used for my files and that the permissions were set correctly.

I checked the permissions on the files in the html directory and they were correct.
So I created a test html file in the
directory.  A simple hello.html.  I tested and the page displayed.

So it appeared that my info.php file was both in the correct location and permissions were correct.

Next I checked what accounts the nginx server process was using, and the php5-fpm process.  I found that the server worker process was running as user nginx and the php5-fpm worker process was running as www-data.  It was my intention that both be running as www-data.

I check to see if nginx was a member of www-data:
$ id nginx
-output: uid=121(nginx) gid=133(nginx) groups=133(nginx)
No, nginx is not a member of www-data.

To resovle this issue I need to give the nginx account access to the php5-fpm.  To do this I needed to add the user nginx to the www-data group (www-data is the user and is a member of the group www-data).

To do this I ran usermod -a -G <groupname> username
$ sudo usermod -a -G www-data nginx

Next, confirm the user is in the group:
$ id nginx
-output: uid=121(nginx) gid=133(nginx) groups=133(nginx),33(www-data)

As another way to confirm one can run:
$ awk -F':' '/www-data/{print $4}' /etc/group

Now nginx is a member of www-data.  Next I restarted nginx server and php5-fpm
$ sudo service nginx restart
$ sudo service php5-fpm restart

This time browsing to http://localhost/info.php displayed my php info properly.

I hope this possibly helps someone.

Friday, April 24, 2015

Have you tried Sublime Text for script editing?

I recently stumbled upon Sublime Text.  I was working on a new build of Linux and Googled for a good script editor.  Sublime Text came up.  I gave it a try.  First the none beta version, version 2.  After a bit I tried the new version 3 beta.

I REALLY like this program.  I have been using the free Komodo Edit and while it is great, and I still use it too (they just released version 9 with some nice features), I mostly use Sublime Text.

Aside from having many built-in features that one wants in a coding platform, Sublime also has a Package Manager (Control) which can easily be installed.  Once added, the Package Control opens up so much more versatility, expandability, and support it is emmensly valuable.

In addition to the features, customizations, and add-ons, I particularly enjoy the massive selection of themes for the coding environment.  I have become a fan of alternate color schemes which help me identify different elements of code more quickly.  There is almost an infinite amount of pre-made themes free to download.  Additionally, one can create your own themes.

Sublime Text offers a fully functional trial version that does not expire.  It will prompt occasionally about using an unregistered version, but this trial is enough to get you hooked and want to buy a license.  Even better, the licensing is per user.  So once you buy a license, you are permitted to install Sublime Text on all of your computers.  Even work computers.  As long as it is you using it.

At the time of my purchase it was $70 USD.  It is worth it.

I'm sorry Komodo.  I still love you.  But Sublime has become my new coding best friend.

Here are some links to get an idea of what Sublime looks like:
And have a look at this! - Package Control

Thursday, April 23, 2015

Taking existing HD image and applying to SSD - test your alignment

To fully gain the performance benefits offered by switching to an SSD, the clusters need to be properly aligned with the physical sectors on the SSD.  If not, the performance gain from the SSD will be dramatically impacted and can also contribute to increased wear of the SSD.

First, a clean install of Windows 7 or newer onto an SSD is already setup to do proper alignment. This is not an issue.

The issue can occur when an image is captured from a mechanical (traditional) hard drive and then applied to a Solid State drive.  This could result in mis-alignment of the beginning of th clusters and physical sectors.

If you have taken an image of your computer and then applied it to a new SSD, and would like to know if you are properly aligned, perform these steps.

1) Open a command prompt (cmd) - Start>All Programs>Accessories>Command Prompt
2) Type in this command: wmic partition get Name, StartingOffset and hit <Enter> key
This will return something like this:
Disk #0, Partition #0 1048576
Disk #0, Partition #1 524288000

Now open calculator (Start>All Programs>Accessories>Calculator)

Now divide the value return by the command by 4,096.  If the result is an integer (no decimal value), then your partitions are properly aligned.

So in the example above division produced these results:

That indicates proper alignment.  Had the results been something like 254.415 then alignment is offset.

If alignment is offset there are ways to correct the issue. You may want to take a look at these free tools:

For the record, a SSD partition can be created with command line parameters to set alignment.
List disk
Select disk n (where n is the number that was given for your SSD in List disk)
Create partition primary align=1024
Format fs=ntfs quick
Active (assuming you want to install an OS)

The above commands are not a fix for a improperly aligned disk post imaging, this is a command to create the partition with proper alignment.

If these issue affect your or you are interested I suggest doing some googling and more reading.

Sunday, April 19, 2015

Wink bricked by update (~4/18/2015) - how to use your GE Link Bulbs with something else (link a Hue Bridge)

In case you have a bricked Wink hub I received an email from Wink and it is possible to repair your hub without having to send it in, provided you have the means necessary to follow these instructions.

I wanted to post this for anyone who might not have gotten the email:

We’re writing again to apologize for the current situation.  As previously mentioned, we suffered an outage this weekend that caused your Wink Hub to fall offline.  This outage was preventable and we are deeply sorry. It pains us to have inconvenienced you as much as we know we have.

While last night’s report was grim, we are now offering two solutions to users who are affected by this outage:

Send Us Your Wink Hub -  We’ll supply a box and roundtrip shipping.   A box will be at your door early this week, and you’ll have your hubs back (with all of the settings preserved) very quickly.    If you’re not into technical stuff- this is probably the easiest route for you.   To send us your hub click here.

Fix it Yourself -  If you are comfortable making some quick changes to your home’s router settings, we can likely get you back up and running in 10 minutes.While this fix requires one to have some degree of technical skill, we’re happy to offer it to all who want to try.  We can even walk you through it over the phone if you give us a ring at 844-WINK-APP . 

You can view instructions on how to repair your Wink Hub yourself via this link  These instructions now apply even if you previously deleted your hub.

We are happy to accommodate whichever route you prefer and apologize for creating extra work for you.  Please note that this outage was caused by a security measure put in place to protect you.  Although your home is offline and your hub is inactive - your home and your information remain safe.

The Wink Team
Above is an update, here is the original post...

I think I am done with Wink hub.  It is an extraordinary ordeal to get a simple API access token. Something that could be spit out on a web form just by authenticating with your account takes 7+ weeks from Quirky, if they get back at all.  And that includes occasional check-in emails with them asking 'what is the status of my request'.  I am not disparaging Wink\Quirky staff.  There is just clearly some sort of ignorance to customer support.  For me, without a token, the device is nearly useless for my purposes.

Interestingly one night I had to chat with them for support due to an issue with my hub and I brought up the API request and 7 weeks going by and what the status was.  I was told that an update would be made to my request, and to expect a response in 2 to 7 weeks.  :(

To their credit, the next day I got an email with my API information.  Very much appreciated that they got on it after so long.

So yesterday was the day I was up until 3AM trying to figure out why my hub would not connect. Then today I find out about the firmware update that was pushed and bricked many Wink hubs.

The Wink hub is nice in the variety of radios on board, and potential for supported devices.  And the cost.  But on the downside, cloud only access, extreme difficulty getting an API key (why so hard?  I happen to know it can be down instantly with user login and pass... but that is another story).  What started out as a pretty solid (as in, online all the time) device, took a turn for the worse with firmware 0.77.0.  By this point, I started having a lot of inconsistent, and frustrating issues.  Lights turning on - on their own.  Light groups turning on, leaving one off.  Or turning off, leaving one on.  Devices needing to be re-added.  Slow reaction times.

Other than the brick update, none of the above is really a deal killer for a $50 hub.  But what is confusing is the reluctance to turn this into something great with a reasonable pace.

1) An open source project called Home Assistant, which was the only home automation project I was aware of that you could get a token immediately, was my saving grace.  Otherwise, I would have been real frustrated with the wait for them to issue me API access. But by going to the Home Assistant site, you could put your Wink user and pass in, and immediately get back a token that would allow integration into Home Assistant home automation project.  This tells me that there was really no reason to wait 7 weeks for API access, and just by chance finally get it.  It was a simple as a web form.

2) With potential support for so many protocols and devices, why keep it so limited?  Why not take a more agressive approach and open things up.  That would spur sales, community development, growth, and a more ROI product.

3) Considering the amount of competition in the market, I never have been able to understand why the Wink hub was rolled out, locked down, and eventually (unfortunately, blundered into uselessness).  I'm done.  Had a different, more open, more inviting approach been taken, the Wink hub could have been a tremendously popular device.  But no...

The real purpose of the post is a tip on how to re-associate items, like GE Link light bulbs with another device if they were not removed from the Wink hub (because you couldn't!).

First, the GE Link bulbs use Zigbee.  The Hue bridge supports Zigbee, and these bulbs.  The way to reset these bulbs for pairing is as follows:
Power on the bulb for about 5 seconds.  Turn off for about 3 seconds.  Repeat this 5 times.  On the fifth time you may see the bulb fade after power on, and at this point it should be cleared for easy pairing with another device like the Hue bridge.

Also, the bulbs have a serial number.  It may be possible to do manual additions using the serial number.

I just wanted to pass along if you try to use a bulb with another hub, and it does not pair right away, don't worry, the bulb can be cleared and paired.

BTW, the GE Link bulbs are easy to setup with the Hue bridge.  Compare to a Hue bulb, they do not dim as much, but they do work fine, and can be grouped into scenes.

Tuesday, March 31, 2015

Mac OS X record of installed software (including operating system install)

The file /Library/Receipts/InstallHistory.plist contains a full record of installations, some details about the installation, and date of install.

I stumbled across this today and thought it could come in handy with regard to certain situations.  I just wanted to note it in case anyone else didn't know about this file (like myself).

One potential use I see is finding out what the initial operating system version was for the Mac.

Thursday, February 26, 2015

What is going on recently with the Quirky Wink hub (rooting, API, home automation, home-assistant)

Many have purchased the Wink hub, which is sold at Home Depot as a controller  for home automation devices.  The nice part about the Wink hub is the low cost and number of radios (supported protocols).  Those two items combined makes a very appealing device to use when getting started with home automation.

But there are some drawbacks.  Firstly, the Wink hub operates through a cloud based service.  This means you can access Wink at home, or away from home, which is nice.  But for those of us who want to take full advantage of the hub, the locking down of the API and cloud requirement are really handicapping the device.

If the hub you purchase is running older firmware, it can be rooted.  Once rooted, the doors are open for getting creative with the hub, adding functionality, integrating into customized HA software, etc.  But this too can be a challenge.  First, the hub has to have a certain version of firmware or earlier else the sql injection vulnerability (allowing one to get root) is patched.  In addition, even if you do gain root, updating the firmware requires much effort to maintain root through the update.

Quirky is only giving API access to those who submit requests via email and so far it is known that they may take a long time to respond with the required information, or they may not respond at all.  This difficulty is preventing those developing HA software from being able to incorporate the Wink hub.  Which means, there are less cool things you can do with the hub due to the software limitations.

I wish that Quirky would change direction with regards to the Wink hub.  Instead of trying to prevent root access, embrace it.  With its low cost, and easy availability (Home Depot), and wide range of support devices, the Wink hub is in a position to be a big seller.  There is already a community developing for the rooted hub and new and exciting features are being added.  If Quirky opened up the hub for root, I think it could turn into a hugely popular device, with a large community of talented people developing for it.  It could be become the most popular hub on the market.

If you are like me and want to find some software that will let you create more advanced scenarios for controlling home automation, fortunately, there is at least one offering for non-rooted Wink hubs.

Home Assistant:

This is still being developed, but it is far enough along to allow one to integrate their Wink hub and many different HA devices are already supported.  In addition, it lends itself to adding custom components, and end user expansion/development.  Home Assistant is open source and free.  I recently set it up and one of the really cool things is you do not have to hope that Quirky will send you the required access tokens to use the API as Home Assistant has a page that lets you put in your Wink user and pass and will generate a token for you.  So you can get started right away.  Setup is pretty simple, especially if you are familiar with Linux and Python.  Even if not, there are clear instructions and a helpful forum to help you get started.

As of this moment. this is the only non-Wink software I am aware of that will let one use the Wink hub (without having to root).

Speaking of software, there is a commercial product called CastleOS that looks promising.  There is still much to be done with CastleOS's development, but one of the really cool features is builtin support for voice recognition using Kinect for PCs.  I have found that the xbox 360 Kinects (with A/C adapters) can be purchased very affordably from places like GameStop ($25) and are easy to setup with CastleOS and work very nicely.

Unfortunately, at this point in time, CastleOS does not provide much documentation, and only supports a limited range of products.  The Wink hub is not supported.  The do offer a 30 day free demo of the software and the purchase price is $199.  Although I am finding the free software Home Assistant to be more valuable to me ATM, CastleOS may be something for you to check out if you want at more turn-key product that is Windows based, and supports Kinects for voice.

Here are some links on rooting the Wink hub and some links to items that can be used with a rooted Wink hub:


Discussion and links to other software like Blink

Finally, I recommend having a look at Home Assistant if you would like to use or become involved with a burgeoning application that offers Wink hub support, customization, and growing support for HA devices through an open model, plus existing cool features with more to come.