2024 Home Sweet Home Automation: SMS Controlled Heating

A Raspberry Pi in an enclosure, connected to a stepper motor controller and a UMTS stick

Hackaday.io user [mabe42] works during the week away from their home city and rents a small apartment locally to make this life practical. However, the heating system, a night-storage system, is not so practical. They needed a way to remotely control the unit so that the place was habitable after a long winter commute; lacking internet connectivity, they devised a sensible solution to create an SMS-controlled remote heating controller.

The controller runs atop an old Raspberry Pi B inside a 3D-printed case. Seeing such an old board given a real job to do is nice. Connectivity is via a USB UMTS stick which handles the SMS over the cellular network. The controller knob for the heater thermostat (not shown) is attached via a toothed belt to a pully and a 28BYJ-48 5V geared stepper motor. Temperature measurement is via the ubiquitous DS1820 module, which hooks straight up to the GPIO on the Pi and works out of the box with many one-wire drivers.

The software is built on top of Gammu, which handles the interface to the UMTS device. Daily and historical temperature ranges are sent via SMS so [mabe42] can decide how to configure the heating before their arrival. The rest of the software stack is in Python, as per this (German-language) GitHub project.

While we were thinking about storage heating systems (and how much of a pain they are), we came across this demonstration of how to build one yourself.

