HA Hub is Live!

HA Hub website branding. Well after many weeks of learning the Orchard CMS, HA Hub is finally live. HA Hub is my site devoted to DIY Home Automation. The content on the site is currently pretty limited. Just one tutorial and a couple of blog posts, but I wanted to get it running so that search engines can start crawling the site. I still have more to learn about Orchard to make it do all of the things I want, but now that I have a framework up and running, I can start spending more time on creating content. I hope that this approach will result in continually improving quality for the site.

The next couple of tutorials I want to do are “Simple Home Automation” Using LIFX color changing bulbs. LIFX bulbs produce a really nice quality light and communicate via wifi, so there is no hub required. Then I want to do a tutorial where I start creating a more sophisticated home automation system by integrating the LIFX bulb and the WeMo Mini smart plug that was the subject of my first tutorial on HA Hub, with the Amazon Echo to provide voice control of my home automation. The Amazon Echo and its ability to integrate with, and provide voice control of many different systems, is one of the most exciting developments in Home Automation in many years.

So watch for these tutorials. I will announce them here when they go live.

My Need for Speed!

While I was completing my initial training for WordPress, I was working on my desktop computer. I have also have a Microsoft Surface Pro 3 which I enjoy a lot. However, when doing a lot of development, and especially if I’m also undergoing training at the same time, I prefer sitting at my desk and using a full size keyboard, mouse, and my dual monitor display. I used this basic setup for work for many years. While this system was quite old in computer “years” (I had built this system in 2009), performance was okay because I was running WordPress from a hosting service.

As soon as I began developing my home automation site, it was obvious that my aging system (it’s not just me) was not going to cut it. In developing my HA website I’m using the Orchard Project CMS. I’m using the Orchard Project because it is open source and developed using Visual Studio C#, the .NET framework and MVC. The development environment with which I’m most familiar. Because I’m using this opportunity to further develop my skills as well as develop an online community to support DIY home automation, I’m running the full source code on my local machine. Compiling and displaying my site on the old hardware was excruciatingly slow and I deserved (or, at least “I wanted”) an new computer.

When it comes to portable devices I pretty much have to find some mass produced machine that fulfills as many of my needs and desires that fits within my budget. But when it comes to other computing platforms, I prefer to build my own, making my own decisions about what goes into the system. I have built every desktop or specialty system that I’ve used since the mid 90s. In fact, the 2009 system is housed in a case I used to build my first system. I’ve upgraded the motherboard, processor, and other components to build several systems in this case. Since this system contains a large amount of redundant disk storage utilizing Windows Storage Spaces, I intend to keep it online as a “headless” home server.

Since I’m keeping my existing system as a server with all of its storage for photo, video, music, and digital document archives, that gives me more freedom in design choices for my new system. Since I built an HTPC (home theater PC) back around 2000, when high definition and DVRs were uncommon, I’ve always been interested in the challenges of fast, small form factor (SFF), and quiet computers. So I had the parameters for my new PC. First and foremost, it had to be fast. Intel Core I7 processor was a must, but other components can contribute as much or more to a system’s performance today. I also wanted as small a system as possible, because I was still going to have my old tower hanging around as a server. I had built a very compact system a few years back from a “barebones” kit. While it used some standard components and performed well at the time, it was eventually done in by the failure of non-standard components that would be expensive and difficult to replace. So the new system had to use components that met some industry standard that was supported by many vendors. Since the computer was going to sit next to me on my desktop, it had to be relatively quiet. Quiet was actually a bigger criterion for my HTPC than was performance, but the techniques I learned there would help here as well.

The System

Balancing the sometimes competing requirements outlined above, here is the system I built.

Completed System
Completed system

In a future post, I plan to describe my build in detail. In the meantime, if you are interested in reviewing the components here is what’s inside.

