
* 🔥 Removes octopress.js * 🔥 Removes use of root_url var * 🔥 Removes Octopress generator reference from feed * 🔥 Removes delicious support * 🔥 Removes support for Pinboard * 🔥 Removes support for Disqus * 🔥 Removes support for Google Plus * ↩️ Migrate custom after_footer to default template * ↩️ Migrate custom footer to default template * ↩️ Migrate custom header to default template * 🔥 Removes unused template files * 🚀 Places time to read directly in post template * 🚀 Removes unneeded capture from archive_post.html template * 🔥 🚀 Removes unused, but heaving sorting call in component page * 🚀 Merged javascripts into a single file * 🔥 Removes more uses of root_url * 🚀 Removal of unneeded captures from head * 🔥 🚀 Removal of expensive liquid HTML compressor * 🔥 Removes unneeded templates * 🚀 Replaces kramdown with GitHub's CommonMark 🚀 * 💄 Adds Prism code syntax highlighting * ✨ Adds support for redirect in Netlify * ↩️ 🔥 Let Netlify handle all developer doc redirects * ✏️ Fixes typo in redirects file: Netify -> Netlify * 🔥 Removes unused .themes folder * 🔥 Removes unused aside.html template * 🔥 Removes Disqus config leftover * 🔥 Removes rouge highlighter config * 🔥 Removes Octopress 🎉 * 💄 Adjust code block font size and adds soft wraps * 💄 Adds styling for inline code blocks * 💄 Improve styling of note/warning/info boxes + div support * 🔨 Rewrites all note/warning/info boxes
4.1 KiB
title, description, logo, ha_category, ha_release, ha_iot_class, redirect_from
title | description | logo | ha_category | ha_release | ha_iot_class | redirect_from | ||
---|---|---|---|---|---|---|---|---|
Yi Home Camera | Instructions on how to integrate a video feed (via FFmpeg) as a camera within Home Assistant. | yi.png |
|
0.56 | Local Polling |
|
The yi
camera platform allows you to utilize Yi Home Cameras within Home Assistant. Specifically, this platform supports the line of Yi Home Cameras that are based on the Hi3518e Chipset. This includes:
- Yi Home 17CN / 27US / 47US
- Yi 1080p Home
- Yi Dome
- Yi 1080p Dome
To successfully implement this platform, the Home Assistant host should be capable of multiple simultaneous reads. For every concurrent Home Assistant user, a connection will be made to the camera every 10 seconds. This should normally not be a problem.
Preparing the Device
Installing Alternative Firmware
In order to integrate the camera with Home Assistant, it is necessary to install a custom firmware on the device. Instructions for doing so can be found via the yi-hack-v3 GitHub project.
Once installed, please ensure that you have enabled FTP and Telnet on your device.
Currently, version 0.1.4-beta2 of the custom firmware is the highest supported without having to make additional modifications. Firmwares higher than this version use Pure-FTPd, which has a bug that prevents FFmpeg from correctly rendering video files. To use higher firmware versions you must also follow this workaround to revert back to ftpd.
Some alternative Yi firmwares enable an experimental RTSP server, which will allow you to connect to your camera via other Home Assistant camera platforms. However, this RTSP server disables the ability to use the supremely-useful Yi Home app. In order to maintain both Home Assistant compatibility and the native app, this platform retrieves videos via FTP.
Changing the FTP Password
Once the custom firmware is installed, a password must be added to the FTP server. To do so:
- Telnet into your camera:
telnet <IP ADDRESS>
. - Enter
root
as the username and<blank>
as the password. - Type
passwd
and hit<Enter>
. - Enter your new password twice.
- Log out of Telnet.
Configuring the Platform
To enable the platform, add the following lines to yourconfiguration.yaml
file:
camera:
- platform: yi
name: Camera
host: '192.168.1.100'
password: my_password_123
{% configuration %}
name:
description: A human-friendly name for the camera.
required: true
type: string
host:
description: The IP address or hostname of the camera.
required: true
type: string
password:
description: The password for the FTP server running on the camera. Can be any string as the current firmware doesn't allow setting FTP passwords.
required: true
type: string
path:
description: The path to the raw MP4 files.
required: false
type: string
default: /media/mmcblk0p1/record
username:
description: The user that can access the FTP server.
required: false
type: string
default: root
ffmpeg_arguments:
description: Extra options to pass to ffmpeg
(e.g., image quality or video filter options).
required: false
type: string
{% endconfiguration %}
Image quality
Any option supported by ffmpeg
camera can be utilized via the ffmpeg_arguments
configuration parameter.
One particularly useful adjustment deals with video size. Since Yi videos are fairly large (especially on the 1080p cameras), the following configuration will bring them down to a manageable size:
camera:
- platform: yi
name: My Camera
host: '192.168.1.100'
password: my_password_123
path: /home/camera/feed
ffmpeg_arguments: '-vf scale=800:450'