Reolink POE IP Camera Setup

You’ll likely have to provide some logs and a configuration for anyone to troubleshoot.
My guess would be a configuration error. Maybe yaml indent problem, maybe a bad password, something.

# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Uncomment this if you are using SSL/TLS, running in Docker container, etc.
# http:
#   base_url: example.duckdns.org:8123

# Text to speech
tts:
  - platform: google_translate
  
homekit:

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml

hacs:
  token: XXXXXXXXXXXXXXXXXXXXXX
  
camera:
  - platform: reolink_dev
    host: 192.168.1.65
    username: admin
    password: 123456
    name: Camara1
    stream: main
    protocol: rtsp
    channel: 0
    scan_interval: 5
  - platform: onvif
    name: camera2
    host: 192.168.1.65
    username: admin
    password: 123456
    port: 8000
  - platform: ffmpeg
    name: Entrada
    input: -rtsp_transport tcp -i rtsp://user:[email protected]/Streaming/Channels/101
  - platform: generic
    name: camera3
    still_image_url: "https://192.168.1.65/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456"
    stream_source: "rtsp://admin:[email protected]:554/h264Preview_01_main"
  - platform: generic
    name: camera4
    still_image_url: "https://192.168.1.65/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456"
    stream_source: "rtmp://192.168.1.65:1935/bcs/channel0_main.bcs?token=[TOKEN]&channel=0&stream=0"
  - platform: generic
    name: camera5
    still_image_url: "https://192.168.1.65/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456"
    stream_source: "rtmp://192.168.1.65/bcs/channel0_main.bcs?channel=0&stream=0&user=admin&password=123456"
  - platform: generic
    name: camera6
    still_image_url: "https://192.168.1.65/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456"
    stream_source: "rtmp://192.168.1.65/vod/Rec_20160707_040638_411_M.mp4?&channel=0&stream= 0&user=admin&password=123456"

this is my entire cofig file…
all this cameras configs are for the same camera, add all i see online to see if any works but no…

which camera model?

Reolink Rlc-420 5mp

Ok, I believe you have your config stream URL wrong.
You can use either FFMPEG or generic platforms

stream_source: rtsp://user:[email protected]:554/h264Preview_01_main

EDIT:
Nope, I’m wrong you have an entry like this. Anything in the homeassistant.log?

2020-05-04 14:55:02 ERROR (stream_worker) [libav.tcp] Port missing in uri
2020-05-04 14:55:05 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable
2020-05-04 14:55:30 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable
2020-05-04 14:55:33 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable
2020-05-04 14:55:35 WARNING (Poll) [pyShelly] Error, 401 Unauthorized
2020-05-04 14:55:46 WARNING (Thread-42) [pyShelly] Error, 401 Unauthorized
2020-05-04 14:55:50 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable

I have this errors.
I belive the problem is the HA cant connect to the camera because the config is right or anyone could be right.

I would remove all other settings leaving only this (note I remove the quotes)

  - platform: generic
    name: camera3
    still_image_url: "https://192.168.1.65/cgi-bin/api.cgi?cmd=Snap&channel=0&rs=wuuPhkmUCeI9WG7C&user=admin&password=123456"
    stream_source: rtsp://admin:[email protected]:554/h264Preview_01_main

Then see if that error persists. That error looks it’s associated with this config where you didn’t include :554 on your tcp setup:

  - platform: ffmpeg
    name: Entrada
    input: -rtsp_transport tcp -i rtsp://user:[email protected]/Streaming/Channels/101

with the first config show me this errors

2020-05-04 18:11:15 WARNING (CoAP) [pyShelly] Error, 401 Unauthorized
2020-05-04 18:11:16 WARNING (Thread-31) [pyShelly] Error, 401 Unauthorized
2020-05-04 18:11:25 ERROR (MainThread) [homeassistant.components.generic.camera] Error getting new camera image from camera3: Cannot connect to host 192.168.1.65:443 ssl:None [Connect call failed ('192.168.1.65', 443)]
2020-05-04 18:11:35 ERROR (MainThread) [homeassistant.components.generic.camera] Error getting new camera image from camera3: Cannot connect to host 192.168.1.65:443 ssl:None [Connect call failed ('192.168.1.65', 443)]
2020-05-04 18:11:43 ERROR (MainThread) [homeassistant.components.generic.camera] Error getting new camera image from camera3: Cannot connect to host 192.168.1.65:443 ssl:None [Connect call failed ('192.168.1.65', 443)]
2020-05-04 18:11:46 ERROR (MainThread) [homeassistant.components.generic.camera] Error getting new camera image from camera3: Cannot connect to host 192.168.1.65:443 ssl:None [Connect call failed ('192.168.1.65', 443)]
2020-05-04 18:11:49 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable
2020-05-04 18:11:57 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable
2020-05-04 18:12:00 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable

