11 ms·
Building my own HomeKit Thermostat
- bombcar 6y agoThis is ingenious (and thermostats are notoriously simple) but I'm surprised it was easier than just running a neutral wire for an Ecobee.
- zepto 6y agoYeah - it’s a fun project. I considered doing the same, because of course. However there is more than one solution for ecobee. 1. Replace the existing wiring! Probably not as hard as you think. 2. Use an external power supply - this is supported by ecobee. 3. There are 2 to 3 wire converters: https://support.ecobee.com/hc/en-us/articles/360008702251-FAST-STAT-installation-for-heat-only-systems https://support.ecobee.com/hc/en-us/articles/360008702251-FA... Roll your own is fun, but these options are all going to be quicker and result in a better solution.
- frenchie4111 6y agoDidn't realize external power supply was available on ecobee, I contacted support (before purchasing) and they only gave me the neutral wire suggestion.
- zepto 6y agoYeah - I was also misinformed by support both before and after purchase. They have a great resource library but their support staff don’t seem to get enough training. Edit: I had to fish a new wire for one thermostat, and rewire the furnace for another. The results were well worth it though because of the wireless temperature and occupancy sensors.
- gregmac 6y agoOn the topic: I've had an ecobee 3 for the past few years, and I'm pretty happy with it - if you're in the market I'd highly recommend one. Killer features are mostly from the room sensors: * Keep upstairs comfortable at night, main floor during the day * Auto home/away mode (based on motion). This works so well, I only just changed the schedule to account for working from home about a month ago I also like "Run fan for minimum of x minutes per hour" as it makes a noticeable difference on sunny days where the South side of the house is normally a lot warmer than the North. Other than that, the app is decent and it's easy to connect to Home Assistant. I have an older wifi thermostat controlling my fireplace, and a very useful automation I only just added turns on the furnace fan when the fireplace is "on" (temp set above 21) which helps keep the house balanced.
- wincy 6y agoMy only complaint about the ecobee is the Alexa integration will listen when I tell my Echo Dot to play music then I’ll end up with the Dot playing Apple Music and the Ecobee playing I Heart Radio or whatever because it doesn’t support Apple Music. So two songs playing and one on a garbage thermostat speaker. I wish it could just have Alexa support but only for thermostat stuff then ignore anything else.
- johns 6y agoWhy not turn off Alexa all together on the stat and have the regular Alexa control it through the integration?
- wincy 6y agoWell the thermostat is in the living room and the echo is near the Alexa enabled microwave in the kitchen. So then we wouldn’t be able to adjust the thermostat from the living room without buying another Echo or Echo Dot.
- JamesSwift 6y agoI too am pretty happy overall with it. The web portal is pretty bad though. Its very finicky about logging in and maintaining its session. The app "Just Works" for the most part.
- covercash 6y agoI’ve had a very good experience using one of these to provide HomeKit compatibility to Nest devices: https://www.starlinghome.io https://www.starlinghome.io
- frenchie4111 6y agoThis is cool. It's crazy to me that this sort of thing needs to exist
- CharlesW 6y agoThanks for posting this! This looks like a fine product, and it led me to learn that Starling Home Hub is effectively "homebridge-nest[1] in a box", which is great news for Homebridge[2] users. [1] https://www.npmjs.com/package/homebridge-nest https://www.npmjs.com/package/homebridge-nest [2] https://github.com/homebridge/homebridge https://github.com/homebridge/homebridge
- covercash 6y agoI ran Homebridge for a while but got tired of dealing with maintenance. The Starling box is set-it-and-forget-it. I don’t think I’ve had to access the control panel since installing it so it was well worth the $100 imo.
- CharlesW 6y agoFor sure, the reduced cognitive overhead is absolutely worth the price of admission. I need to run Homebridge anyway for a bunch of devices that I want to be available via Alexa and HomeKit, so for me there was no incremental complexity. I'm running Homebridge via a Docker image[1] on my NAS (using QNAP Container Station), with Homebridge UI to manage. [1] https://github.com/oznu/docker-homebridge https://github.com/oznu/docker-homebridge
- mattowen_uk 6y agoNeat, this dovetails into a recent comment of mine quite nicely.. https://news.ycombinator.com/item?id=25465667 https://news.ycombinator.com/item?id=25465667
- amelius 6y agoThermostats have been the subject of maker magazines since the beginning of DIY electronics, (personally) to the point it became boring to read another article about them. If only I could have guessed they had the potential to spawn a billion dollar industry. Anyway, just typing "DIY thermostat" into Google returns quite a lot of projects.
- MarkusWandel 6y agoI've been running homemade HVAC control for 12 years now. A few points: 1. Have "can't fail" safeties. In my case, that's the existing thermostat in parallel with the relay (so that the house can't freeze up if my system fails) and a second extra thermostat in series with it (so that if it fails stuck on, things won't overheat too badly). The second safety thermostat can be out of the way, like in the basement. 2. Assuming you live in a northern area and have a furnace that's less than a decade old, it may well be a two-stage (i.e. high and low heat mode) one set up for autostaging (run on low for 5 minutes, then fire up full blast) because the installers were too lazy to fish the extra wire to run a proper 2-stage thermostat. My homemade system has a 0.3 degree Celsius difference between the low and high stage cut-in, plus some hysteresis to avoid short cycling, and it keeps the temperature wonderfully stable (within 0.2 degrees of the set point) with the furnace only ever switching to high if you turn up the temperature (on the very most brutally cold winter days it might run almost continuously on low). At least here in Canada, installers have to leave the technical manual with the furnace, so you know which DIP switch or jumper to change to disable autostaging. 3. Mechanical thermostats have something called an "anticipator" which slightly warms the sensing element as the furnace runs, so it tends to turn off below the set point. This is to avoid overshoot. Digital thermostats do it in software by pulse width modulating the furnace enable as the temperature nears the set point. In my case it's completely unnecessary to code this up - I guess the thermostat location is just perfect - but if you do get overshoot, just simulate it in software. 4. AC units can be damaged by short-cycling and sure enough an early version of my system had a bug that caused this. Luckily I noticed right away. Now it's full of safeties like minimum run and rest times and probably much more conservative than a real thermostat. Longer AC run times are better for dehumidification anyway. I also enforce minimum run times on the furnace.
- frenchie4111 6y agoGreat tips! I am already doing the parallel with current thermostat (I don't trust my system at all). I will look into the other things as well, maybe I'll add them in my v2.
- ghaff 6y ago>Have "can't fail" safeties. This is one reason why I've never gotten anything more complex than a simple Honeywell programmable thermostat. I haven't felt a real need but I also just don't trust "smart" thermostats not to fail off in the winter which can be a really serious event if you're not around (and I normally travel a lot). There are other failure modes for heating of course but I absolutely don't want to introduce another one for no good reason. (I don't have AC.)
- vmception 6y agoHomeKit often times is better than the OEM's app for their own product.
- frenchie4111 6y agoI'd be interested in seeing if products can become HomeKit only. Unfortunately you still sort of need your own app for setup, etc. It's a decently sized barrier for manufacturers, and their app ends up shit anyway.
- saagarjha 6y agoYou can actually set up some devices without downloading a manufacturer app. I did this for an iDevices thermostat I bought recently, although I downloaded their app later because the home app has no idea how to do "keep the temperature between this range during these hours". (The app is not half bad, FWIW.)
- BostonEnginerd 6y agoI had a really good experience with their customer support - it was great talking to a real human who wasn’t following a script.
- alexwasserman 6y agoMost the HomeKit products I've tried don't need the native apps, just Homekit native on the phone. Vocolinc and Wemo both are like this. In fact, the latest Vocolinc app has a "Homekit" mode, where it's basically just passthrough. Used for updating firmware only, pretty much. I recently added a new Wemo smart-plug and used Homekit, not the app. The plug works fine in Homekit, doesn't even appear in the Wemo app. The only downside is no way to update firmware. Biggest downside to Homekit only, is that you lose specific functionality a manufacturer might have. That said, I find Homekit to be better than the vendor stuff anyway, so stick with it.
- kitsunesoba 6y agoIt's a bit of a recurring pattern with Apple software. Good example is with tvOS, where streaming apps based on the template app that Apple provides are typically less frustrating and more functional than bespoke streaming apps. Similarly, on iPadOS streaming services delivered through Apple TV+ channels often have better quality than those delivered via provider apps — this has been extremely visible going from watching Star Trek through the CBS TV+ channel w/4k video and 7.1 surround to The Expanse through the Prime Video app which delivers a "1080p" stream that often looks worse than Youtube 720p. I think the root problem with all of these examples is companies treating software as a checkbox when it should be treated as core to the product.
- runjake 6y agoIt doesn’t render on my iPad but which esp32 HomeKit library is the author using? I have an esp32 sensor system in my garage I’d like to add HomeKit functionality to.
- frenchie4111 6y agoThis is the one [1], sorry about the link not rendering. Pretty simple to use, I just followed the Lightbulb example [2] [1] https://github.com/Brawrdon/esp-homekit-arduino-sdk?utm_source=platformio&utm_medium=piohome https://github.com/Brawrdon/esp-homekit-arduino-sdk?utm_sour... [2] https://github.com/espressif/esp-homekit-sdk/tree/master/examples/lightbulb https://github.com/espressif/esp-homekit-sdk/tree/master/exa...
- runjake 6y agoSo great. Thank you. I think you’ve saved me a bit of trouble with my sensor project (a chest freezer monitor).
- frenchie4111 6y agoGood luck. I'd love to hear how it goes
- sircastor 6y agoI’ve been quite frustrated that both of the houses I’ve lived in in the past decade have used “communicating” systems, meaning that the products exploring this space are out of reach. HVAC professionals describe these systems “Ferraris” of thermostat control, but their remote features, API, etc are awful - I’m stuck with what I can only describe as a touch thermostat made by the lowest bidder.
- craz8 6y agoI would pay good money to get access to the API my communicating thermostat uses - the Trane device is terrible in many ways that basic software updates could fix
- hedora 6y agoYeah; ours has a variable speed compressor and variable speed fan (it is also a heat pump). The wire protocol is a closely guarded trade secret from what I can tell. The manufacturer sells a custom EcoBee to work with it, but their own custom EcoBee can only set a few fixed speeds instead of variable speed. This market is ripe for disruption. Sell me something with a 30 year warranty, and plans to wire it to a raspberry pi. I’ll pay twice as much for that as I would for anything with a sub 20 year warranty. Since California is close to banning new natural gas installations, focus on making a heat pump that’ll last forever. Military grade limited access compressors exist and aren’t expensive compared to having someone in Silicon Valley perform a house call. Also, old air conditioners regularly lasted 30+ years, so this is a solved problem, and the patents have probably expired. I’ll probably buy your weird proprietary thermostat because I’m lazy, but if it sucks badly enough, I’ll know there are decent third party options.
- craz8 6y agoMy heat pump was sold as having “700 levels” (that’s 30-100% in 0.1% increments), but the Nexia software shows unit % and also Level 1 or Level 2. Who knows if it’s actually using the fine grain control I paid a lot of money for? My first thermostat also died in the first year when the power went out. What happens in 10 years when it’s no longer made? I have to dump the whole system and start again? Also whole features are poorly implemented - Quiet Mode limits speed at night, but not until after startup (or, I think when defrosting) I’m a bit unhappy with Trane/Nexia at the moment and would absolutely not recommend
- aliljet 6y agoHonestly, if HomeKit was something that we could use in an operating system that wasn't owned by Apple (~70% of devices on the planet ride Android, to be clear), the title here would feel a little bit more reasonable, but alas, Apple is the truest of true closed ecosystems. Open doesn't look like HomeKit and those boycotting walled gardens should know better than to find themselves trapped inside Apple.
- frenchie4111 6y agoSure. I'll accept that I am just complaining that I can't get from one walled garden to the other. From my perspective, if they are all walled gardens, I might-aswell choose the best one.
- aliljet 6y agoThat's totally fair. The title of this post is much more reasonable now. It avoids the argument that HomeKit is open and instead focuses on the cool engineering effort. :)
- pimeys 6y agoYou can install a homekit connector to home assistant, which has then great Android integration. No need to lock yourself to any garden. I use HASS with homekit, all kinds of zigbee devices and a german xml-rpc protocol for heating, all operated through HASS from one app.
- jrmg 6y agoI think that what you're wanting is this: https://www.connectedhomeip.com https://www.connectedhomeip.com https://github.com/project-chip/connectedhomeip#connected-home-over-ip https://github.com/project-chip/connectedhomeip#connected-ho... Amazon, Apple, Google, and the Zigbee Alliance joined together to promote the formation of the Working Group. Zigbee Alliance board member companies IKEA, Legrand, NXP Semiconductors, Resideo, Samsung SmartThings, Schneider Electric, Signify (formerly Philips Lighting), Silicon Labs, Somfy, and Wulian are also on board to join the Working Group and contribute to the project.
- thangalin 6y agoA related question regarding Wi-Fi line voltage thermostats: https://iot.stackexchange.com/questions/2895/wi-fi-line-voltage-thermostat-for-baseboard-heaters https://iot.stackexchange.com/questions/2895/wi-fi-line-volt... The question lists a number of commercial thermostats that may be of interest, as well as a nod to WebThings: https://iot.mozilla.org/gateway/ https://iot.mozilla.org/gateway/
- justinph 6y agoThis is neat. I’ve often thought of building my own since no smart thermostats support the millivolt system my 50 year old boiler uses.
- MarkusWandel 6y agoYou can hack it if you get access to an older furnace being junked. You need the 24VAC transformer and the main relay (the really old furnaces don't have one of course). Then the smart thermostat (which probably needs the parasitic power from this) can run off that, and your millivolt system can run off the relay contact closure. That said, as always, keep your existing thermostat paralleled to it, just in case.
- dpeck 6y agoIt would be nice if more hardware vendors got out of their own way and supported HomeKit. It’s not perfect, at all, but it is far ahead of the typical vendor provided software experience.
- vinay427 6y agoHomeAssistant or HomeBridge (?) work great for this. At least with HA, nearly every reasonably communicable smart device can be finagled into cooperation and HomeKit sees them all through a bridge. I even have a "legacy/real" home alarm system wired up with it along with smart switches with flashed firmware to avoid OEM app issues.
- LASR 6y agoI've been running Home Assistant (https://www.home-assistant.io/hassio/ https://www.home-assistant.io/hassio/) The default configuration has an integration for HomeKit such that it bridges devices that do not have dedicated support. For example, I can control my Google-only through my iPhone. Highly recommended, especially the appliance vm image or docker (hassio)
- hanklazard 6y agoSame, long-time user. On the topic of local API wifi thermostats, I’ve found that Venstars work very well with Home Assistant. No cloud required. https://www.home-assistant.io/integrations/venstar/ https://www.home-assistant.io/integrations/venstar/
- Maximus9000 6y agoDoes homekit automatically mean the device has better cyber security?
- shagie 6y agoOne of the key things with HomeKit is that its on the local network. For Google or Amazon home automation, it goes from device to AWS or GCP, to the vendor cloud portal, back to the home device or bridge to those devices. In my eyes, that "out and back on a different channel" is the problem. Home kit devices can be controlled without an internet connection (I've just tested this) though the voice control of them still does the speech recognition in the cloud. So, the home kit (via HomePod) does device to cloud to device to home automation. I would contend that this approach is more secure - the control of the home automation devices only comes from the HomeKit hub rather than the internet. How much more secure that is - one can debate.
- jennyyang 6y agoI have to say that HomeKit really does a good job in unifying the Home IoT experience. I used to use Philips Hue exclusively, but the HomeKit app is just so much nicer. And since then I've branched out considerably, and the only unifying factor is HomeKit. It's great.
- frenchie4111 6y agoI love this, and also the fact that I can control my devices from control center. Not having to open an app to turn on/off the lights is game changing
- fpgaminer 6y agoHomeKit is underrated. A really well designed protocol, with mandatory local control and good security. The biggest gripe was that it used to defacto require Apple DRM for anything serious. But they eliminated that requirement recently, and improved the Home app as well. I just wish Hue would play better with HomeKit. Even my homebrewed HomeKit devices work more reliably in the Home app than Hue :/
- qalmakka 6y agoI develop home automation devices for a living and I must say, Homekit is quite annoying to develop for. First, many things in the spec are clearly thrown in your way for Apple's convenience, and feel as totally arbitrary or almost counterintuitive. Others are clearly nonsensical or unreasonably complex to do; for instance, until a few revisions ago, the spec specified an "outlet in use" characteristic for power outlets that literally meant "something is physically plugged in". This isn't something you can know without putting actual sensors on your outlet's shutters, in order to detect if a plug was inserted in, something that while very fancy, it increases sensibly the cost of what is basically a relay strapped to a power socket. Needless to say, Apple had to make it optional because lots of manufacturers were simply not certifying their lower end smart outlets for HomeKit. Also, certification with Apple is a massive PITA, and they meddle with every single aspect of your device, and they ask for money on each step of the process.
- stopChanging 6y ago
- kokx 6y agoFor anyone looking to tinker with automating their thermostat, I highly recommend looking at the OpenTherm Gateway[1] (OTGW). It uses the OpenTherm protocol which is supported by a lot of heating systems. Though the protocol is backwards compatible with the old type of thermostat which would simply turn on and off for heating, OpenTherm works with modulation as well. Not simply turning the heating on at 100% capacity and turning it off again when the target temperature was reached, but taking a bit more of a gradual approach. The OTGW fits in here beautifully. It sits in the middle between your heating system and your existing (OpenTherm-speaking) thermostat. Listening to all the messages being sent between your heating system and thermostat. And if the onboard firmware fails, it should even fall back to that behavior completely. For me, it allows to get a ton of information from my thermostat and heater, and automate heating and cooling down my home. All in a much better way than a simple relay with an ESP8266/ESP32 could do. It also retains my (non-smart) home thermostat functionality, including the ability to change setpoints on it. Which is much appreciated by my partner. Third party support for the OTGW is relatively good as well. Home Assistant and Domoticz both support the OTGW, and the serial protocol it speaks is quite simple as well. Best of all, its opensource and has no need for any cloud connection you don't want. [1]: https://otgw.tclcode.com/ https://otgw.tclcode.com/
- darksensei 6y agoFor certain heating systems with a Siemens controller there is also BSB-LAN: https://github.com/fredlcore/bsb_lan https://github.com/fredlcore/bsb_lan I just set up one with a Fujitsu heat pump. The idea I'm playing with is to control the outgoing water temperature based off the data from smart radiator thermostats.
- EricE 6y agoComplains about not having a common wire for an ecobee, cobbles together a separate box with a USB cable draping down around the door jamb - love it :) As others pointed out, put a plain old bi-metallic thermostat in parallel with these confounded computerized thermostat as a fail safe. Frozen pipes are no joke! I have one in parallel with my Nest and would probably do it with a "normal" thermostat anyway as I've had those fail in weird ways in the past too. Redundancy on critical systems is never a bad thing.