domoticz | Open source Home Automation System

 by   domoticz C++ Version: 2023.1 License: GPL-3.0

kandi X-RAY | domoticz Summary

kandi X-RAY | domoticz Summary

domoticz is a C++ library typically used in Internet of Things (IoT), Raspberry Pi applications. domoticz has no bugs, it has a Strong Copyleft License and it has medium support. However domoticz has 2 vulnerabilities. You can download it from GitHub.

Domoticz is a Home Automation System that lets you monitor and configure various devices like: Lights, Switches, various sensors/meters like Temperature, Rain, Wind, UV, Electra, Gas, Water and much more. Notifications/Alerts can be sent to any mobile device.

            kandi-support Support

              domoticz has a medium active ecosystem.
              It has 3289 star(s) with 1127 fork(s). There are 217 watchers for this library.
              It had no major release in the last 12 months.
              There are 79 open issues and 2690 have been closed. On average issues are closed in 131 days. There are 4 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of domoticz is 2023.1

            kandi-Quality Quality

              domoticz has 0 bugs and 0 code smells.

            kandi-Security Security

              domoticz has 2 vulnerability issues reported (1 critical, 1 high, 0 medium, 0 low).
              domoticz code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              domoticz is licensed under the GPL-3.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              domoticz releases are available to install and integrate.
              Installation instructions are available. Examples and code snippets are not available.

            Top functions reviewed by kandi - BETA

            kandi has reviewed domoticz and discovered the below as its top functions. This is intended to give you an instant insight into domoticz implemented functionality, and help decide if they suit your requirements.
            • ZWave controller
            • Show the wind graph
            • Creates a new refresher instance .
            • Display in air flow
            • Initialize Ecc3 .
            • Parses XML data from XML
            • Show rainbar log
            • Shows the bar page
            • Display day log
            • show user log
            Get all kandi verified functions for this library.

            domoticz Key Features

            No Key Features are available at this moment for domoticz.

            domoticz Examples and Code Snippets

            No Code Snippets are available at this moment for domoticz.

            Community Discussions


            Domoticz virtual sensor: how to set initial value
            Asked 2022-Mar-25 at 15:52

            I have a device that reads the P1 port of a smart meter. I have created a virtual sensor for the smart meter and, through a simple shell script, I can set the meter readings in Domoticz. This works well.

            However, for the devices (both electricity and gas), I get a large peak of consumption on the first period. That is because the virtual sensor is initialized with the values of 0 for all the counters. This gives a peak that makes the graphs unusable.

            Is there a way to initialize the meter reading on a non-zero value?



            Answered 2022-Mar-25 at 15:52

            Domoticz uses an sqlite3 database. With sqlite3 domoticz.db '.dump' > domo.dump, you can get a complete dump of the database. Searching for the index of the meter, I found the initial value (for the gas meter:)



            K3S SQLite slow on NFS
            Asked 2022-Feb-20 at 19:47

            I have an application running on my home cluster.
            My cluster is running K3S.
            The cluster exists of 5 Raspberry Pi's 3B and 1 Ubuntu VM.
            One of my deployments is Domoticz.
            This uses a SQLite database to store data.
            I'm using this as a StorageClass.
            The NFS is hosted in OpenMediaVault with arguments subtree_check,insecure,no_root_squash

            When I store this database (14MB) on a PV volume linked to an NFS Storage Class, the applications becomes very slow.
            When I use the Storage Class local-path, the application is as fast.
            Problem is now that when that node dies, the Deployment doesn't start because of the node-affinity linked to the PVC.
            I'm out of idea's to fix this issue.

            Is there another SC better suited to my setup?
            Is there a tweak to the SC local-path, so it's not linked to a node? (yes I know, database will not be transferred to the new node)



            Answered 2022-Feb-20 at 19:47

            I fixed this by using longhorn instead of NFS. Thanks Andrew Skorkin for the tip



            How to install Git package on WIndows with python
            Asked 2021-Jul-23 at 18:12

            I am trying to install a plugin from Domoticz, and I need to do it via python, but I'm new to the python terminal. I am trying to do the following command



            Answered 2021-Jul-23 at 10:22

            When you pip install from git repo, the first thing pip will do is to clone the git repo, which will fail if you don't have git tools installed already.



            SyntaxError: invalid syntax on python script
            Asked 2021-Apr-27 at 07:28

            I'm not familiar with Python, but I made the following script with searching on Google.

            The script pulls out data from a device and injects it in Domoticz. When I run the script on my Windows machine, every minute it loops correctly and injects the data into Domoitcz. When I run the same script on my Raspberry Pi, it returns a SyntaxError: invalid syntax (line 155) on the except Exception line...

            Even if I put a # before that line it raises an error.



            Answered 2021-Apr-27 at 04:54

            The line raising the error is a print statement which is using an f-string (e.g. f"{variable_name}"). F-strings were introduced in Python 3.6, so my guess is that your raspberry pi is using a version earlier than that, and your windows machine isn't.

            Try checking what version of python is running on your raspberry pi (python --version from a terminal). If it's anything earlier than 3.6, the f-strings will cause you syntax errors everywhere in the code.

            The only other issue I can think of is you might actually be running python 2.7 with the default python command (I can't remember off the top of my head if rasbian does this like some distros). If you get 2.7 with the version check above, try using python3 and check that version. You will need to be running that script with at least 3.6 for that script to execute.

            Incidentally, you have another f-string on line 156, which might explain why if you commented out 155, it raises the exact same syntax error :)



            Mosquitto: Starting in local only mode but can't fix
            Asked 2021-Feb-27 at 14:40

            My Rpi4 running my home automation recently upgraded itself from mosquitto version 1.6.12 to 2.0.8 and as a consequence it was starting in local only mode.

            Done some digging about but still can't get it all working again, mainly used this previous helpful question Mosquitto: Starting in local only mode but my devices still can't connect.

            From my mosquiito log I see



            Answered 2021-Feb-27 at 13:39

            Your problem is not that Mosquitto is not listening, it's that your devices are trying to resolve a hostname of

            I suspect you have entered the host:port combination into fields that should

            1. Only contain a hostname/IP address
            2. You probably should NOT be entering as this always points to the device it is entered on and you should be entering the IP address the broker is actually running on.



            Issues with turning json data into an variable in python
            Asked 2020-Nov-30 at 08:45

            I have been working on an educational project a small part of it requires me to convert a single line of json data into an variable in python 3 which I recieve from domoticz (an external open source software) however due to my skill level with json I have expierenced some issues and I am not exactly sure what im doing wrong. I did get the 200 response everytime so I assume from what I understood that means the connection isnt the issue but rather the python code. (I censored the addressed but they are correct.)



            Answered 2020-Nov-30 at 08:43

            You are getting your data stored in data ={"key": argument} as a dictionary. If you want to access a certain value you have to call for it. in Your case:



            Bin bash: Launch python file with given sh file arguments
            Asked 2020-Jun-04 at 21:36

            I have file which should launch a python file with given arguments. So I'm using domoticz smart home system, and my task is to launch the shell script from domoticz with - script:// 4196 1 1, arguments are - IP, PORT, RELAY, RELAY_STATUS. What I'm doing is, starting a sh file and passing arguments from domoticz to sh file. After that I'm trying to start a python file with given arguments from sh file. But it doesn't work. I really don't know how can I pass the arguments from sh to py file.

            Here's my sh code:



            Answered 2020-Jun-04 at 21:36

            You are using the shebang wrong. Each file may only contain one shebang (e.g. #!/bin/bash) and tells the command line interface which executable to use, when executing the script.

            As your script is meant to be a shell script, the shebang to use is #!/bin/bash.

            In order to pass the arguments to your python script, you need to call python3 $1 $2 $3 $4, assuming that python3 is on your PATH variable. You can check this with echo $PATH and/or which python3

            If you want a pure python script to be executed from command line, you have to add the python shebang (#!/usr/bin/python) to your python file and process the arguments within that script. A good tutorial can be found here.



            Which python script is executed if directory path is passed as command line argument to python?
            Asked 2020-Feb-23 at 15:39

            Which script is executed if a directory is passed as argument to python (e.g. if python is called in this way: $ python3 Domoticz-Google-Assistant/)?

            Best regards,




            Answered 2020-Feb-23 at 15:39

            If you execute a directory as an argument to python, the file named will be executed.


            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install domoticz

            You can download it from GitHub.


            Your first place for support is the Domoticz Forum. The Github issue tracker is NOT for end-user support.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link