Components Selected
Components selected for my build.
Component Description
Case Silverstone Tek SG02B-F-USB3.0 ABS/SECC Steel MicroATX Desktop Computer Case with 2X USB3.0 Front Ports Cases (Black)
Motherboard ASRock Motherboard Z270M PRO4
Processor Intel Core i7-7700 Desktop Processor 8M Cache, up to 4.20GHz7th Generation (BX80677I77700)
RAM G.SKILL 16GB (2 x 8GB) TridentZ Series DDR4 PC4-25600 3200MHz for Intel Z170 Platform Desktop Memory F4-3200C16D-16GTZ
Storage Samsung 960 EVO Series – 500GB NVMe – M.2 Internal SSD (MZ-V6E500BW)
Power Supply SeaSonic G Series 550-Watt ATX12V/EPS12V SLI Ready CrossFire Ready 80 PLUS GOLD Certified Modular Active PFC Power Supply SSR-550RM
CPU Cooling Corsair Hydro Series H55 Quiet Edition Liquid CPU Cooler
Case Cooling Noctua NF-A8 FLX Premium 80mm PC Computer Case Fan
Optical Drive LG Electronics Internal Super Multi Drive Optical Drives GH24NSC0B
Operating System Microsoft Windows 10 Pro 64 Bit OEM
The graphics card listed below is not shown in photo above because the original build was done with the on-board video. While the on-board video is more than adequate for most text, I decided that I wanted a little more performance and a DisplayPort output for a future high-performance monitor.
Graphics Card EVGA GeForce GTX 1050 Ti SC GAMING, 4GB GDDR5, DX12 OSD Support (PXOC) (04G-P4-6253-KR)
The descriptions above link to a product page on Amazon. I may receive an affiliate commission if you purchase from the link.

Here is a naked view of my new computer. As you can see, it is quite stuffed.

Stuffed compact computer.
Components stuffed inside of compact computer case.

The large fan on the right side is attached to the radiator for the sealed liquid CPU cooler. I had to fashion some custom brackets to hang the radiator to the left of the drive bays. I only secured it the top of the case. Because of the relatively slow speed I’m able to run the fan, along with rubber insulators I cut from an old bicycle inner tube, the two brackets hold the radiator without allowing a lot of noise. Because I’m using the Samsung 960 EVO – M.2 Internal SSD mounted on the motherboard, there is a decent amount of space below the optical drive where you would normally mount a 2.5-inch boot drive for airflow. Using this space for the radiator, I had to sacrifice the ability to use a full length graphics card, but since I’m not a big time gamer, that was a sacrifice I was willing to make. In the photo above, the other fan you see on the left is for the EVGA GeForce GTX 1050 Ti SC that I decide to use after my initial build. It has been plenty fast for me. So far I’ve been very pleased with the results.

Orchard Project

Well despite having been interrupted by real life a couple of times, I’m back to learning more about the Orchard Project CMS. As I mentioned in a previous post, I’m reviewing a previously completed introductory course on Pluralsight. The course was recorded using an earlier version Orchard so I sometimes have to take some time to figure out the new way completing some tasks. Fortunately the underlying concepts haven’t changed too much. I am discovering that the newer version may be overkill for the site I’m planning, but I’m going to continue because I still want to learn the software. It appears that much of the complexity of Orchard is implemented to allow the software to support many different user roles. This would probably make Orchard an excellent foundation for a large corporate website where it is desired to control access by users in narrowly defined roles.

One thing that I have learned is that compiling and hosting Orchard development is taxing my six year old computer. I’ve decide that it is time to build a replacement desktop system. I will continue running my existing system as a whole house file server with 6Gb of redundant disk storage.

With the exception of mobile computing platforms (I’m currently using a Surface Pro 3) I’ve custom built all of my desktop systems since the mid 90s. I do this for several reasons; 1) fun, 2) control of the components, and 3) reuse of components when possible (my current system is still housed the same case I bought for my first build). I’ve been interested in building powerful but compact systems since I built a home theater PC (HTPC) back when over-the-air high-definition broadcasts were first becoming available. One of the key criteria for an HTPC was noise reduction. I also consider this of paramount importance for a system that will be located near me in my office.

