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.
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.
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.
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.
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.
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.
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.
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.
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.