23 thoughts on “2024 Home Sweet Home Automation: SMS Controlled Heating

  1. Great project, but I controlled my heating with an SMS mains switch I got off Aliexpress decades ago. (Just about to go defunct as we switch off 2G).

    Feels like this is all very overboard :D

  2. Cool project. Unfortunately UMTS is not available anymore in many countries. Also in Germany there is no UMTS anymore so probably the stick has fallen back to 2G which will be switched off in Germany at the end of 2025. A cool upgrade for this project would be to switch to LTE-M or NB-IOT, as these standards are part of the 4G and 5G standard they will be available for years to come. The Walter module (https://www.crowdsupply.com/dptechnics/walter) could be a very good starting point.

    1. Having tried to get SMS over NB-IoT, it’s a little different. Seems like the message queue rotation is far longer and it can take up to several days to get one through.

  3. If he has SMS then he has cellular coverage. If he has cellular coverage he can use a cellular modem.

    Yes, it’s a neat solution, but it’s a bit meh.

    I also assert that it’s not necessary to alter the thermostat. You set the thermostat to a comfortable temperature, then LEAVE IT ALONE. All that’s needed is to turn the system on and the thermostat will do its job.

      1. Indeed. That function can be performed by a second thermostat (or frost stat, usually not adjustable), wired independently of the comfort thermostat so that it always works.

    1. 2G service will likely stick around longer than 3G or even 4G, plenty of safety-critical 3G systems will fallback to 2G. Places that are turning off 2G will experience some funny business as VoLTE and VoNR deployments are surprisingly bad with some telecom-phone combos

  4. If you don’t want or can’t hack in to the HVAC control system you can make a simple setback by putting an incandescent lamp on a cheap light timer underneath the thermostat. Most have two or three sets of pins so that you can have a night as well as daytime setback. Or you can fancy it up with a wifi or cellular controlled switch.

  5. > The controller runs atop an old Raspberry Pi B inside a 3D-printed case.

    The case for Raspberry Pi B is not 3D-printed, you can see it clearly on the pictures. From what I understand, the case for the new version running on a Raspberry Pi Zero is.

    > Temperature measurement is via the ubiquitous DS1820 module which hooks straight up to the I2C bus on the Pi with no fuss.

    Last time I checked, DS1820 uses 1-Wire, not I2C.

  6. Author here. First, thanks a lot for featuring my project!
    And also many thanks for all the comments.
    I would like to clarify some things:
    – the appartment is in a large appartment block from the 1960s. The heating is still the original one. There is no thermostat. Just something to set the power level. And there is no way to directly access the circuitry of the heater. But in general, also in old Europe thermostats do exist. ;-)
    – When I first set it up, I was only three nights per week in the appartment. So setting it to some lower temperature was not convenient and as I wrote, error prone to the position of the button. Meanwhile I’m even less often there. But comparing the rent with hotel prices, the appartment still wins.
    – I could have an internet connection in the building. But I don’t want to pay 400+ € per year for something I don’t need.
    – I also know that the pi is overpowered. But I had the pi and the stick laying around. So no need to buy a GSM/or whatever module for a microcontroller. And in fact, I do not know on what kind of network service it runs. But it runs. :-)
    – Finally, it is correct that the DS1820 uses 1-wire. I confused this and have to correct it.

  7. And a bit about the very particular (weird) heating system:
    It’s from the 1960s and was designed to make use of excess electricity at night. So, electricity is only provided from 22:00 to 06:00 – or for those from the new world: 10pm to 6am ;-) . And as a user you cannot change this. You have too think in advance if you want to have some heat during the next day. The electricity heats up some particular stones which than radiate the heat during day to the flat. So, not compatible with any kind of thermostat. As the flat is part of a 100+ appartment building where the flats are mostly in a lot of private hands, this will not be changed until the building starts falling into pieces.

    1. This is… A bit strange. Do you pay for the electricity?
      And I assume that the “stones” that are heated(at least on your bill), only heat your apartment!?

      Given this, there should be no issues wiring over only one apartment to a thermostat and/or continuous power.

      The only caveat would be if the power distribution to the apartment is very weak, and the heater overpowered, then it might be difficult to provide enough power to it. (Either way it should be trivial for anyone with a higher incentive to just replace the heater, but that would mean you have to pay for a new heater.. which I understand is not in the interest of OP)(But it’s very strange that(it seems like) pretty much none of the other residents have done this).

      1. Well, just have a look at what wikipedia says:
        The German version is even more detailed. The heating is room-based.
        As I only rent the (small) flat, there is no way for me to change this except for installing a mobile radiator. But even with that it takes hours to heat the flat from about 14°C (after a few non-heated days) to an acceptable temperature during winter. The building is a large block of concrete thermal isolation is poor,… and there are many other variables for me to consider, e.g. moving to another flat would easily double the rent to pay…
        I know that this system is a cul-de-sac, technically spoken. Energetically it’s a nightmare.
        My goal was to get the highest benefit without much investment. Luckily, I was able to make this hack! And I fully understand that many others consider this heating system ridiculus,…

        1. “My goal was to get the highest benefit without much investment.” I respect this, and I see how in order to use such a system, you would have to predict the weather the night before to store enough, then trigger the release in time for the heat to spread into the apartment, so this solution does that.

          Still, I do consider the system they provided you to be a bit silly. I assume the nighttime power is less expensive, right? Otherwise you would just put the mobile radiator on a programmable timer to turn on a few hours before you arrive instead of beginning to heat the night before you arrive. So if that is the case, could you use something better insulated than their ceramic/stone storage heater? For instance, a very well insulated water heater, whether bought or built.

          Technically, though it fails the “without much investment” part, there are some water heaters which are themselves a heat pump – so if you could pump heat into the water out of the flat during the nights when you are gone and then release it into the flat when you are nearly there, it could actually be energetically efficient without changing the way the apartment works. Of course maybe it would get too cold for the things left in the flat, I don’t know. I guess a big array of peltier chips may be cheap enough per watt at a drive current sufficient to average a useful COP instead of using a refrigerant based system.

          1. >I assume the nighttime power is less expensive, right?

            That used to be the case with traditional baseload power, but such dual rate systems are being replaced all over the EU with time-of-use billing based on the hour and in some places even by 15 minute average. The power companies are simply raising the prices of fixed rate contracts to the point that people have to switch to hourly billing and then scramble to turn off heating when the power prices peak to 1-2 euros per kWh in the middle of the winter.

            Night-time electricity is more likely to be cheaper because the demand is generally lower, but with wind power it’s a crapshoot.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.