[Custom Component] Tapo: Cameras Control

Hello, is the Tapo C210 compatible with this integration?

Did you restart and do troubleshooting as described in GitHub - JurajNyiri/HomeAssistant-Tapo-Control: Control for Tapo cameras as a Home Assistant component ?

Nobody reported that yet, but most probably should be. Let us know when/if you try please.

I removed the whole integration, custom_component and added it again. This wasn’t successful. Is my firmware maybe to old?

Firmware is not affecting this.

  1. Install integration
  2. Restart
  3. Enable sound detection
  4. Restart
  5. Try now

If it still doesn’t work, make sure you do troubleshooting steps as linked above.

1 Like

I’ve been using this integration for a while now and it works great. One feature I miss though is the ability to do a 90-degree rotation by software. Due to how my camera is installed (baby room, up in a wall) the image needs a 90 degree rotation so the cradle shows horizontal. I looked at the ONVIF integration and it offers passing extra parameters to ffmpeg so this can be done, reference: Rotate a camera image 90 degrees - #4 by RobDYI

      extra_arguments: -vf "transpose=2"

Any chance that this custom component could include an extra configuration parameter in the GUI configuration workflow to allow us to pass arguments to ffmpeg?

1 Like

Yes! Please open a new feature request on github.

I really don’t know why but now it’s working. Thank you and sorry for bothering. Great Component. I really appreciate your work :slight_smile:

1 Like

Version 3.4.0 ↺

Description

This release adds ability to add extra arguments to ffmpeg. It allows you to for example rotate stream via software or do anything that you can do with libraries like ffmpeg or onvif on Home Assistant.

It also includes improvements to error messages and better information in the setup process to prevent user confusion with what data to input.

@ariel

3 Likes

Thanks @JurajNyiri for the fast response!! just tested and it works like a charm

@JurajNyiri I noticed that the ffmpeg argument is indeed used for the image displayed by picture-glance in the GUI, however when you click on the image and the stream pops up, the extra argument does not seem to be taking effect (in my case, there is no transpose), is it possible to pass the argument to both the basic image sequence fed to picture-glance and also the one that gets streamed to the browser when the cam image is clicked?

1 Like

It works the same way as ffmpeg or onvif. If you want video flipped you need to turn off stream in integration options or globally in config yaml.

Got it, makes sense, thanks. I guess I will live with the stream as it is given the massive cpu advantage. The overall dashboard looks much better now with the picture inverted though, thanks!

1 Like

I think they also changed something with Wifi modem. According to tapo webpage the C100 has max speed of 150 Mbps (802.11 n), but the new one C110 only 72.2Mbps (802.11n). C200/C210 the same. Maybe the 3MP camera causes some interference to the internal antenna?

BTW1 I think the TC60 and TC70 are made for some European company as “exclusivity”, because the have only CE certificate, no FCC.

BTW2 After some googling I was right:

The new Tapo TC60 and Tapo TC70 from TP-Link are similar to the existing Tapo C100 and Tapo C200 model that we’ve reviewed previously. However, these 2 new models are exclusive for Lazada and Shopee hence the difference in model name.
TP-Link Tapo Camera Review: Best affordable WiFi camera (TC60 TC70)

1 Like

This integration is amazing, however, when sending PTZ commands (or Privacy ON/OFF commands), I sometimes get an “error_code”: -64301

It happens maybe one out of 5 times the command is sent. Has it happened to anybody else?

It was happening to me, it is caused by camera being slow. What I did was put in a delay in script which is turning on/off privacy mode and setting ptz.

Hi all. Im trying to install this into my HA system via HACS and having all sorts of issues. It looks like the pip install of onvif-zeep-async is failing. I have tried to install it manually into my venv by running “python3 -m pip install onvif-zeep-async”, but this then fails when it tries to install lxml. It looks like lxml has to compile something during the install using gcc but this fails.

My pythen 3.8 install is manually installed from source, not via the package manager. I can see other people had to install python-dev, but that wouldn’t work. I have tried installing lxml from the package manager, but the venv doesn’t pick that up and it still tries to install the pip package which then fails.

Any help? Thanks

Thanks for the response! That’s how I’ve set it up and they still fail on me every other time. My sequence is:

When some arrives home:
-Cam1 PTZ point at ceiling
-Delay 2s
-Cam2 PTZ point at ceiling
-Delay 20 s (To give both cameras time to finish moving)
-Cam1 Privacy ON
-Delay 2s
-Cam2 Privacy ON

When home is empty:
-Cam1 Privacy OFF
-Delay 2s
-Cam2 Privacy OFF
-Delay 2s
-Cam1 PTZ point at room
-Delay 2s
-Cam2 PTZ point at room

Do you think I need bigger delays?

Also, do you guys know if I can catch that error and act on it? I’m working with scripts
Thanks!

Here is my setup, main scripts:

Alert:

service: script.turn_on
target:
  entity_id:
    - script.set_bedroom_camera_away
    - script.set_dining_room_camera_away
    - script.set_entry_room_camera_away
    - script.set_hallway_camera_away
    - script.set_living_room_camera_away
    - script.set_office_camera_away

Privacy:

service: script.turn_on
target:
  entity_id:
    - script.set_bedroom_camera_home
    - script.set_dining_room_camera_home
    - script.set_entry_room_camera_home
    - script.set_hallway_camera_home
    - script.set_living_room_camera_home
    - script.set_office_camera_home

Example of set camera away:

data:
  privacy_mode: 'off'
service: tapo_control.set_privacy_mode
entity_id: camera.bedroom_hd
service: tapo_control.ptz
data:
  preset: Room
entity_id: camera.bedroom_hd

Example of camera home mode:

data:
  preset: Privacy
service: tapo_control.ptz
entity_id: camera.bedroom_hd
delay: '00:00:10'
service: tapo_control.set_privacy_mode
data:
  privacy_mode: 'on'
entity_id: camera.bedroom_hd

This way cameras all execute actions at the same time and have been working correctly from what I can tell. The delay is there only for waiting for camera to finish turning.

Hello all

I can see the ffmpeg entity but its as unavailable

What is the input that I should insert?

ffmpeg:
stream:

binary_sensor:

  • platform: ffmpeg_noise
    name: ffmpeg_cam_hall
    input: rtsp://user:pass@localcameraIP:554/stream1
    peak: -50
    duration: 1
    reset: 10