Announcement: HADashboard v2 Beta3!

Exactly!

(OK, I fixed it thanks)

1 Like

Wow, instant reply. I thought I did a search in the MD fileā€¦ hmmmā€¦ but thanks so much!!!
EDIT: I still donā€™t know how I missed it!! Must be the Monday!

Got a bug. I have a template switch that cancels the turn_on service based on a condition. On the regular UI the switch toggles to on for a second and then toggles back off (expected behavior). On the dashboard it stays on even though the state (value_template) is actually off.

When will we see a first lcras version ? Iā€™m wondering if I should make a logo for it :wink:

at this moment i got

  • switches
  • input booleans
  • sensors (text and value)
  • image
  • iframe

so i must create new versions for

  • climate (will be hard because i have none)
  • light
  • clock
  • input slider
  • weather

dont know how much time i can spend on it, so a carefull estimation is : end of the month?
Andrew likes it also and probably wants to implement it, so then he needs to check out if i did everything right :wink:

Iā€™ll test out climate for you if that helps.

1 Like

it could help a little.
but i am a trial on error programmer :wink:
i think i must find a pic with a climate widget first, to check out what must be changed :wink:
ill let you know when i start with that.

first the more easy parts and the foscam app :wink:

thermo:
    widget_type: climate
    entity: climate.main_floor
    title: Thermostat
    step: 1
    units: "°F"

NaN is ā€˜Not a Numberā€™ - my ecobee is on auto so this is what shows. Andrew and I couldnā€™t get it to work the way we wanted on my setup but normally this would be the climate set temperature, affected by the plus ort minus buttons on either side of it.

thx.
so its basicly the same as the input_slider.
that makes my life a little more easy :wink:

i need to think how to get that in a small widget or how i give shape to a bigger widget.

I was thinking you could have a 2x2 widget like the media player and show the current temp from the climate sensor on top, with the setpoint underneath it with right/left arrow type deltas on either side.

Something like this:

3 Likes

I would need to take a look at the HASS log at the time you turn the switch off to see what is going on.

2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558622056: Received {'type': 'call_service', 'domain': 'homeassistant', 'service': 'turn_on', 'service_data': {'entity_id': 'switch.fan'}, 'id': 21}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=homeassistant, service=turn_on, service_data=entity_id=switch.fan, service_call_id=4517201904-32>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'call_service', 'data': {'domain': 'homeassistant', 'service': 'turn_on', 'service_data': {'entity_id': 'switch.fan'}, 'service_call_id': '4517201904-32'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 99595, tzinfo=<UTC>)}}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=switch, service=turn_on, service_data=entity_id=['switch.fan'], service_call_id=4517201904-33>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'call_service', 'data': {'domain': 'switch', 'service': 'turn_on', 'service_data': {'entity_id': ['switch.fan']}, 'service_call_id': '4517201904-33'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 101552, tzinfo=<UTC>)}}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.helpers.script] Running script
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.helpers.script] Executing step call service
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=switch, service=turn_on, service_data=entity_id=switch.null, service_call_id=4517201904-34>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'call_service', 'data': {'domain': 'switch', 'service': 'turn_on', 'service_data': {'entity_id': 'switch.null'}, 'service_call_id': '4517201904-34'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 104962, tzinfo=<UTC>)}}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=4517201904-34>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'service_executed', 'data': {'service_call_id': '4517201904-34'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 106006, tzinfo=<UTC>)}}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=4517201904-33>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'service_executed', 'data': {'service_call_id': '4517201904-33'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 107084, tzinfo=<UTC>)}}
2017-05-08 18:03:45 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=4517201904-32>
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558890600: Sending {'id': 53, 'type': 'event', 'event': {'event_type': 'service_executed', 'data': {'service_call_id': '4517201904-32'}, 'origin': 'LOCAL', 'time_fired': datetime.datetime(2017, 5, 8, 23, 3, 45, 108771, tzinfo=<UTC>)}}
2017-05-08 18:03:45 DEBUG (MainThread) [homeassistant.components.websocket_api] WS 4558622056: Sending {'id': 21, 'type': 'result', 'success': True, 'result': None}

CONFIG:

  - platform: template
    switches:
      fan:
        friendly_name: "Fan"
        value_template: "{{ is_state('switch.wemo_switch','on')}}"
        turn_on:
          service: switch.turn_on
          data_template:
            entity_id: >
              {% if is_state('sensor.office_window', 'Open') %}
                switch.wemo_switch
              {% else %}
                switch.null
              {% endif %}
        turn_off:
          service: switch.turn_off
          data:
            entity_id: switch.wemo_switch

Is that al in the HASS log? Iā€™m not seeing the actual state changes which are the key to figuring this out.

That was everything in the log for when I pressed the switch on and it nulled out. I think thatā€™s the issue. Guessing here, but Iā€™m thinking the HASS frontend flips the UI switch the instant you press it regardless of state changes in the background. Then when it realizes the state didnā€™t actually change it refreshes the UI and sets the switch back to off. (this seems to be what isnā€™t getting pushed to the Dash. Possibly because there was no change?)

It would probably be super easy to recreate by just making a template switch like above and just have the entity_id be something that doesnā€™t exist.

If there are any more logs I can get you let me know.

That would make sense - but if thatā€™s true there isnā€™t an easy fix, because there is no actual state change. The HASS UI and dashboard take a different approach in this case, it is interesting that you have highlighted it. HASS assumes failure until proven otherwise, Dash assume success until told otherwise. I implemented it that way because it is annoying to have a switch flip back and forth a few times until it decides it is on.

One way around it would be to move the logic to AppDaemon - have the switch trigger an App that checks if the window is open and if so, turns on the fan otherwise turns off the switch again, this would work for both systems.

Makes sense Iā€™ll have to think about it. Can probably do something similar with an input boolean being the ui button and triggering a script that either turns the fan on or sets the input to false.

In a similar vain is there any way to manually push an update to Dash or initiate a state sync from the server? I have noticed that at times it gets out of sync (besides the above issue) and I need to reload the page to fix it.

Anyway to access a sensor attribute? One particular one was DarkSky sensors, thereā€™s icon URL path in the attributesā€¦ is there anyway to access it and set it on the Dashboard tile??? for example sensor.darksky_summary value is ā€œMostly Cloudyā€ and thereā€™s also an ICON url in its attribute ā€œentity_pictureā€, is it possible to read it and set as icon for the widget?

even if we already had a widget that could display a sensor attribute (which isnt there at this moment)
you would need another part of code in the widget to detect that that attribute is an url and then display the url.

so that would be a very specific widget.

if i am correct the weather widget displays the icon. so it is possible to dress down the widget to display only the widget.
in the future we will be able to create custom widgets, so then that would be possible.

Thanks! yeah Iā€™m using ā€œweatherā€ widget and see the icon but I wish I could use just some of the info from the Dark Sky set of sensors and maximize the screen estates :slight_smile:

Hi, will you still help me with the Cyrillic alphabet?