I got my Reolink Elite Pro Floodlight PoE working directly from Hubitat and finally got to delete Alexa from the equation

After spending way too many hours on this project, I figured I'd post what I learned in case it saves someone else the headache.

Hardware:

  • Reolink Elite Pro Floodlight PoE

  • ASIN: B0DXJTPBYT

  • Hubitat C-8 Pro (2.5.0.153)

  • YoLink Outdoor Motion Sensors (for now)

My goal was simple:

Motion
   ↓
Hubitat
   ↓
Reolink Floodlight

No Alexa.

No cloud.

No routines.

No "Alexa, why didn't my light turn on?"

No "One moment while I work on that for you."

No sacrificing a goat to the Smart Home Gods.


Why I wanted to get rid of Alexa

Originally I had FOUR Alexa routines:

Sensor #1 Motion → Flood ON

Sensor #1 No Motion → Flood OFF

Sensor #2 Motion → Flood ON

Sensor #2 No Motion → Flood OFF

They worked.

Mostly.

Until they didn't.

I was already migrating my exterior lighting to Hubitat and Zooz, and this Reolink floodlight was the last cloud-dependent piece.

So naturally I figured:

"How hard can this be?"

The Smart Home Gods laughed.


The rabbit hole

First thing I discovered:

Most examples online point to commands that don't actually control the floodlight.

I successfully controlled:

  • The blue status LED

  • The IR illuminators

  • Various settings

Everything except the thing I actually wanted.

At one point I was seriously considering standing outside waving at the camera while repeatedly posting JSON at it.


The breakthrough

The magic command turned out to be:

[
  {
    "cmd":"SetWhiteLed",
    "action":0,
    "param":{
      "WhiteLed":{
        "channel":0,
        "mode":0,
        "state":1,
        "bright":100
      }
    }
  }
]

Floodlight ON


[
  {
    "cmd":"SetWhiteLed",
    "action":0,
    "param":{
      "WhiteLed":{
        "channel":0,
        "mode":0,
        "state":1,
        "bright":100
      }
    }
  }
]

Floodlight OFF


[
  {
    "cmd":"SetWhiteLed",
    "action":0,
    "param":{
      "WhiteLed":{
        "channel":0,
        "mode":0,
        "state":0,
        "bright":100
      }
    }
  }
]

POST those to:

http://CAMERA_IP/cgi-bin/api.cgi?user=admin&password=YOU_ENTER_PASSWORD_HERE

Note: I used the admin account that Reolink has built in. You could use any account, as long as it has the rights to turn on and off the light.

Content-Type:

application/json

What did NOT work

These were successful API calls that controlled things I didn't want:

SetPowerLed

Controls:

  • Blue status LED

Does NOT control:

  • Floodlight

Ask me how I know.


IR Light commands

Controls:

  • Infrared LEDs

Does NOT control:

  • Floodlight

Also ask me how I know.


Hubitat implementation

Rule Machine:

Trigger

Either YoLink motion sensor reports Active

Actions

  1. HTTP POST floodlight ON

  2. Wait until BOTH motion sensors are inactive for 1 minute

  3. HTTP POST floodlight OFF

Required Expression

Between Sunset and Sunrise

Result:

  • Motion detected → Floodlight ON

  • Continued motion → Timer resets

  • One minute after all motion stops → Floodlight OFF

  • Daytime → Rule ignores motion

Exactly what I wanted.


Bonus round

After confirming everything worked:

I disabled all four Alexa routines.

The house did not catch fire.

The floodlight still worked.

Alexa survived.

I survived.

Hubitat gained another automation.


Final architecture

YoLink Motion
      ↓
Hubitat Rule Machine
      ↓
Local Reolink API
      ↓
Elite Pro Floodlight PoE

Local.

Fast.

Reliable.

And one less cloud dependency in the smart home.

If anyone is trying to integrate a Reolink Elite Pro Floodlight PoE (ASIN B0DXJTPBYT) with Hubitat, hopefully this saves you a few hours of trial and error.


Enjoy fellas! Twas a fun evening with GPT & ME :slight_smile:

10 Likes