Thanks to visit codestin.com
Credit goes to github.com

Skip to content

hsakoh/ha-switchbot-kvs-camera

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SwitchBot KVS Camera Custom Component for Home Assistant

Custom Component for Integrating SwitchBot Pan/Tilt Cam Plus with Home Assistant

Supported devices

Device(ProductPage) Support
Outdoor Spotlight Cam 1080P [JP] -
Outdoor Spotlight Cam 2K(3MP) [JP] -
Pan/Tilt Cam [JP] -
Pan/Tilt Cam 2K(3MP) [JP] -
Pan/Tilt Cam Plus 2K(3MP) [JP]
Pan/Tilt Cam Plus 3K(5MP) [JP]
Indoor Cam [JP] -
Video Doorbell [JP]

Tip

If you want to integrate unsupported devices into Home Assistant:

  1. These devices use TuyaSDK.
  2. Remove the camera from the SwitchBot app.
  3. Register the camera in the Smart Life app.
  4. You can use the Tuya integration.

Important

The following support documentation has been published.

How to View My SwitchBot Camera's Videos via Home Assistant? – SwitchBot Help Center [JP]

It appears that an official feature enabling operation as an ONVIF/RTSP camera will be offered in the future.

(As of now—June 10, 2025—it was not yet configurable.)

Supported features for Video Doorbell

Feature Description
Camera Stream Displays the camera Stream

Currently, Audio is not supported. This is due to two reasons:

  • Specifying an audio codec other than AAC causes the camera to respond with a broken SDP.
  • go2rtc (pion?) does not support the AAC codec in WebRTC.

Supported features for Pan/Tilt Cam Plus

Feature Description
Camera Stream Displays the camera Stream
Pan/Tilt Currently, pressing the button once behaves the same as tapping in the smartphone app
Pan/Tilt Calibration
Motion Tracking Sets motion tracking
Night Vision Sets night vision
Night Full Color Sets night full color
Privacy Mode Sets privacy mode
Time Watermark Sets the display of date, time, and logo
Anti Flicker Select anti-flicker   mode
Preset --
Create Preset Saves the current Pan/Tilt position as a preset with a name
Remove Preset Removes the selected preset from the dropdown
Move To Preset Moves to the selected preset from the dropdown
Recording --
Local Recording Sets recording to the SD card
Recording Mode Select recording mode
Mute Recording Sets whether to record audio during recording
Configuration --
Auto Upgrade Sets whether to perform automatic firmware updates
Intercom Mode Sets the direction of communication
Volume Level Sets the communication volume
Cruise Mode Sets cruise mode
Flip View Sets the inversion of the video
Motion Detection Sets motion detection
Sensitivity Level Sets the sensitivity level of motion detection
Detect Human Sets human detection for motion detection
Indicator Light Sets the indicator light
Diagnostics --
IP Address Displays the camera's IP address
WiFi Signal Displays the WiFi signal strength
WiFi Name Displays the SSID of the connected WiFi
SdCard Free(GB) Displays the free space on the SD card
SdCard Total(GB) Displays the total space of the SD card
SdCard Used(GB) Displays the used space on the SD card

Currently, Audio is not supported. This is due to two reasons:

  • Specifying an audio codec other than AAC causes the camera to respond with a broken SDP.
  • go2rtc (pion?) does not support the AAC codec in WebRTC.

The following features are not currently implemented. Pull requests are welcome:

  • Triggering alerts
  • Enumerating events
  • Viewing event and recorded footage
  • Setting detection time zones, detection areas, and detection alerts for motion detection
  • Setting preset points
  • Cloud storage-related operations (requires a paid subscription)

Installation

Requirement

Pan/Tilt Cam Plus

  • Ensure that the version of Home Assistant Core is 2025.4.1 or later.
    • This is because the go2rtc integrated into Home Assistant Core needs to be version v1.9.9 or later.
    • If you are using a self-hosted go2rtc with Home Assistant, update the self-hosted go2rtc version to v1.9.9 or later.
      • Self-hosted refers to configuring go2rtc/url as described on here.

Video Doorbell

  • Ensure that the version of Home Assistant Core is 2025.11.0 or later.
    • This is because the go2rtc integrated into Home Assistant Core needs to be version v1.9.11 or later.
    • If you are using a self-hosted go2rtc with Home Assistant, update the self-hosted go2rtc version to v1.9.11 or later.
      • Self-hosted refers to configuring go2rtc/url as described on here.

With HACS

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Manual

  1. Copy the switchbot_camera directory from custom_components in this repository and place inside your Home Assistant's custom_components directory.
  2. Restart Home Assistant
  3. Follow the instructions in the Setup section

Setup

Open your Home Assistant instance and start setting up a new integration.

Configuration

  • Configure the integration via UI Config Flow.

    • Enter your SwitchBot account ID and password.
  • Optionally, you can configure the following settings:

    Option Description
    Camera Resolution Sets the camera resolution. You can choose between SD and HD.
    Snapshot Enable Specifies whether to generate snapshots for display on cards, etc.
    However, frequent snapshot retrieval may affect connection stability as it also establishes a WebRTC connection.
    Snapshot Cache Expires Regardless of the card update frequency, the component internally caches snapshots and responds.
    Specify the cache duration in seconds.

image

About

Custom Component for Integrating SwitchBot Pan/Tilt Cam Plus with Home Assistant

Topics

Resources

License

Stars

Watchers

Forks

Languages