What is a “Maker“, you ask? Well, a Maker is just someone who makes or produces something, usually things like electronics, robotics, and 3d printed items and parts, usually as individuals or small groups.
In my case, I’m getting started with Arduino, an awesome “microcontroller“, which can be used to control electronic devices by using C++ to read data from sensors, and then use the application of logic to produce a more useful device.
So what does that actually mean? Lots and nothing, all at once, so I had to build an example project to get the creative juices flowing!
Enter The Smart Desk Fan Thermostat
I’ve kind of always wanted something like the Nest Thermostat, but never could really justify the cost, plus as a renter, I don’t have full control over my HVAC systems, so I wouldn’t get full functionality anyways. We have a pretty big space here now too, so controlling just the furnace for heat isn’t always the best answer… During the day when nobody’s home but me, for instance, I prefer to just use an electric radiator heater to take the chill off of my office, rather than burn oil to heat the whole house.
The only problem with this approach is that a fan is needed to move the air about the room to provide even heating, but I don’t like the fan to blow cold air, and I’m far too lazy to have to turn that sucker on and off every few minutes. Enter Arduino, and my very first project!
Now, I may be new to Arduino, but I’m a very experienced programmer, so first I set about defining how the fan should work, and this is what I eventually came up with:
- If the current temp is less than 70, do not run at all. Later, I think this could be adjustable, but for now, the premise is that air < 70F = cold, so do not blow.
- Use some kind of “smoothing logic” so that the fan does not quickly and repeatedly turn on and off… My first test versions suffered from this, and it took a while to “perfect” the code. (Assuming that code could ever be “perfect”, lol)
- Use intelligent logic to update an LCD display and log to serial.
- Use intelligent logic to prevent “feedback loops”.
In the process of making this post, making my thermostat, and simultaneously receiving fun, new, parts, my project has taken many turns, and I’m going to try to update this blog with the new code, and hardware setups.
Interested? Stay tuned for more!