38.8 HA Reolink Argus 2E
20220826
The Reolink Argus 2E is a battery and wifi (hence wireless) security camera which with it’s solar panel is a simple installation with no wiring and no maintenance of the battery. Cost is about AUD110 from Amazon (camera and solar panel) plus AUD22 for a 128GB SD card.
After USB charging for an hour or so the battery was full charge (with an embedded LED just above the USB port on the camera going from red to green). The SD card slot of the power switch are accessed through a weather protected slot on the side of the camera. A 128GB SD card was inserted and the camera switched on.
Installing the Reolink Android app allowed it to be configured on the local guest wifi network and the live feed to be viewed and the camera settings to be managed. There is no desktop app for Linux unfortunately.
The reolink_dev github repository supports non-battery Reolink cameras but the Argus 2E does not have ONVIF or RSTP or any other useful protocol. It uses it’s own proprietary Baichuan protocol. Some clever reverse engineering is needed to connect to it on Linux.
That clever engineering starts with neolink on github which is a program that can interpret the Baichuan protocol to forward an RSTP video stream from the camera. This can then be integrated into Home Assistant.
wajig install \
libgstrtspserver-1.0-0 libgstreamer1.0-0 libgstreamer-plugins-bad1.0-0 \
gstreamer1.0-plugins-good gstreamer1.0-plugins-bad
wget https://nightly.link/thirtythreeforty/neolink/workflows/build/master/release-ubuntu-18.04.zip
unzip release-ubuntu-18.04.zip
wget https://raw.githubusercontent.com/thirtythreeforty/neolink/master/sample_config.toml
mv sample_config.toml neolink.toml
edit neolink.toml
The configuration for the camera in neolink.toml
will use the
password provided when setting up the camera (with default username
admin) and the UID is available under the camera’s QR code or
through the Reolink app. The configuration might be something like:
[[cameras]]
name = "frontdoor"
username = "admin"
password = "kjh&%j&l)hHhHx2@klaB"
uid = "95270005T4XZN6E4"
To test that the connection to the camera is working:
You should be greeted with:
[2022-08-26T00:40:06Z INFO neolink] Neolink cab43d0b0946e3669a49146ee2db96076099e15f release
[2022-08-26T00:40:06Z INFO neolink::utils] aether: Connecting to camera at UID: 95270005T4XZN6E4
[2022-08-26T00:40:07Z INFO neolink::utils] aether: Logging in
[2022-08-26T00:40:08Z INFO neolink::utils] aether: Connected and logged in
Check the camera to ensure the status light is now off. Then turn it back on:
$ ./neolink status-light aether on --config=neolink.toml
[2022-08-26T00:41:02Z INFO neolink] Neolink cab43d0b0946e3669a49146ee2db96076099e15f release
[2022-08-26T00:41:02Z INFO neolink::utils] aether: Connecting to camera at UID: 95270005T4XZN6E4
[2022-08-26T00:41:02Z INFO neolink::utils] aether: Logging in
[2022-08-26T00:41:03Z INFO neolink::utils] aether: Connected and logged in
Your donation will support ongoing availability and give you access to the PDF version of this book. Desktop Survival Guides include Data Science, GNU/Linux, and MLHub. Books available on Amazon include Data Mining with Rattle and Essentials of Data Science. Popular open source software includes rattle, wajig, and mlhub. Hosted by Togaware, a pioneer of free and open source software since 1984. Copyright © 1995-2022 Graham.Williams@togaware.com Creative Commons Attribution-ShareAlike 4.0