Domoboard - General Discussions

Domoboard is a dashboard for Domoticz based on Python Flask.

Moderators: leecollings, wez3

Forum rules
Before posting here, make sure you are using the latest Beta or Stable version.

In order to fix issues or add features these have to be reported on the Domoboard Github pages.
This makes it possible to keep track of issues/features on a centralized place.

Refer to the issue of the github tracker when possible.

This subforum is meant to discuss issues and/or feature requests, or anything else related to Domoboard.
Post Reply
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Domoboard - General Discussions

Post by squandor »

Hi All,

Domoboard is a dashboard for Domoticz based on Python Flask. The decision was made to use Domoticz as an backend because it is a powerful framework for home automation. Flask was choosen to get all the powerful features that Python offers.

The project was started because the default Domoticz interface is not designed to be used as an actual dashboard, for example on a tablet which is mounted to the wall. Domoboard is based on Bootstrap which allows the dashboard to be responsive.

Quick start

Install dependencies:

Code: Select all

sudo easy_install flask flask-auth configobj gitpython simplejson bleach requests
Clone the git:

Code: Select all

git clone https://github.com/wez3/domoboard
Modify the config file to suit your needs. Start Domoboard by executing:

Code: Select all

python server.py -c <config_file>
Configuration
Just one config is used to configure Domoboard. A example can be found the applications root ("example.conf"). The following display components are currently supported:
  1. top_tiles
  2. switches
    • switch
    • dimmer
    • rgb
    • setpoint
  3. weather
  4. news
  5. map
  6. domoticz_temp_charts
  7. domoticz_smart_charts
  8. domoticz_counter_charts
  9. domoticz_percentage_charts
  10. line_charts
  11. area_charts
  12. bar_charts
  13. donut_charts
  14. power_usage
  15. serverlog
  16. settings
API
Domoboard has an API which can be found at "/api". All JavaScript files that update data frequently are using this API to obtain the information that is going to be displayed. By default all requests to the API are passed to the Domoticz backend. This means that Domoboard accepts the same API calls as Domoticz does. However the API also allows an plugin developer to add its own API functions by creating an Python module. Developers can specify a "custom" GET-parameter which is patched in to the current API, this allows the developer to run their own Python functions when the API is called.

Domoboard is a framework which allows users to build custom plugins pretty easy. Plugins require the following at least:
  1. A HTML file in the templates/ folder (see templates/hello.html as an example)
  2. For advanced features, such as custom API functions a developer needs to develop a Python file in the plugins/ folder (see plugins/hello.py as an example)
  3. Readme.md in the static/docs folder for the plugin-manager
The following plugins have been developed by now:
  1. iCloud
  2. ANWB
Check out the plugin page at https://github.com/wez3/domoboard-plugins for all plugins.
Check out the domoboard at https://github.com/wez3/domoboard

Here are some screenshots from Domoboard:
Image
Image
Image
Image
Image
Image
Image

Everybody can contribute to the project! For development purposes the "develop" branch is used. The "master" branch contains the stable version of Domoboard.

Please let us know when you've created a plugin, so we can can add to the plugin Github repository.


We hope you like it and any comments or suggestions are welcome.

Greetings,

Wez3 & Squandor
Last edited by squandor on Friday 20 January 2017 22:48, edited 4 times in total.
SweetPants

Re: Domoboard a New Dashboard using Domoticz as backend

Post by SweetPants »

Looks nice, which python version is used?
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

it has been build on Python 2.7
User avatar
gizmocuz
Posts: 2394
Joined: Thursday 11 July 2013 18:59
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Top of the world
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by gizmocuz »

Domoticz is using bootstrap as well.
Always nice to see new interfaces, nice job!
Quality outlives Quantity!
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

jep you're right, the idea didn't come to overrule the domoticz front but to create something with extra features including the existing features from domoticz itself.
With that in mind we thought of an interface which is configurable and hopefully would seem nice at an touchscreen so domoticz would be used even more in houses.
I use it in my own house and love the possibilities! :)
dutchdevil83
Posts: 130
Joined: Monday 31 October 2016 19:34
Target OS: Raspberry Pi / ODroid
Domoticz version: latest
Location: Netherlands
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by dutchdevil83 »

Looks promising, have got it running but the config file is not "user friendly" at the moment. I saw that under settings you made a attempt to config the devices from there. I think thats the best way to do it because now its a hell of a job to look up the right IDXs and set them in the config file also because for trial and error you have to exit and edit the config and reload.

But again dashboard looks promising and have some good potential. Will have a look at the code of i can get a user friendly method of adding devices to the dashboard.
Hardware
1x Raspberry Pi
1x Razberry Z-Wave
1x RFXtrx433E
1x Toon
1x GoodWe Solarpanels
2x FGSD-002 Smoke Detector
1x FGBS-001 Binaire Sensor (RFID lezer)
7x FGMS-001 Motion Sensor
3x ZW089 Verzonken Deursensor
7x NC Wallplug
&lots of KaKu stuff
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

Youre right if you don't want to restart the server after every change you can use the -d parameter which sets the flask server to debugging mode so after every change the server will restart automatically

But sometimes I also find the config a little bit complicated but w
Just like every thing when you now how it works it's easy to change ;)
Awst6000
Posts: 108
Joined: Thursday 12 February 2015 7:51
Target OS: Linux
Domoticz version:
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by Awst6000 »

