I don’t have any experience with it but this might do something along those lines(?):
https://esphome.io/components/binary_sensor/ble_presence.html
Seems like you can just add it to one or more of your existing esphome devices.
I don’t have any experience with it but this might do something along those lines(?):
https://esphome.io/components/binary_sensor/ble_presence.html
Seems like you can just add it to one or more of your existing esphome devices.
Out of curiosity I’ve let it rate Low<-Tech Magazine, a website run on an ARM SBC powered exclusively with off-grid solar power, and that only achieves 87% / A.
If you have such a system up and running already you could try to modify it before ripping it out and starting from scratch.
Borrowing an idea from the machine learning approach you could additionally take the difference in average outside temperature yesterday and the average forecasted outside temperature today. Then multiply that by a weight (the machine learning approach would find this value for you but a single weight can also be found by hand) and subtract it from the target temperature before the division step discussed previously. Effectively saying “you don’t need to heat as much today since it will be a little warmer”.
I fear that’s about all you can do with this approach without massively overcomplicating things.
This is effectively what a thermostat does.
The problem is that the controller won’t know how well insulated each room is, how cold it is outside (including wind speed), which doors and windows are open and when, what people or devices are doing in each room.
The way thermostats solve this is by creating a closed loop where they react to how the room reacts to their actions.
Depending on how your heaters work you’ll likely need some dynamic component to react to these unforeseen changes unless you can live with the temperature being very unstable.
To get a rough idea of how long the heaters will have to run you can look at each room in for the last n days and see if the heater’s runtime was long enough to (on average) hold your target temperature. Dividing the average temperature with the target temperature will give you an idea whether they were on for too long or too short. (If the heaters have thermostats you’ll likely need to subtract a small amount from that value so that it will settle at the minimum required heating time)
If that value is close to 1.0 you know that on those days the heating time was just about perfect.
There are many other ways to approach this very interesting problem. You could for example try to create a more accurate model incorporating weather data or other data with machine learning.
Are there any implementations of this out there or is this purely theoretical (at this point in time)?
* $400 / yr
It is, kind of. The plug is secured by 6 stops (or tabs) along each side. The positive pressure differential pushes the plug outwards into those stops.
To remove the plug you uninstall 4 bolts which allow the plug to go up and over the stops, after which it can hinge outwards on a hinge found at the bottom of the plug.
You can use their online web-editor (similar to OverLeaf for LaTeX) or download the open-source engine and run it locally (there are extensions available for many text editors).
Compared to LaTeX I find it much more comfortable to work with. It comes with sane, modern defaults and doesn’t need any plugins just to generate a (localized) bibliography or include links.
Since Typst is very young compared to LaTeX I’m sure that there are numerous docs / workflows that can’t be reproduced at the moment but if you don’t need some special feature I’d recommend giving it a shot.
Not a monetary one, no.
* (there might exist some business power tariffs that coincidentally benefit from this but nothing you’d use at home)
The development of Piper is being driven by the Home Assistant Project. That probably makes it one of the larger OSS TTS projects. Hope may not be lost yet ;)
Additional information regarding Home Assistant:
The sun component (which should be enabled by default) already computes the sun position for you.
Elevation and azimuth are available as standalone sensors
sensor.sun_solar_azimuth
(might be disabled by default) or as attributes on thesun.sun
entity.