[Solved] HADashboard stopped working after 0.63.1 upgrade

I’m looking at putting a fix into AD 2 but it won’t be until the weekend. AD 3 is pretty stable now though.

2 Likes

I basically did that, I just needed a couple changes like moving the apps.yaml file to the apps folder and change the ha_url, but they were all requested in the Log file errors.

1 Like

I feel stupid but I spent like an hour trying to figure out why -c /appdaemon.yaml wasn’t working. Perhaps a better error message could be reported?

So I ended up installing 3.0 and it went pretty smoothly after I realized I should just backup the old “appdaemon” directory and let it create a new one.
Question about SSL. If I activate it and set a password, is there a way to append the password into the url somehow so that the password doesn’t need to be entered when accessing it?
The problem with the current setup is not being able to save the dash to my iphone homescreen; as if i do, I need to enter the password every time. Then, I can’t change the url to access the custom skin I have.
It would be great to have “secure” access while away with my phone. It’s WAY faster to load than the Home Assistant iOS app and looks prettier.

P.S. I’ve attached some pics of my 3 dashboards for potential inspiration: Living Room, Bedroom & iPhone. That frame took me forever to make with particle board by the way.

Screenshot from Teamviewer:

Tablet with home made frame and Android Daydream Screensaver:

iPhone Dash:


Living Room Dash:

Bedroom Dash:

1 Like

@aimc were you able to create a fix in for AD 2? I am hoping v2 can continue to be functional as I tried upgrading to v3 this weekend but ran out of the limited amount of time I had available while working through errors from the upgrade.

As an aside, is there a list of changes one needs to make to go from v2 to v3? I could not find one in the v3 docs.

Thanks for making AppDaemon and HADashboard. They make HA so much more powerful.

here are the breaking changes listed:

you might also want to look at the same topics for beta2, 3, 4 and 5 (but there was very little breaking there)

We will be releasing 3.0 soon, so I would prefer not to release a fix for 2.x, I am aiming for the coming weekend.

I’ll post all breaking changes in the announcent and I’ll add to the docs, but ahead of that listen to Rene, he is your friend (and mine!)

1 Like

@RevelRob beautiful dashes - I’ll look into adding a password parameter to the URL for you.

@ReneTode thanks for the response. I am working through the change log items and figuring out what I need to change in my dashboard and AppDaemon scripts to get them working. And I am getting a lot of instances of this error in my AppDaemon scripts:

KeyError: 'input_boolean.is_nighttime'

The full error is:

2018-03-12 21:21:00.023433 WARNING AppDaemon: ------------------------------------------------------------
2018-03-12 21:21:37.023867 WARNING AppDaemon: ------------------------------------------------------------
2018-03-12 21:21:37.025023 WARNING AppDaemon: Unexpected error in worker for App RainbowBarLight:
2018-03-12 21:21:37.026258 WARNING AppDaemon: Worker Ags: {'name': 'RainbowBarLight', 'id': UUID('4f81359b-b6a6-469d-b058-875ad443a120'), 'type': 'timer', 'function': <bound method RainbowBarLight.rotate_light of <rainbow_bar_light.RainbowBarLight object at 0x742d77b0>>, 'kwargs': {'interval': 300}}
2018-03-12 21:21:37.027490 WARNING AppDaemon: ------------------------------------------------------------
2018-03-12 21:21:37.029920 WARNING AppDaemon: Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/appdaemon/appdaemon.py", line 527, in worker
    funcref(self.sanitize_timer_kwargs(app, args["kwargs"]))
  File "/config/appdaemon/apps/rainbow_bar_light.py", line 28, in rotate_light
    is_nighttime = self.get_state("input_boolean.is_nighttime")
  File "/usr/lib/python3.6/site-packages/appdaemon/appapi.py", line 214, in get_state
    return self.AD.get_state(namespace, device, entity, attribute)
  File "/usr/lib/python3.6/site-packages/appdaemon/appdaemon.py", line 642, in get_state
    return deepcopy(self.state[namespace])
KeyError: 'input_boolean.is_nighttime'

which comes from this snippet of code:

    is_nighttime = self.get_state("input_boolean.is_nighttime")

I am at a loss for what is going wrong. This script in AppDaemon v2 has been running fine for the last year. Only breaking with v3. What other info can I provide?