Looks very nice. Looks like 'Toon for Domoticz' ;)
I'm sorry to say but I hope you don't run into that much trouble that you quit, like most other attempts for creating a dashboard do.
Last edited by Awst6000 on Thursday 29 December 2016 22:09, edited 1 time in total.
User avatar
remb0
Posts: 499
Joined: Thursday 11 July 2013 22:21
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: The Netherlands
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by remb0 »

Great work! Will try it soon..
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

We are using it for ourselves so it's not in ours agendas to quit working on it :)!!
User avatar
Siewert308SW
Posts: 288
Joined: Monday 29 December 2014 15:47
Target OS: Raspberry Pi / ODroid
Domoticz version: Stable
Location: The Netherlands
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by Siewert308SW »

omg, that looks promising...
From the screenshots i do have to say chapeau.
I'm eager to try this one out, but will take some time as i have other priorities right now.
Until then i will keep a eye on this.
Question: how does the UI runs on slower devices like mine "Samsung Galaxy Tab 7" 1st edition from years back.
In the past i used the frontpage by Hansbit but the browser (FF,Chrome, Dolphin) was slow.
Setup:
- RPi4 - Domo Stable / Aeotec Z-stick7 / PiHole Unbound Gemini
- RPi4 - PiHole / PiVPN Unbound Gemini
- Synology DS923+ / DS218j
- P1 Gas/Power, SmartGateway watermeter
- Fibaro switches, contacts, plugs, smoke/Co2 ect
- rootfs @ USB HDD
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

Wez3 has the domoboard running on an Raspbian with 7" touchscreen with chromium browser and it works like a charm :)
User avatar
remb0
Posts: 499
Joined: Thursday 11 July 2013 22:21
Target OS: Raspberry Pi / ODroid
Domoticz version: Beta
Location: The Netherlands
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by remb0 »

squandor wrote:Wez3 has the domoboard running on an Raspbian with 7" touchscreen with chromium browser and it works like a charm :)
pics or it didn't happen.jpg
pics or it didn't happen.jpg (122.52 KiB) Viewed 25448 times
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

haha ok point taken:
Image
Eoreh
Posts: 65
Joined: Tuesday 13 October 2015 13:50
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Poland
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by Eoreh »

Hi !
Looks nice. I want try it, but i have little problem like this.

Code: Select all

Traceback (most recent call last):
  File "server.py", line 8, in <module>
    import modules.api as api
  File "/home/pi/domoboard/modules/api.py", line 8, in <module>
    import requests, json, re
ImportError: No module named requests
What's the problem ?

Its happend after start:

Code: Select all

sudo python server.py -c example.conf
Of course, I installed all the necessary components

Code: Select all

sudo apt-get install python-setuptools 
sudo apt-get install git
sudo easy_install flask flask-auth configobj gitpython simplejson bleach
git clone https://github.com/wez3/domoboard 
In config example.conf i change only 2 lines in section "server" like this

Code: Select all

url = 192.168.5.80:8080    # IP-address of Domoticz backend
flask_url = 192.168.5.88:80	
My directory modules have files like this:

Code: Select all

api.py
api.pyc
__init__.py
__init__.pyc
security.py
security.pyc
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

thanks for you're post.
you're missing an module so the fix would be:

Code: Select all

sudo pip install requests
or

Code: Select all

 sudo easy_install requests
we will update the readme file on GitHub.
Eoreh
Posts: 65
Joined: Tuesday 13 October 2015 13:50
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Poland
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by Eoreh »

Thx for fast answer.
Next problem after (install "requests and) start -> sudo python server.py -c example.conf

Code: Select all

 Traceback (most recent call last):
  File "server.py", line 147, in <module>
    config = json.loads(security.sanitizeString(json.dumps(unsanitizedConfig)), object_pairs_hook=OrderedDict)
  File "/usr/lib/python2.7/json/__init__.py", line 351, in loads
    return cls(encoding=encoding, **kw).decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 369, in decode
    raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 1 column 3231 - line 1 column 3235 (char 3230 - 3234)
My Domoticz - beta v3.6258 runs http on RPI3 with jessie from may 2016 (update and upgrade today).
I dont have any password and users.
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

could you post you config.

it seems that error has been raised when the config is being loaded.
Eoreh
Posts: 65
Joined: Tuesday 13 October 2015 13:50
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Poland
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by Eoreh »

Hi !
My config - edited in Notepad++ over WinSCP.
As i wrote I was change only 2 lines from oryginal.

Code: Select all

url = 192.168.5.80:8080    # IP-address of Domoticz backend
flask_url = 192.168.5.88:80  
Attachments
example.zip
(1.35 KiB) Downloaded 279 times
squandor
Posts: 213
Joined: Saturday 19 December 2015 22:34
Target OS: Raspberry Pi / ODroid
Domoticz version: 3.5837
Contact:

Re: Domoboard a New Dashboard using Domoticz as backend

Post by squandor »

at the server section [[server]]
set secret_key with an random key

i would try to set an username = password to the [[users]] section.

There is an logon page on the domoboard which requires an user and password.

and try to use real idx id's because the server checks if they exists.
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests