LZW36 + HomeAssistant + NabuCasa + Google Assistant

Hi all. I just got my LZW36 wired up and working (as detail in this post). I followed the instructions here and here. I renamed the three devices to Bedroom Fan, Bedroom Light, and Bedroom Both Controls and all three devices are working well. I would like to be able to control the fan/light using voice (via Google Assistant), but if I ask it to control the light it says, “Okay, turning on three devices.” The fan works with out a problem but anything involving the light, also ends up controlling the fan. I tried disabling the device that control both, but that didn’t work (it gave an error message, and then turned on both the light and fan).

I realize this isn’t really a problem with the device or HomeAssistant but with Google Assistant. Does anyone have any ideas for a work around?

That’s odd, I have had voice control working without much of a problem, also with excluding instance 1 (fan/light) from google.

Do you have your you fan’s “light.somename” instance templated as a fan? What I suspect is happening is google sees both as a “light” because of how the entity is classified.

The setup working for me is to expose only the light-only entity to google and the fan template. Fan template below, adjust entity names to fit your setup.

fan:
  - platform: template
    fans:
      bedroom_fan:
        friendly_name: "Bedroom Fan"
        value_template: >
          {% set s = states('light.bedroom_overhead_fan_dimmer_level') %}
          {{ s if s in ['on', 'off'] else 'off' }}
        speed_template: >
          {% set output = ['Low','Medium','High'] %}
          {% set idx = state_attr('light.bedroom_overhead_fan_dimmer_level_fan', 'brightness') | int // 85 - 1 %}
          {{ output[idx] }}
        turn_on:
          service: homeassistant.turn_on
          entity_id: light.bedroom_overhead_fan_dimmer_level
        turn_off:
          service: homeassistant.turn_off
          entity_id: light.bedroom_overhead_fan_dimmer_level
        set_speed:
          service: light.turn_on
          entity_id: light.bedroom_overhead_fan_dimmer_level
          data_template:
            brightness: >
              {% set mapper = {'Low': 85, 'Medium': 170, 'High': 255} %}
              {{ mapper[speed] }}
        speeds:
          - 'Low'
          - 'Medium'
          - 'High'

I can see this as it might be hearing bedroom lights instead of “Bedroom Light”. Google likes to lump things into groups automatically but sometimes does too good of a job. Make sure they are not grouped into a single item in google home app. I’ve had this happen. You want 3 devices in one room, but not 3 devices in one group.

Make sense?

Thank you @doublepedaldylan. I added the template which then gave me a fan.bedroom_fan entity. I excluded two devices so that only light.bedroom_light, and fan.bedroom_fan are synced to Google. I think that should do it, but will test it when I get home tonight from work.

Tested it and it works (mostly)! Now it’s throwing me an error when I ask to adjust the fan speed using the words High/Medium/Low.

slamhead, did you get this fixed? I am having a similar issue. In the Google Home app, it only shows on/off button and doesn’t have the speed settings. Even the on/off isn’t working for me. I can turn off the fan, but the Home app shows Off for a few seconds, then resets to On even though the fan actually stops. I must have an error in my config.yaml fan template, or in my Google Assistant yaml config.

I did not get it fixed.

Don’t have your setup, but with Google Assistant, ST and a Jasco fan switch, I have to use numbers. Try saying set the xxx to 10, 50 or 90 for the low, medium and high settings.

This topic was automatically closed 67 days after the last reply. New replies are no longer allowed.