with the second config have this errors

2020-05-04 18:17:28 ERROR (stream_worker) [libav.tcp] Connection to tcp://192.168.1.65:554?timeout=5000000 failed: Host is unreachable

if i ping the camera

Pinging 192.168.1.65 with 32 bytes of data:
Reply from 192.168.1.65: bytes=32 time<1ms TTL=64
Reply from 192.168.1.65: bytes=32 time=1ms TTL=64
Reply from 192.168.1.65: bytes=32 time=1ms TTL=64
Reply from 192.168.1.65: bytes=32 time=1ms TTL=64

Ping statistics for 192.168.1.65:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 1ms, Average = 0ms

if i use this link in VLC takes 5 seconds and open the camera image.

rtsp://admin:[email protected]:554/h264Preview_01_main

I haven’t been able to get the still_image URL publicized by Reolink to work, which looks like thats the port :443 failure. That hasn’t stopped the media stream from working for me.

It looks very much like you’ve got the wrong credentials to me. Beyond that I’m outta ideas, sorry.

But on vlc the links works so the credentials are correct.

That’s an excellent point. I haven’t a clue.

I belive its time to forget homeassistant

I have a RLC-420 5MP working with home assistant using a custom component for reolink LINK. Easily installed and updated with HACS.

I have that installed
Same error cant reach the camera.
Can you help me?

Test on my android TV install ip cam viewer and select onvif camera both cameras work

HI you say installed and updated with HACS, but I don’t see it in the HACS integrations section, do I need to add a custom repository? if so what is it and how do I do it? Thanks!!

Have just set up an RLC-520 with the Reolink addon, and i was just wondering what sort of lag you guys are getting.

When i browse to the riolink web interface there is about a 2 second lag, when viewing through home assistant its more like a 10-15 second lag, is that about what you are getting? Haven’t tried dropping any of the quality setting on the camera, yet!

I’m running HA on a Raspberry Pi 4 B 4GB RAM.

Thanks!

From HACS main page, naviagte to settings, and where it says “add custom repository” put “https://github.com/fwestenberg/reolink

get this error with that plugin

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 936, in _wrap_create_connection
    return await self._loop.create_connection(*args, **kwargs)  # type: ignore  # noqa
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 962, in create_connection
    raise exceptions[0]
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 949, in create_connection
    await self.sock_connect(sock, address)
  File "/usr/local/lib/python3.7/asyncio/selector_events.py", line 473, in sock_connect
    return await fut
  File "/usr/local/lib/python3.7/asyncio/selector_events.py", line 503, in _sock_connect_cb
    raise OSError(err, f'Connect call failed {address}')
OSError: [Errno 113] Connect call failed ('192.168.1.65', 80)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 178, in _async_setup_platform
    await asyncio.wait_for(asyncio.shield(task), SLOW_SETUP_MAX_WAIT)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 442, in wait_for
    return fut.result()
  File "/config/custom_components/reolink_dev/camera.py", line 66, in async_setup_platform
    await session.login(username, password)
  File "/config/custom_components/reolink_dev/ReolinkPyPi/camera.py", line 175, in login
    response = await self.send(body, param)
  File "/config/custom_components/reolink_dev/ReolinkPyPi/camera.py", line 290, in send
    async with session.post(url=self._url, json=body, params=param) as response:
  File "/usr/local/lib/python3.7/site-packages/aiohttp/client.py", line 1012, in __aenter__
    self._resp = await self._coro
  File "/usr/local/lib/python3.7/site-packages/aiohttp/client.py", line 483, in _request
    timeout=real_timeout
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 523, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 859, in _create_connection
    req, traces, timeout)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 1004, in _create_direct_connection
    raise last_exc
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 986, in _create_direct_connection
    req=req, client_error=client_error)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/connector.py", line 943, in _wrap_create_connection
    raise client_error(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host 192.168.1.65:80 ssl:None [Connect call failed ('192.168.1.65', 80)]

Hi, I’m considering buying Reolink, RLC-410-5MP is it capable of running on HA with WiFi? Thank you all