New updated pushed today with NVR fixes!
I wasnāt able to fix it. Are you saying an update to the NVR itself or an update to the integration fixed it?
Edit: Just updated the integration and got it working again! Thanks for the heads up.
I gave up on the reolink_dev integration since the binary sensors for motion/person detection never worked for me. I have a total of 4 Reolink (E1 Zoom, RLC-510) in use and all of them are WLAN connected. For a few month now Iāve been using Frigate and loving it. It provides with binary sensors for object detection and works well for me.
yes, I can imagine that with a dedicated server for image processing you can achieve person detectionā¦ but since I have 6 camera with their own local recognition, Iād like to use it.
Once these information about binary sensor are in the packetsā¦ there should be a technical solution for it
I use my reolink streams with Doods to create human presence binary sensors on my rpi 8gb ram. No issues other than when Reolink drops out or this recent hiccup with the NVR not speaking to the integration.
I donāt use any specific integration, just the Reolink URL API and REST templates. Person motion detection works like a charm. I have a binary sensor displayed at the bottom of every camera feed.
Care to share your sanitized templates?
binary_sensor:
- platform: rest
resource: http://[NVR_IP]/api.cgi?cmd=GetMdState&channel=[CAMERA_CHANNEL; STARTS FROM 0 TO TOTAL NUMBER OF CAMERAS -1]&user=admin&password=[PASSWORD]
name: Motion Detection Main Entrance
scan_interval: 5
value_template: '{{ value_json[0].value.state }}'
device_class: motion
Just change the info between brackets to fit your environment. The āresourceā parameter can be included in secrets.yaml. Once you have set everything and restarted HASS, youāll have a new binary sensor entity that can be placed anywhere. Hope it helps!
Would you happen to have the REST URL also to send to the camera itself?
I believe there is something difficult with a token. But I never succeeded in getting that working.
My cameras are connected to the NVR, so I cannot reach them directly. Try to use the following URL instead for the resource field and tell me if it works:
http://[IPC_IP]/api.cgi?cmd=GetMdState&user=admin&password=[PASSWORD]
Thanks!
Iām getting the following result:
[ { "cmd" : "GetMdState", "code" : 0, "value" : { "state" : 0 } } ]
I guess succesfull!
Thatās correct. The REST value_template field should return 1 or 0 according to motion detection state, so the binary sensor will update accordingly. Glad it worked!
Iām using a Reolink RLC-820A and although the majority of the integration works, if I choose to see the live view (by clicking the Picture Glance Card), I just get the spinning wheel. Any suggestions please?
If I use VLC for example, I can view the sub view without an issue. How would I set to view the sub stream please?
Does anyone have a way to be able to cast these Reolink Cameras to a google nest hub display reliably and without any significant lag?
If you buffer the feed through HA there will always be the lag. It comes from the way things work under the hood. I donāt know how to explain it Iām details.
Use HA to ask Google to stream it directly from the camera. Add the camera to Google as well.
Streaming from Google Home directly is the worst. up to 15 second delay from live feed is atrocious. 1 - 2 seconds is acceptable. Has anyone had any luck using WebRTC?
Web rtc is the way to go for minimal lag
Have you got it working with Reolink cameras and a google nest display?
I finally succeeded in having binary sensors working for people and vehicle detection, with my AI cameras.
My configuration is 6 RLC-810A without NVR; each of those has some binary sensors associated (people and car detection) and they are all used by a custom integration named āalarmoā, so they can be used to trigger an alarm when it is armed. This means that you can get notifications only when the alarm is armed (so normally when you are away). [One of the most tedious thing about the reolink app is that you canāt really use notifications for outdoor cameras of you house, unless you enable/disable notification of all the camera every time you leave the house - if you keep them enabled all the time, you start receiving tons of notification when you are at home]
I havenāt been lucky with the [reolink_dev] integration, so after test I ended up with this working configuration (I share it in order to recap for the others):
binary_sensor:
- platform: rest
name: CAM1 - generic motion detection
resource: http://192.168.1.51/cgi-bin/api.cgi?cmd=GetMdState&rs=&user=admin&password=mySuperPassword
method: GET
value_template: '{{ value_json[0].value.state }}'
scan_interval: 2
device_class: motion
- platform: rest
name: CAM1 - person detection
resource: http://192.168.1.51/cgi-bin/api.cgi?cmd=GetAiState&rs=&user=admin&password=mySuperPassword
method: GET
value_template: "{{ value_json[0].value.people.alarm_state }}"
scan_interval: 2
device_class: motion
- platform: rest
name: CAM1 - car detection
resource: http://192.168.1.51/cgi-bin/api.cgi?cmd=GetAiState&rs=&user=admin&password=mySuperPassword
method: GET
value_template: "{{ value_json[0].value.vehicle.alarm_state }}"
scan_interval: 2
device_class: motion
The 3 binary sensors are:
- generic motion detect (I donāt use it)
- people detect
- car detect
You have to duplicate this entries for each of the camera you have, changing the IP properly.
NOTE: the fields in the JSON response has been renamed at some point by reolink engineers; be sure to be on the latest camera firmware (in my case: v3.0.0.494).
Now for the live view Iāll test Web RTC.