As an aside, I realize this thread is about HADashboard and I am talking about AppDaemon, but I can’t update one without updating the other in hassio. Which is why I was hoping that v2 would be patched to be workable so I could work through these in an orderly fashion. Right now either my HADashboard is broken if I stay on v2 or my AppDaemon is broken if I move to v3. Either way it breaks my whole setup since I rely on both.

appdaemon and the dashboard are 1 :wink:
you didnt do the changes mentioned in the topic i gave.

the line:

import appdaemon.appapi as appapi

now needs to be:

import appdaemon.plugins.hass.hassapi as hass

and in the initialize:

appapi.AppDaemon

needs to be replaced by:

hass.Hass

in ALL your apps.

1 Like

Thanks and Thanks!
Another option for the password could be to redirect the user to the url entered after they enter the password.

In the current setup, once the url for a dash with skin is entered (https://SUBDOMAIN.duckdns.org:5050/DashName?skin=SkinName), > it goes to password screen > password is entered > redirected to https://SUBDOMAIN.duckdns.org:5050 (dashboard and skin gone). It would be great to have it redirect back to the original dashboard.

Thanks again!

@ReneTode D’oh! Thanks for catching that. Everything is working now and the upgrade went smoothly. I really appreciate your spelling this out for me. A toddler in the house and the daylight savings change don’t have me at my best :slight_smile:

1 Like

They look great… one silly question what skin are you using? Glassic?

Hey Julius, It’s actually Clear Sky with my own background and a few tweaks. Unfortunately, the skin hasn’t been updated for Appdaemon V3, but you would just need to adjust the variables.yaml

I am trying to use the Clear Sky dashboard on version 3.0.1. Everything seems to be fine, but I have a couple of issues: The alarm widget displays the panel all the time. The normal behavior is that when you click it, the panel opens up (pops up). Is there a way to fix this?
I also have a minor issue with long names (titles) for widgets, the characters expand over the icon ( a work around for this is to make the widget (2x1), but I just want to know where to find a solution for this. The normal behavior for obsidian, default, zen and glassic dashboards is that the same title fits fine with no issues. Any help will be highly appreciated!

most widgets have title and title2.
so you can splitt up the longer names in 2 lines.
if that is not enough, you can use title_style to change the fontsize.

without more ifo, there is no way to tell why your alarm widget pops up unexpected.

I do not know if this could help in any possible way: If I use the standard skins that come pre-defined for appdaemon 3.0.1; I do not have any issues with the alarm panel or the titles (obisidian, zen, glassic, default, etc). The issue occurs with the Clear Sky one, I just grabbed it from: https://github.com/arraylabs/hadashboard-skin-clear_sky and gave it a try.

Rene I am including the screenshot, my logs look clean (please let me know if you required more info…):

2018-04-23 10:45:56.592756 INFO AppDaemon Version 3.0.1 starting

2018-04-23 10:45:56.593919 INFO Configuration read from: /home/appdaemon/.appdaemon/appdaemon.yaml
2018-04-23 10:45:56.598030 INFO AppDaemon: Starting Apps
2018-04-23 10:45:56.609223 INFO AppDaemon: Loading Plugin HASS using class HassPlugin from module hassplugin
2018-04-23 10:45:56.661351 INFO AppDaemon: HASS: HASS Plugin Initializing
2018-04-23 10:45:56.662950 INFO AppDaemon: HASS: HASS Plugin initialization complete
2018-04-23 10:45:56.664374 INFO Starting Dashboards
2018-04-23 10:45:56.683712 INFO Starting API
2018-04-23 10:46:01.941103 INFO AppDaemon: HASS: Connected to Home Assistant 0.67.1
2018-04-23 10:46:01.967441 INFO HADashboard: New dashboard connected: Robotin
2018-04-23 10:46:04.158242 INFO AppDaemon: Reading config
2018-04-23 10:46:04.174934 INFO AppDaemon: /home/appdaemon/.appdaemon/apps/apps.yaml added or modified
2018-04-23 10:46:04.175681 INFO AppDaemon: /home/appdaemon/.appdaemon/apps/apps.yaml added or modified
2018-04-23 10:46:04.176270 INFO AppDaemon: App ‘NightLight’ added
2018-04-23 10:46:04.176911 INFO AppDaemon: App ‘hello_world’ added
2018-04-23 10:46:04.177427 INFO AppDaemon: App ‘stardate’ added
2018-04-23 10:46:04.178230 INFO AppDaemon: Adding /home/appdaemon/.appdaemon/apps to module import path
2018-04-23 10:46:04.180078 INFO AppDaemon: Loading App Module: /home/appdaemon/.appdaemon/apps/hello.py
2018-04-23 10:46:04.214798 INFO AppDaemon: Loading App Module: /home/appdaemon/.appdaemon/apps/stardate.py
2018-04-23 10:46:04.226254 INFO AppDaemon: Loading App Module: /home/appdaemon/.appdaemon/apps/NightLight.py
2018-04-23 10:46:04.237715 INFO AppDaemon: Initializing app NightLight using class NightLight from module NightLight
2018-04-23 10:46:04.242208 INFO AppDaemon: Initializing app hello_world using class HelloWorld from module hello
2018-04-23 10:46:04.316811 INFO HADashboard: New dashboard connected: Robotin
2018-04-23 10:46:04.489941 INFO hello_world: Hello from AppDaemon
2018-04-23 10:46:04.493656 INFO hello_world: You are now ready to run Apps!
2018-04-23 10:46:04.494391 INFO AppDaemon: Initializing app stardate using class stardate from module stardate
2018-04-23 10:46:04.502327 INFO stardate: STARDATE:11830.8
2018-04-23 10:46:04.503127 WARNING AppDaemon: stardate: Entity sensor.stardate not found in AppDaemon
2018-04-23 10:46:07.187778 INFO AppDaemon: Got initial state from namespace default
2018-04-23 10:46:09.790860 INFO AppDaemon: App initialization complete

sorry julius,

this is a skin that is custom, but it hasnt been updated for a year.
in that year a lot has changed and because i am unfamiliar with the code it would be very hard to start debugging it.

but as i see it there is not much that that skin offers, except a background and colorvariables.
i would advice you to take the default skin, add that background and use the normal way to change the background colors from the widgets.

that way you avoid the trouble off debugging something that someone else wrote long ago.

1 Like

Hey Julius, sorry I haven’t replied earlier. Didn’t see the replies on here.

I was able to get the Alarm (and other widgets unsupported by the clear_sky skin) to work by adjusting the variables.yaml file.

First, make a duplicate of config/appdaemon/cusom_css/clear_sky and name it something else. In my case, nilly as that’s my dog’s name who is featured in the background photo.

Next, replace the variables.yaml file in the new directory with the one here. Bear in mind that this file may not be exhaustive. It may have changed a bunch since I fixed it. It’s just the clear_sky variables.yaml with newer widgets added (alarm, etc.) New widgets may have been added since I changed it:
variables.yaml (13.3 KB)
IMPORTANT!!!
Make sure to open the file and change clear_sky in line 31 to whatever your new directory name is (nilly in my example). It reads:
- <script type="text/javascript" src="/custom_css/clear_sky/js/helpers.js"></script>
Also, you can compare the variables.yaml I attached with the official updated one here. When adding blocks, make sure to change them to be the same styles as the one I posted as they go with the clear_sky skin and not the default one.

Next, download the dashboard.css file from the Appdaemon Github and replace the 2nd block of text that looks like this:

body {
  margin: 0;
  background-color: #222;
  font-size: 15px;
  color: #fff;
  padding: 0;
  line-height: 1;
  font-family: 'Helvetica Neue', 'Helvetica', 'Open Sans', 'Arial'
}

with this:

body {
  margin: 0;
  background:transparent url(/custom_css/nilly/img/background_1.jpg) no-repeat 0 0 fixed;
  background-size:cover;
  font-size: 15px;
  color: #fff;
  padding: 0;
/*  line-height: 1; */
  font-family: 'Helvetica Neue', 'Helvetica', 'Open Sans', 'Arial'
}

Make sure to change nilly and background_1.jpg in the (/custom_css/nilly/img/background_1.jpg) line to whatever you named your directory and picture.

Replace dashboard.css with this new one.

If you want to change the background photo to something else; in the new directory, open the jpg file in the img folder with your favourite image editor, edit it and save it.

That should work. I did it awhile ago so my memory is hazy but I don’t think there is anything else that needs to be changed.

P.S. If you want to change the rounded corners of the widgets to be more or less rounded, edit the px of the following 3 lines in the .widget block of the dashboard.css file (around lines 127 - 138):

  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;}

Mine are 10px, 10px, 15px. Looks half decent.

G’Luck!

Here are screenshots from my computer showing it working: