Wall Mounted Dashboard (now known as HADashboard)

Thanks.

aimc, is it possible after installing and being able to run it to change it in a way to let it start within docker, if one should wish so?
Cause I see a docker raspi in hadashboard dir

You will need to redo the installation. You should be able to re-use the various configuration files once you have created them.

My current installation is the AIO script but itā€™s the old one before the user changed from hass to homeassistant. I followed the instructions that were in the ./init directory when I installed but do remember something like what you describe, unfortunately I edited the originals before copying them so I can no longer see what that was. On my Pi I have two files in the root level /etc/init.d directory that I copied, hapush and dashing and as far as I remember I only changed the directory paths and the ruby version. I did not copy the services themselves. Donā€™t forget you need to make them executable too as per the instructions.

$ sudo chmod 755 /etc/init.d/dashboard

$ sudo chmod 755 /etc/init.d/hapush

Here are the relevant bits from the two filesā€¦

hapush

# Must be a valid filename
NAME=hapush
HAPUSH_DIR=/home/pi/hadashboard/hapush
DAEMON="$HAPUSH_DIR/$NAME.py"
PIDFILE="$HAPUSH_DIR/$NAME.pid"
CFGFILE="$HAPUSH_DIR/$NAME.cfg"
DAEMON_OPTS="-d -p $PIDFILE $CFGFILE"

dashing

# Must be a valid filename
NAME=dashing
DASHING_DIR=/home/pi/hadashboard
DAEMON=/usr/local/bin/dashing
PIDFILE="$DASHING_DIR/$NAME.pid"
DAEMON_OPTS="start -d -P $PIDFILE"
GEM_HOME=/usr/local/lib/site_ruby/gems/1.9.1

Not saying that Docker is explicitly better in every use case. But the problems discussed the past few days in this thread (problems with directories, dependencies, permissions) are exactly what you leave behind when going the Docker route.

Here is what I have running with full automatic updating and little overhead on a 7+ yr old desktop with 4gb ram, without dependency-hell, permission difficulties, or problems when updating. (just to give an example of what is possible with Docker.)

  • cadvisor (container by google that accesses the Docker socket and gives detailed system metrics (and can export it to InfluxDB)
  • Deluge
  • Grafana (which pulls data from influxDB)
  • HADashboard (obviously :stuck_out_tongue: )
  • Headphones
  • Home Assistant Dev
  • InfluxDB (which contains data from HA, Cadvisor and more)
  • LazyLibrarian + Calibre (in 1 container, so my books and ebooks library automatically works with my Amazon Kindle ereader)
  • MariaDB (at the moment only using it as a database for Nextcloud)
  • Plex Media Server
  • Muximux
  • Nextcloud
  • NZBGet
  • Ombi
  • OZWCP (this one doesnā€™t autostart because I only need it when Iā€™m making changes to my Z-Wave network)
  • Plexpy
  • Radarr
  • Sonarr
  • Traefik (A reverse proxy, it is absolutely amazing, I canā€™t go back to nginx+letsencryptā€¦ ever)
  • TVHeadend (TV server )
  • Watchtower (This container makes sure that every container keeps up-to-date automatically, including itself).

However I must note that Iā€™m not running on ARM but on X86, which overall has better support / more Docker containers available.

For those interested, here is my HADashboard Docker configuration: (and itā€™s working perfectly) (x86!!!)

image: marijngiesen/hadashboard
network: bridged
port: 3030 (map this to something that is available on your host machine, in my case I could map it 1:1 to 3030)
volume mappings: all the folders in /app/ (in the container) that you need access to (it doesnā€™t work when you map the whole /app folder), in my case I mapped widgets, dashboards and the configuration folders for HAPush and the Home Assistant config.

I have been running Docker on Raspberry Piā€™s (in the past) perfectly with the help of: https://blog.hypriot.com/

You can use Docker in different ways, you can do it directly from the commandline, or use docker-compose. Iā€™ve been using Docker on UNRaid, which gives it a gui.

It also is really understandeable that people without much linux/programming experience get totaly lost when encountering errors when copying/pasting from tutorials on the internet. I think itā€™s a good idea to get some basic understanding / practice in linux, I can recommend Level1Techs for tutorials, such as: https://www.youtube.com/watch?v=ltjPIpilqow

ps: https://blog.hypriot.com/getting-started-with-docker-on-your-arm-device/ <-- this explains the basics of (our use case of) Docker, for the people who want a nice readup on what docker is and what it does.

4 Likes

Sorry for the doublepost, but this is a totally different subject than the previous one.

Iā€™m trying to test various options for in-wall-touchscreens. Right now I am leaning towards the official 7" Raspberry Pi Touchscreen + Rpi3, since this has to run 24/7 at my parents house and sticking (cheap(er)) tablets to the walls seems to be asking for trouble in the long run. (As mentioned before in this thread, since (especially cheap) consumer tablets are not meant to run 24/7. If the connection with HA is lost and my parents canā€™t disable their alarm anymore, itā€™s no bueno) (My father loves home automation / domotica since forever, but he is only comfy with industrial telemetry protocols and PLC programming, not with linux/FOSS/python/iot etc, so Iā€™m trying to get this right, because if the errors keep piling up theyā€™ll probably end-up not using any of the functionality that home-assistant has to offer.)

Is anyone else here using the Raspberry Touchscreen? Because mounting it without case seems a little risky, but mounting it (the intended way) with the case forces you to use the display upside down, and this really is disastrous for the viewing angles (itā€™s really bad). So Iā€™m looking for mounting options.

Iā€™ll open my own topic in the HADashboard category when I have more dashboard, widgets and functionality to show-off (and share).

Guys! Recently I had setup my efergy component into home-assistant and obviously the energy_usage sensor goes to the dashboard as well for quicker view. But interestingly the sensor is not loading any data if configured as ā€œhasensorā€ ; hameter is working fine.

But in this case, hameter is not practical as this data is not in % rather absolute value which can go upto anything depending on the usage and importantly the data is in kW so represented as 0.322 for example which doesnā€™t fit properly in the tile of size 2x1.

I thought hameter is a modification of hasensor to represent the numerical data in a different manner. May be I am missing something here ?

Would someone please enlighten what could be wrong ?

After some attempts I managed to get hadashboard running on my Pi3. Main challenge I am facing now is to have it autorun. I edited the init file dashing as below. I copy it to /etc/init.d and chmod it correctly. Now when I manually run dashing te word ā€œdashingā€ will be written on my screen over and over and ultimately locks up my pi. What am i doing wrong?

NAME=dashing
DASHING_DIR=/home/pi/hadashboard
DAEMON=/etc/init.d/dashing
PIDFILE="$DASHING_DIR/$NAME.pid"
DAEMON_OPTS=ā€œstart -d -P $PIDFILEā€
GEM_HOME=/home/pi/.rvm/rubies/ruby-2.3.3/bin/gem

Thanks for the post. Would you be able to elaborate on your volume mappings a bit more. I have been struggling with getting hadashboard running on Unraid/Docker for a while now. I was able to get it up and running pretty easily on an Ubuntu VM, but the docker install is still illusive to me.

I am currently getting this error in the unraid/docker log:

/bin/sh: 1: /app/hapush/hapush.py: not found

I have the following 4 volumes mounted

/app/dashboards
/app/widgets
/app/hapush
/app/lib

I appreciate the assistance

Update: So, I was able to get this working. In previous experience with docker, the config files would be pulled down at the time the container is created. In this case, those files were not. I manually created/downloaded the various config files (hapush.py, hapush.cfg, example.erb, etc etc) and everything is running great.

1 Like

So, I donā€™t think Iā€™ve missed this anywhere, but this is a long threadā€¦

Iā€™m trying to customize the weather widget to add a high/low temp for the day. Iā€™ve already got Darksky pulling the appropriate info and Iā€™ve edited homeassistant.rb to add two entries - one for high temp and one for low temp

response = ha_api("states/sensor.dark_sky_daily_high_temperature", "get")
tempmax = response["state"]

response = ha_api("states/sensor.dark_sky_daily_low_temperature", "get")
tempmin = response["state"]

And also added this to the bottom of the send_event section:

tempmax: tempmax,
tempmin: tempmin

Iā€™ve edited to haweather.html file to add High/Low section, and it shows it correctly, except I get no values, just the degree symbol. Iā€™ve tried restarting dashing, with no change either. What did I miss?

All - I am closing this thread. It has served itā€™s purpose, but we now have our own section for HADashboard so lets start new threads for specific questions :slight_smile:

1 Like