I’m excited about this new system build, and have begun ordering components. I’m planning to document this build and posting it to this site in case anyone cares to follow along.

Gotta go, I hear Orchard calling.

Month Two of my New Year

Well, it’s February and I’m a little behind schedule of where I had hoped to be on bringing my new project to life. Now that this site is “live” and in acceptable shape, I’m starting to bring my main site to life. As I mentioned in an earlier post, I intend to use the Orchard Project CMS as the platform for my home automation website. I’m also hoping to use Amazon Web Services (AWS) to host the site. Both of these choices were made primarily so that I can use this project as an opportunity to learn and/or increase my knowledge of these platforms. I’m using the Orchard Project because most of programming work I’ve done over the past several years has been in the .Net environment using C#, HTML, JavaScript and CSS to build a custom website for courseware development by the Air Force. Using Orchard lets me increase my understanding of C# and the Model View Controller (MVC) design pattern without having to create the entire framework from scratch.

I’m hoping that learning how to host a website on AWS will give me the skills to work in the growing field of cloud computing. To accomplish these goals, yesterday and today were spent training on Orchard through the Pluralsight website and AWS on Lynda.com. The Orchard training was a review of a previously completed lesson to refresh me on getting my local development environment setup while the AWS training was mostly all new information.

So far so good. I hope to have the site live with a few introductory posts and a default theme within a week or so. Then I will continue creating content and working on a unique design for the site before starting on creating my custom training module.

Hope you’ll follow along.

What’s Next?

Well I’ve completed my training on WordPress fundamentals. While I will be taking more WordPress courses in the future to advance my knowledge of the platform, it is time to get back to my main task of building a site devoted to do-it-yourself home automation.

I’m starting a new course on Lynda.com, “Amazon Web Services Essential Training”. I would like to host my next site on AWS for two reasons; 1) to have the ability to easily scale the services if (hopefully) the site is successful, and 2) as an opportunity to gain experience with cloud computing platforms in case I need to reenter the corporate workforce.

As I move on to the development of my home automation site, I’m planning to use the Orchard Project CMS in order to keep advancing my Visual Studio and C# skills, but I will be keeping my hands in WordPress as com back to this site to document my process.

Until my next post!

Using content from YouTube and other streaming sites.

Working on the next unit in the media chapter of my WordPress training. This unit covers embedding content from sharing sites such as YouTube. The first technique involves simply pasting the url of a page supporting oEmbed. If the site supports oEmbed, then WordPress can automatically handle the embed.

Continue reading Using content from YouTube and other streaming sites.

Fall 2016 Visit to Tennessee

I’m at the stage in my WordPress training where I need to create an image gallery along with adding a featured image. Rather than just throw up some random images, I thought I create a post recounting my fall trip to Tennessee.

In October of 2016, I visited east Tennessee with my wife Jan. We stayed in the city of Knoxville, but made a couple of excursions which presented me with some nice photo opportunities. I’m not particularly happy with the featured image above because of the portrait orientation, but it is currently my favorite standalone image from the trip, so I will leave it for now.

Continue reading Fall 2016 Visit to Tennessee

How Did I Get Here

In this second post, I’m going to backtrack a little and tell you how I got here. Before being able to make my first post, I had to my blogging environment setup.

Now I had registered my domain some time ago, but had just allowed GoDaddy to park it. For those of you unfamiliar with domain naming conventions (I am hardly an expert), “.me” is technically the top-level domain (TLD) for the country of Montenegro. However, it is a commonly used domain-hack used for registering personal domains.

Continue reading How Did I Get Here

2017 New Year, New Life

Dover Williams AvatarWelcome to my new blog. 2016 was a year that presented me with many challenges, culminating with the elimination of the job that I had been doing for the last nineteen years. While my work developing custom software for a company working on an Air Force contract was rewarding and allowed me to grow my skills and work with many good people, the work had become repetitive and at the end I was comfortable that it was time to go.

Continue reading 2017 New Year, New Life