Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. My Project
  3. Boiler control from MAX! Cube to Drayton Boiler via Raspberry Pi/Vera/Mysensors.

Boiler control from MAX! Cube to Drayton Boiler via Raspberry Pi/Vera/Mysensors.

Scheduled Pinned Locked Moved My Project
113 Posts 22 Posters 60.8k Views 24 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    stephenmhall
    wrote on last edited by
    #3

    Hey twisted,

    More than happy to help, how close to my system is yours? Boiler switching method, Vera etc, I realise this is the Mysensors forum and I am using that for my switching but it could be switched direct from the Pi with a relay if nesesary, we just wont mention that to the moderators :smirk:

    I got all my MAX! stuff from http://www.conrad-electronic.co.uk/ I think they are the only distributor. Nearly everything came in a few days. I started off with a cube, 3 radiator valves and 2 wall thermostats. I have a mix of the + Valve and the standard, I was going to try the cheap one but they were out of stock. They are quite bulky compared to a standard thermostat and my plumbing was not great so some ended up mounted facing the wall to clear skirting and pipes but it's not an issue if you are using the software to adjust them. They come with mountings for 3 or so different fittings.

    I got all the details to interface with the cube at Github Max_Cube_protocol

    And the vera supports sending in commands to activate switches. Found that in their documentation.

    The 433Mhz Mysensor node just uses the cheapo Tx units off fleabay.

    I will post all the code to github when I work out how to use it :)

    This is definitely a work in progress, butt seems to be working fine so far.

    1 Reply Last reply
    0
    • S Offline
      S Offline
      stephenmhall
      wrote on last edited by stephenmhall
      #4

      Ok Sort of got my head around Github Here is the first upload

      https://github.com/stephenmhall/PiHeating

      Started a new Repository, the original got confused, or I did.

      1 Reply Last reply
      0
      • T Offline
        T Offline
        twisted
        wrote on last edited by
        #5

        My system is not that close, but I am in the process of getting the eq-3 ordered from conrad. I am planning on the following:
        A cube gateway
        Start with 7 thermostat heads (non +)
        Not sure if I need the wall mount thermostats as they don't look wife friendly and was thinking about putting a mysensors temp sensor in each room.

        I held off getting a device to switch my heating and water as I wasn't sure the best route, so far I have considered:
        Secure dual channel zwave.
        fibaro dual relay
        custom home made.

        I liked the idea of the horst dual channel as it automatically shuts down if the signal controlling it doesn't 'phone home' every, IIRC 20min.
        Still not sure though as I need something bullet proof to make it wife friendly.

        Thanks for the posting of you work I am just trying to go through it now.

        S 1 Reply Last reply
        0
        • Lawrence HelmL Offline
          Lawrence HelmL Offline
          Lawrence Helm
          wrote on last edited by
          #6

          Just a question, are the eq-3 radiator valves quiet? As I have a wood burner and my thought was ramp up the heat when the fire is lit, but then once the rooms are at temperature, close the valves to minimum to keep the fire going for as long as possible, this is usually when we are sleeping :)

          1 Reply Last reply
          0
          • S Offline
            S Offline
            stephenmhall
            wrote on last edited by
            #7

            Lawrence, 6 out of 7 are quiet. One sounds like a World War 2 tank, But I have it in the bathroom, I am not sure if it was the fitting that caused the noise as it was a tight fit between the valve and the wall to get it on i.e. some amount of forced contact was made during installation. It seems to work OK.

            1 Reply Last reply
            0
            • T twisted

              My system is not that close, but I am in the process of getting the eq-3 ordered from conrad. I am planning on the following:
              A cube gateway
              Start with 7 thermostat heads (non +)
              Not sure if I need the wall mount thermostats as they don't look wife friendly and was thinking about putting a mysensors temp sensor in each room.

              I held off getting a device to switch my heating and water as I wasn't sure the best route, so far I have considered:
              Secure dual channel zwave.
              fibaro dual relay
              custom home made.

              I liked the idea of the horst dual channel as it automatically shuts down if the signal controlling it doesn't 'phone home' every, IIRC 20min.
              Still not sure though as I need something bullet proof to make it wife friendly.

              Thanks for the posting of you work I am just trying to go through it now.

              S Offline
              S Offline
              stephenmhall
              wrote on last edited by
              #8

              @twisted I would prefer wall thermostats everywhere if possible as you get a live temperature to 0.1 deg. The radiator valves report temps when they open and close, at that point they know what temperature they are at. Plus you can get the thermostat where you are looking for the heat to be. I think they would be wife usable as my 75 year old Dad can work them. I have them set to show the actual temp, a push of either + or - will show the set temp and further pushes change it. The Boost gives you 5 mins of 80% valve. The sun and moon jump to pre-set comfort and eco temps and the menu/mode goes between auto/manual/holiday set points.

              Pretty much if you keep it on auto and use + and - you cant go wrong. You can change the current auto set-point but it will change to the next timed temperature change when it comes around.

              1 Reply Last reply
              0
              • S Offline
                S Offline
                stephenmhall
                wrote on last edited by
                #9

                Just for info on how it's working, this is a day in the life of the downstairs Dining room / Extension which are almost one big room also connected to the living room by a large opening. A single wall thermostat controls a radiator in each of the two rooms. As you can see once the room is up to temp the boiler is off about 60 or 65% of the time. The heating switches to the Living room about 10pm that is why the boiler is on with no valve use shown. I set the boiler on value to 12 and the valve % is /10 to keep the temps clearly visible.

                Temps.PNG

                1 Reply Last reply
                0
                • L Offline
                  L Offline
                  lhw455
                  wrote on last edited by
                  #10

                  Registered just to post that this is fantastic, I'm only doing research at the moment, but this is exactly what I want to do, so thanks for sharing.

                  A question for the people who've purchased the radiator valves, which ones did you get? I see on the Conrad electronics page there are 3 (http://www.conrad-electronic.co.uk/ce/en/overview/0812043/MAX-Wireless-Heating-Control)

                  As far as I can see, the 2 non-plus versions offer the same functionality, but are physically different, while the plus version offers something more? What's the differnce between all of these?

                  1 Reply Last reply
                  0
                  • AndurilA Offline
                    AndurilA Offline
                    Anduril
                    wrote on last edited by
                    #11

                    @lhw455 As far as I know the new version of this radiator valve has a new design (that one that is available a '+' version). The old ones have the longer, more diagonal design.
                    The difference between plus and nonplus depends on how you want to use. The normal can only be programmed by wall mount thermostat or cube. You can only set actual setpoint the the valve, but no schedule.
                    The plus version can be programmed at the valve (if used alone), but more comfortable with wall mount thermostat or cube. I also read somewhere that this can be secured with keycode, so children/... can not change settings, but don't know that for sure.

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      MikeF
                      wrote on last edited by
                      #12

                      @stephenmhall Thanks for this, I found it really interesting, and whilst I'm not (yet) planning to control my CH in a similar way, I took the liberty of adapting your graphing.py script to graph a number of temperatures from my Domoticz controller (similar to your examples). I'm not using a database, but I'm writing values to a .csv file every 10 minutes, creating a new file every day. My version of the script then creates an html file, which produces a webpage like that below.

                      Screen Shot 2015-12-11 at 13.50.31.png

                      I've done a few tweaks, by following the Google Charts documentation. I prefer Google Charts, as you get 'live' tooltips and can combine several data series (as with plotly), but unlike plotly you create a local webpage rather than uploading / streaming.

                      (Sorry if this is a bit off-topic.)

                      1 Reply Last reply
                      0
                      • S Offline
                        S Offline
                        stephenmhall
                        wrote on last edited by
                        #13

                        nice, I need to rework my time plot more like yours, mine is just plotting the times as text points so if there are gaps in the data it just ignores them, I need to convert to a proper time field I think.

                        Just to update, my system isn't working too bad, I did have a problem with the cube last weekend, all of a sudden it was just empty, no attached devices. I had to re pair everything. Also I occasionally get the set points jumping to the open widow temp even though I have no window sensors although that seems to have gone since the rebuild. What replaced it after the rebuild was a couple of the valves picking seemingly random set points at the time of a change, hitting AUTO again would apply the correct temp. I have removed the bedroom 1 valve and wall thermostat and factory reset them before re adding them to see if that helps.

                        What I haven't managed to get working yet is sending messages to the cube, I have a test script to set a valve/Thermostat to Manual - at a lower temp but I have been unable to get it working. probably my conversion from openhab's Java to Ptyhon that is the problem.

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          stephenmhall
                          wrote on last edited by
                          #14

                          Finally sorted out the Max send command, it was the base64encode function of Python giving a different encoding . So now I can set mode and temperature via the web UI. I have not implemented the Auto/eco/comfort buttons at the top yet as I am not sure if it's a single command or you have to send for each rfAddress separately. Next update probably.

                          2015-12-13.png

                          I seem to have fixed the random temperature changes by factory resetting and re-adding some of the valves and wall thermostats, no random changes seen lately.

                          1 Reply Last reply
                          0
                          • T Offline
                            T Offline
                            twisted
                            wrote on last edited by
                            #15

                            Just an update, I hope my kit will be delivered by the end of the month now, so very much looking forward to trying this out! Thanks for all your hard work.

                            1 Reply Last reply
                            0
                            • sebgudekS Offline
                              sebgudekS Offline
                              sebgudek
                              wrote on last edited by
                              #16

                              Hi, This is all very interesting. I bought the MAX! System 2 months ago and only one thing is missing is to control my boiler when there is no heating demand from my zones. What do I need to do to make it all work and is there any way I can access your system to control it ? What do I need to buy to make it all work like you have, please?

                              p_battinoP 2 Replies Last reply
                              0
                              • marogM Offline
                                marogM Offline
                                marog
                                wrote on last edited by
                                #17

                                Hi,
                                did any one of you manage to send S: command that works to the cube ?
                                I want to control changing the ECO/AUTO mode but i can't.

                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  stephenmhall
                                  wrote on last edited by
                                  #18

                                  The eco auto message is the one I have yet to find as well. I wondered if pressing it while the MAX software is connected would save a copy of the message in the logs

                                  1 Reply Last reply
                                  0
                                  • marogM Offline
                                    marogM Offline
                                    marog
                                    wrote on last edited by
                                    #19

                                    I read few documentation and finnaly I manage to post something that is understood by the Cube. I got short python3 script

                                    import socket
                                    import binascii
                                    
                                    def getBits(value):
                                        return "{0:b}".format(value)
                                    
                                    def toHex(value):
                                        return hex(int(value,2))
                                    
                                    def get_S_String(rfAddress, roomId, temp=None, mode=None):
                                        if temp:
                                            msgH = toHex(getBits(int(int(temp) * 2)))[2:]
                                        else:
                                            msgH = mode
                                        cmdStr = "00 04 40 00 00 00 " + rfAddress.lower() + " " + roomId + " " + msgH
                                        base = binascii.b2a_base64(binascii.unhexlify(cmdStr.replace(" ","")))
                                        return "s:" + base.decode() + "\r\n"
                                    
                                    def send_raw_data(host, port, data):
                                        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
                                        s.connect((host, port))
                                        s.settimeout(2)
                                        return s.send(data.encode())
                                    
                                    host = "10.0.0.110"
                                    port = 62910
                                    
                                    address = "12E023"
                                    room = "02"
                                    
                                    address = "126010"
                                    room = "01"
                                    
                                    temp = "14"
                                    ## auto MODE
                                    x = get_S_String(address, room, mode="00")
                                    print(x)
                                    ## setup MANUAL temp
                                    #x = get_S_String(address, room, temp)
                                    #print(x)
                                    
                                    send_raw_data(host, port, x)
                                    
                                    1 Reply Last reply
                                    0
                                    • p_battinoP Offline
                                      p_battinoP Offline
                                      p_battino
                                      wrote on last edited by
                                      #20

                                      Stephen the work you have done is fantastic !

                                      This is very useful for everybody using a MAX! Cube, regardless of the Vera. As you can read in the comments (and on other sites) the main missing feature with the MAX! Cube is a direct link with the boiler, in order to have the boiler running only when at least one valve requires it.
                                      I strongly suggest you to work in this direction, and provide example on how to switch on/off the boiler from the Raspberry Pi directly (either wired or wireless link) when needed.
                                      Also, you instructions in installation.txt worked fine for me but it took me a while to find them and "decode" them. First I would suggest to explicitly point to that file from README.md and second to explain what's the NeoPixel thing. I still don't know, I just assumed it could work without it but I wonder what it is.

                                      For those of you still wonder whether the MAX! Cube is worth its money: yes yes yes! I've never found such a good solution for that price! It gave me all I need and, with Stephen's code, it's more than I can dream of.

                                      1 Reply Last reply
                                      0
                                      • sebgudekS sebgudek

                                        Hi, This is all very interesting. I bought the MAX! System 2 months ago and only one thing is missing is to control my boiler when there is no heating demand from my zones. What do I need to do to make it all work and is there any way I can access your system to control it ? What do I need to buy to make it all work like you have, please?

                                        p_battinoP Offline
                                        p_battinoP Offline
                                        p_battino
                                        wrote on last edited by
                                        #21

                                        @Lawrence-Helm they are not noisy to me but you can hear them if there's silence in the house. Noise it's very subjective of course. It sounds like a small motor turning for say 3 or 4 seconds. Once a week when they run the de-scale program, but you can set it at any point in the week. At that time they make the same noise, but for a longer time.

                                        1 Reply Last reply
                                        0
                                        • sebgudekS sebgudek

                                          Hi, This is all very interesting. I bought the MAX! System 2 months ago and only one thing is missing is to control my boiler when there is no heating demand from my zones. What do I need to do to make it all work and is there any way I can access your system to control it ? What do I need to buy to make it all work like you have, please?

                                          p_battinoP Offline
                                          p_battinoP Offline
                                          p_battino
                                          wrote on last edited by
                                          #22

                                          @sebgudek
                                          At the very minimum you need to buy a Raspberry Pi (around £ 30 ), a charger and an SD card and follow the instructions on www.raspberrypi.org/downloads/ to install Raspbian on the Raspberry PI, then follow Stephen's instructions on the file installation.txt:
                                          https://github.com/stephenmhall/PiHeating/blob/master/PiHeating/src/heating/installation.txt

                                          You need to know a little bit how to work on Linux do to so. If you have even a very limited linux experience, the instructions are enough, although they are very very condensed.

                                          When the code is running you can control it simply with a browser within the same network, again this is explained in installation.txt . It is in fact nicer (and easier) to use this interface than the MAX! Cube application, although they are not exactly the same thing and you still need the official application (I believe) to set the weekly program and other things.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          10

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular