Google Nest Cam Outdoor with Floodlight

I’ve got Google Nest integration working with HA. I can access the camera feeds and even the doorbell seems to be working, very happy.

However, I can’t seem to add the floodlight feature of Nest Cam Outdoor to HA at all. It’s not showing up anywhere. I’ve got the Nest Cam Outdoor camera feed, but nothing else.

Can anyone help?

anyone? I have the same issue

I don’t think the floodlight can be added to HA through the Nest integration. The documentation from Google does not show the light as being accessible to developers.

I ended up getting the floodlight in HA by installing a Z-Wave smart switch, that’s set to always power the floodlight/camera. Then, use a Google Home automation to sync the status with HA. I can now control the floodlight with the physical switch or through HA automations. Note: I don’t sync brightness level, just on/off.

I think I’ve solved this issue in as elegant a way as is possible given the ridiculous restrictions put in place by Google.

Prerequisites:

  • Home Assistant Cloud (or another way to expose your devices to Google Assistant)
  • You need to be in the Google Home Public Preview (for some reason, on/off doesn’t show as an available starter for my HA lights in the Google Home app)
  • You need to be comfortable with editing the YAML configurations

Overview

  1. Create an Input Number and Input Boolean helper
  2. Create a template light switch using those helpers as data sources
  3. Expose the template switch to Google Assistant
  4. Create a special purpose ‘room’ and assign the template switch to it
  5. Create a syncing script in the Google Home on the Web portal

You can of course skip creating the template switch and use any dimmer switch in HA to sync the floodlight to.

I’m still trying to figure out the brightness component, I’ll update this post when I do.

Sample template light switch:

light:
 - platform: template
   lights:
     floodlight:
       friendly_name: "Floodlight"
       unique_id: "template-floodlight-01252025"
       level_template: "{{ states('input_number.floodlight_brightness')|int }}"
       value_template: "{% if is_state('input_boolean.floodlight_on_off', 'on') %}on{% else %}off{% endif %}"
       turn_on:
         service: input_boolean.turn_on
         target:
           entity_id: input_boolean.floodlight_on_off
         data: {}
       turn_off:
         service: input_boolean.turn_off
         target:
           entity_id: input_boolean.floodlight_on_off
         data: {}
       set_level:
         service: input_number.set_value
         data: 
           value: "{{ brightness }}"
           entity_id: input_number.floodlight_brightness

Sample Google Home automation:

metadata:
  name: GH<->HA Floodlight sync
  description: Synchronizes HA and GH floodlight entities' on/off states

# 'Floodlight - Backyard' is the real Nest Cam with Floodlight, 'Floodlight - Routine Device' is the template switch from Home Assistant

automations:
  #From GH
  - starters:
      - type: device.state.OnOff
        device: Floodlight - Backyard
        state: on
        is: false
    condition:
      type: device.state.OnOff
      device: Floodlight - Routine Devices
      state: on
      is: true
    actions:
      - type: device.command.OnOff
        devices: Floodlight - Routine Devices
        on: false
  - starters:
      - type: device.state.OnOff
        device: Floodlight - Backyard
        state: on
        is: true
    condition:
      type: device.state.OnOff
      device: Floodlight - Routine Devices
      state: on
      is: false
    actions:
      - type: device.command.OnOff
        devices: Floodlight - Routine Devices
        on: true
    # From HA
  - starters:
      - type: device.state.OnOff
        device: Floodlight - Routine Devices
        state: on
        is: false
    condition:
      type: device.state.OnOff
      device: Floodlight - Backyard
      state: on
      is: true
    actions:
      - type: device.command.OnOff
        devices: Floodlight - Backyard
        on: false
  - starters:
      - type: device.state.OnOff
        device: Floodlight - Routine Devices
        state: on
        is: true
    condition:
      type: device.state.OnOff
      device: Floodlight - Backyard
      state: on
      is: false
    actions:
      - type: device.command.OnOff
        devices: Floodlight - Backyard
        on: true
1 Like