MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-Domoticz-ext: interact with Domoticz

    Scheduled Pinned Locked Moved Utilities
    121 Posts 14 Posters 101.5k Views 16 Watching
    Loading More Posts
    • 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.
    • G Offline
      goedh452 @steps39
      last edited by

      @steps39

      You could send me the json result of you sensors and I’ll see what I can do. The result is obtained via this URL:

      http://<IPADRESS_DOMOTICZ>:<PORT_DOMOTICZ>/json.htm?type=devices&rid=<IDX_DEVICE>

      steps39S 1 Reply Last reply Reply Quote 0
      • steps39S Offline
        steps39 @goedh452
        last edited by steps39

        @goedh452 thank you very much, a couple of examples below.

        My Owl device measures watts, but each time I change the batteries it get a new idx, so I use a Lua script in Domoticz to capture the values and post-process before displaying as a Solar below:

        {
           "ActTime" : 1617792992,
           "AstrTwilightEnd" : "22:07",
           "AstrTwilightStart" : "04:07",
           "CivTwilightEnd" : "20:30",
           "CivTwilightStart" : "05:44",
           "DayLength" : "13:31",
           "NautTwilightEnd" : "21:16",
           "NautTwilightStart" : "04:59",
           "ServerTime" : "2021-04-07 11:56:32",
           "SunAtSouth" : "13:07",
           "Sunrise" : "06:21",
           "Sunset" : "19:53",
           "app_version" : "4.10717",
           "result" : [
              {
                 "AddjMulti" : 1.0,
                 "AddjMulti2" : 1.0,
                 "AddjValue" : 0.0,
                 "AddjValue2" : 0.0,
                 "BatteryLevel" : 255,
                 "CounterToday" : "6.210 kWh",
                 "CustomImage" : 0,
                 "Data" : "39023.996 kWh",
                 "Description" : "",
                 "EnergyMeterMode" : "",
                 "Favorite" : 1,
                 "HardwareID" : 3,
                 "HardwareName" : "DUMMY",
                 "HardwareType" : "Dummy (Does nothing, use for virtual switches only)",
                 "HardwareTypeVal" : 15,
                 "HaveTimeout" : false,
                 "ID" : "00014179",
                 "LastUpdate" : "2021-04-07 11:56:30",
                 "Name" : "Solar",
                 "Notifications" : "false",
                 "PlanID" : "0",
                 "PlanIDs" : [ 0 ],
                 "Protected" : false,
                 "ShowNotifications" : true,
                 "SignalLevel" : "-",
                 "SubType" : "kWh",
                 "SwitchTypeVal" : 0,
                 "Timers" : "false",
                 "Type" : "General",
                 "TypeImg" : "current",
                 "Unit" : 1,
                 "Usage" : "1409.4 Watt",
                 "Used" : 1,
                 "XOffset" : "0",
                 "YOffset" : "0",
                 "idx" : "298"
              }
           ],
           "status" : "OK",
           "title" : "Devices"
        }
        

        The raw Owl device returns 3 power readings, one from each current clamp:

        {
           "ActTime" : 1617793340,
           "AstrTwilightEnd" : "22:07",
           "AstrTwilightStart" : "04:07",
           "CivTwilightEnd" : "20:30",
           "CivTwilightStart" : "05:44",
           "DayLength" : "13:31",
           "NautTwilightEnd" : "21:16",
           "NautTwilightStart" : "04:59",
           "ServerTime" : "2021-04-07 12:02:20",
           "SunAtSouth" : "13:07",
           "Sunrise" : "06:21",
           "Sunset" : "19:53",
           "app_version" : "4.10717",
           "result" : [
              {
                 "AddjMulti" : 1.0,
                 "AddjMulti2" : 1.0,
                 "AddjValue" : 0.0,
                 "AddjValue2" : 0.0,
                 "BatteryLevel" : 100,
                 "CustomImage" : 0,
                 "Data" : "506 Watt, 138 Watt, 1863 Watt",
                 "Description" : "",
                 "Favorite" : 0,
                 "HardwareID" : 1,
                 "HardwareName" : "RFXCOM",
                 "HardwareType" : "RFXCOM - RFXtrx433 USB 433.92MHz Transceiver",
                 "HardwareTypeVal" : 1,
                 "HaveTimeout" : false,
                 "ID" : "6700",
                 "LastUpdate" : "2021-04-07 12:02:12",
                 "Name" : "Owl",
                 "Notifications" : "true",
                 "PlanID" : "0",
                 "PlanIDs" : [ 0 ],
                 "Protected" : false,
                 "ShowNotifications" : true,
                 "SignalLevel" : 7,
                 "SubType" : "CM113, Electrisave",
                 "Timers" : "false",
                 "Type" : "Current",
                 "TypeImg" : "current",
                 "Unit" : 0,
                 "Used" : 1,
                 "XOffset" : "0",
                 "YOffset" : "0",
                 "displaytype" : 1,
                 "idx" : "1286"
              }
           ],
           "status" : "OK",
           "title" : "Devices"
        }
        
        G 2 Replies Last reply Reply Quote 0
        • G Offline
          goedh452 @steps39
          last edited by

          @steps39

          Thanks! I’ll look into it. A quick glance indicates that the subtype of the solar device is ‘kWh’ and the module scans for a subtype ‘Energy’. This is easy to modify in the code. The Owl device is a bit more complicated since it has the data-attribute, but does not split this into 3 separate attributes.

          I’ll let you know if I’ve something for you to test!

          1 Reply Last reply Reply Quote 0
          • G Offline
            goedh452 @steps39
            last edited by goedh452

            @steps39

            Could you please pull the latest code from GitHub and check if the Solar device works now?

            steps39S 1 Reply Last reply Reply Quote 0
            • steps39S Offline
              steps39 @goedh452
              last edited by

              @goedh452 thanks, I had a go but it just display “Loading…” under the DOMOTICZ module label.

              I have simplified my config.js to just have this in the Domoticz module:

                              {
                                module: "MMM-Domoticz-ext",
                                header: "Domoticz",
                                position: "top_center",
                                config: {
                                  apiBase: "192.168.89.174",
                                  apiPort: "8080",
                                  updateInterval: 10,
                                  displayType: "all",
                                  rooms: [
                                    { idx: "3" }
                                  ],
                                  utilities: {
                                    devices: [ "301" ],
                                    utilityLabel: "Solar",
                                    counterTodayLabel: "Vandaag",
                                    gaugeWidth: 200,
                                    gaugeEnergyMinValue: -3000,
                                    gaugeEnergyMaxValue: 3000,
                                    gaugeEnergyAppendText: "Watt",
                                    useColors: true,
                                  },
                                }
                              },
              
              G 1 Reply Last reply Reply Quote 0
              • N Offline
                najtram
                last edited by

                Would it be possible to hide the sub headers?

                The Utilities title doesn’t fit my minimal approach. The titles of the gauges tells enough (for me)

                Schermafbeelding 2021-04-08 om 14.03.44.png

                N 1 Reply Last reply Reply Quote 0
                • N Offline
                  najtram @najtram
                  last edited by najtram

                  @najtram

                  I tried:

                  p.title.bright.domoCenterCell {
                    display: none;
                  }
                  
                  hr.domoDivider {
                    display: none;
                  }
                  

                  in custom.css… that worked. → Solved!

                  G 1 Reply Last reply Reply Quote 0
                  • G Offline
                    goedh452 @najtram
                    last edited by

                    @najtram Ow great! I was thinking of making it an option, but if this solves it for you that’s fine of course.

                    1 Reply Last reply Reply Quote 0
                    • G Offline
                      goedh452 @steps39
                      last edited by

                      @steps39

                      I tested with a dummy device in Domoticz I created based on your setup and think I got it working. New code is available on GitHub. Could you please check if it is working for you too?

                      steps39S 1 Reply Last reply Reply Quote 0
                      • steps39S Offline
                        steps39 @goedh452
                        last edited by

                        @goedh452 brilliant works perfectly now and with the custom.css I can remove the extra title.

                        So I now have my Household and Heat Pump usages plus Solar generation all displayed, thanks.

                        G 1 Reply Last reply Reply Quote 0
                        • G Offline
                          goedh452 @steps39
                          last edited by

                          @steps39 That’s great!

                          1 Reply Last reply Reply Quote 0
                          • N Offline
                            najtram
                            last edited by

                            Tweaking ;-)

                            Mind the m³ instead of the m3.
                            And the sum symbol for today: ∑
                            And the poweroutlet symbol in domoticz name: ⚇
                            And the ↯ for electicity.
                            And the ☀ for the sun.

                            Kind of bug? → Edited the Zero state for electricity. The Gauge minimum value didn’t work when set to 0.

                            Enjoy if this fits your taste…

                            Schermafbeelding 2021-04-12 om 20.08.54.png

                            G steps39S 2 Replies Last reply Reply Quote 0
                            • G Offline
                              goedh452 @najtram
                              last edited by

                              @najtram Looks nice!

                              I’ll look into the zero-bug.

                              N 1 Reply Last reply Reply Quote 0
                              • N Offline
                                najtram @goedh452
                                last edited by

                                @goedh452

                                Do you have an idea for a flame symbol instead of the text Gas. Maybe with Fontawesome?

                                G 1 Reply Last reply Reply Quote 0
                                • G Offline
                                  goedh452 @najtram
                                  last edited by

                                  @najtram

                                  The name of the device in Domoticz is used. Would you like me to built an option to use a custom header with FontAwesome?

                                  1 Reply Last reply Reply Quote 0
                                  • steps39S Offline
                                    steps39 @najtram
                                    last edited by

                                    @najtram great fix, how did you fix the Zero state and change the symbols, could you upload as an issue on github?

                                    steps39S N 2 Replies Last reply Reply Quote 0
                                    • steps39S Offline
                                      steps39 @steps39
                                      last edited by

                                      @najtram I hacked it by changing line 933 of MMM-Domoticz-ext centreZero from true to false, so I guess more of a fork or feature request to have the option to change the gauge style rather than a bug.

                                      G 1 Reply Last reply Reply Quote 0
                                      • G Offline
                                        goedh452 @steps39
                                        last edited by

                                        @steps39

                                        I’ll have a look at the requests and zero state bug later this week or this weekend. Can you describe them zero state bug in more detail? Is it that when the value is zero the gauge is not displayed (correctly)?

                                        steps39S 1 Reply Last reply Reply Quote 0
                                        • steps39S Offline
                                          steps39 @goedh452
                                          last edited by

                                          @goedh452 I think that for both me and possibly @najtram we really want to have options which you haven’t built into your code.
                                          So, just speaking for me, the zero bug isn’t really a bug, but I want the gauge to start with zero as the bottom anti-clockwise, as I don’t want to display negative values only positive values, as @najtram shows in his figure
                                          Schermafbeelding 2021-04-12 om 20.08.54.png
                                          I have got the same display of the gauge by change line 933:

                                          MMM-Domoticz-ext.js:933:    centerZero: true,
                                          

                                          to:

                                          MMM-Domoticz-ext.js:933:    centerZero: false,
                                          

                                          It would nice to have an option to choose where zero would be, and possibly a number of other options around size. But would this just make it too complex and should I be using a different tool rather than MagicMirror?

                                          So having discovered Dashticz I am wondering whether I wouldn’t be better off using Dashticz as a lot of the information I want to display comes directly from Domoticz.

                                          G 1 Reply Last reply Reply Quote 0
                                          • G Offline
                                            goedh452 @steps39
                                            last edited by

                                            @steps39

                                            Thanks for the explanation. I’ll make some modifications and let you now.

                                            There are several options for the gauge, but they I didn’t implement it in such a way that they can be set in the config. For instance line thicknesses, etc.

                                            Dashticz is also a good option. In some ways it is more flexible, but in other ways not. But I would definitely give it a try!

                                            N 1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 7
                                            • 2 / 7
                                            • First post
                                              Last post
                                            Enjoying MagicMirror? Please consider a donation!
                                            MagicMirror created by Michael Teeuw.
                                            Forum managed by Sam, technical setup by Karsten.
                                            This forum is using NodeBB as its core | Contributors
                                            Contact | Privacy Policy