Home‎ > ‎Projects‎ > ‎The Home Automation System‎ > ‎


The Year-end Retrospective

It's been about a year since I started on this project and while the end is in sight, I still do not have a functioning replacement for thermostat I could have bought for $300.  That sounds like terribly slow progress to obtain a replacement for a mass-market tchotchke.  And in all fairness it is.  But wait, there is more.  In addition to being terribly slow, it's also an exceptionally expensive.  The only conclusion that a rational human being can draw from these facts is that creating a replacement thermostat at home, by someone who has no electrical engineering experience or training, is stupid because the same result can be achieved quicker and cheaper by driving down to you big-box store and buying one.

Of course, recreating a home thermostat is not the only goal here.  That's certainly one of the main goals and the project will be complete once the functionality of a thermostat is implemented, but there's so much more.  I'm not going to ramble on about the underlying "vision" because that too is just a side effect.  The real goal here is to learn and explore.  To step out of the comfort zone, to learn something by failing, getting up, failing, getting up, etc.  To get a glimpse at the man behind the curtain.  To get that hit of serotonin (at the end it's all about pressing a button and getting a pellet) when you finally solve that one problem that has had you banging your head against the wall for the last week.

What is the realistic status of the project, minus the hippy bullshit?  The board PCB is at revision D and is currently being manufactured.  Like I said with every other revision, hopefully this will be the last.  I have high confidence that all of the hardware bugs have been addressed.  The latest change all relate to handling inrush currents of capacitive loads.  I'm confident that any future shortcomings will be addressable via software.  After that, the only custom hardware item left is the serial break-out board for the Beagle Bone.  I don't anticipate it being a super huge deal, but I said that a year ago.  So what do I know.   All in all, I'm hoping to have this system operational before the summer heat sets in.  I'm really anxious to start collecting performance data of my home's mechanical systems.

Back to the hippy bullshit.

What has been learned so far?  First and foremost: this stuff is complicated.  This is pretty basic mixed signal stuff (not splitting the atom over here) and yet it is littered with corner cases and caveats and things that you have to ... know.  This stuff is not really intuitive until it becomes intuitive.  You can't just stare at a microcontroller documentation and get it.  You have to get into it and do it.  I use an opamp (a four opamp package) in the design, and I can tell you how it works, but that's more due to rote memorization than actual understanding of what the stupid thing is doing.  Yes, it's amplifying, duh, but why?  What is its motivation to amplify?  Is amplifying its life goal?  That was a joke.  Semiconductors don't have motivations.  It's also a very good possibility that I'm just slow and that everyone else gets it right away.  I've heard, can't think of where, that stupid people tend to not know that they're stupid. 

Overall the journey has been just as satisfying as it has been frustrating.  At the beginning I knew what an I/O board was.  I knew what it did on the account that I do make my living with industrial controls.  However, now I understand how it operates, why the designers made the choices they made, and why the manufacturers charge what they charge for them.  And it's not limited to just I/O boards.  The world of electronics in general has had the veil lifted.  While there is still a world of secrets out there to be learned, and realistically I can not possibly learn all of them, the thing that is electronics, the thing that drives modern day society is much less of a mystery than it was a year ago.

Through the world of electronics I have also learned a way to enjoy mathematics.  It all kind of started making sense together.  The electronics stuff needs math to be understood and desire to understand electronics provides a concrete application of and incentive to learn the math.

On to more concrete items.

Tools matter.  Full stop.  There's the platitude about a poor craftsman blaming his tools.  Certainly there is truth to that, but you don't see NASA assembling space shuttles with a hammer, a screwdriver, and a jar of peanut butter.  I could not have made the progress that I have made without a couple ICD3 programmers, an oscilloscope, a lab power supply, and a truck load of various meters and other specialty tools.  The ICD3 programmers alone are worth their weight in gold because I am able to program and debug two microcontrollers without having to move it back and forth, having the firmware re-download onto the programmer, etc.  

Low-pass filters rock.  The very first revision of the board did not have a low pass filter on the analog inputs to the micro and the values out of the ADC were all over the place.  With the addition of the low pass filter the readings are rock steady. 

Fuses suck and they're expensive.  Sure that was unnecessarily dramatic, but a fuse is one of those items that seems so simple on the surface: You expect a 10 amp fuse to blow at ... 10 amps.  And yet if you actually try to get a 10 amp fuse to blow at 10 amps you would be very disappointed.  

Specialty integrated circuits rock.   Yes that little chip costs $5 in singles, but the components to replicate the functionality will not be any cheaper. Plus you will  spend pretty much forever trying to match what a team of engineers who specialize in whatever that thingamabob chip does have produced.

Capacitors are your frienemy.  Can't live with them and you definitely can not live without them.  Your design will fail if you don't use enough and your design will fail if you use too many.  Oh and also your design will fail if you use approximately the right amount, but forget the resistors.  

Surface mount is the only way to go.  I started the project with the romanticized view of the through-hole components, but I'm definitely a convert at this point.  The space and thus directly the costs are tremendous compared to through hole components.  If not for surface mount stuff this board could easily be twice the size.