Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eufy cameras no longer work with 1.9.7 (mse: unsupported scheme) #1453

Open
z-master42 opened this issue Nov 12, 2024 · 36 comments
Open

Eufy cameras no longer work with 1.9.7 (mse: unsupported scheme) #1453

z-master42 opened this issue Nov 12, 2024 · 36 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@z-master42
Copy link

After changing from 1.9.6 to 1.9.7 (Docker), the streams of my two Eufy cameras no longer work.
They are a T8410 and a T8210.
The stream comes via the eufy-security-ws addon in Home Assistant.

The message mse: unsupported scheme is displayed in the video stream.

When I switch back to 1.9.6, everything works again.

Do I have to make any adjustments in the config? This was previously generated automatically.

@misc2000
Copy link

misc2000 commented Nov 12, 2024

I am right now working to get my Eufy doorbell T8210 cam that is working good in HA card view (over webrtc-camera) also forwarded to HomeKit.
during I did search here how to configure it in go2rtc for HomeKit I did notice the update to 1.9.7 and did update.
Now my eufy cam stops working also in HA itself. Not 100% sure if the root case is the update but it looks like.
Before the cam live view was working in HA card view over webrtc-camera always, and my main problem was a very slow streaming video in Apple Home app by forwarding the cam over the HomeKit integration of HA.
Now I understand that i should do it direct in go2rtc if I see it right?
But first I need to sort out if the update break my setup or not ???
And how can I go a version back to the old version of go2rtc in HA to verify?

@misc2000
Copy link

misc2000 commented Nov 12, 2024

Update: still not working any more at all.
this is my config that was generated during installation with the eufy addons and webrtc-camera that worked good before the update.

streams:
  T8210P812419166F:
    - T8210P812419166F

And I see now this warning in the log:
23:30:05,783 trace [streams] dial cons=0 prod=0 error=streams: unsupported scheme: T8210P812419166F
23:30:05,782 trace [streams] check cons=0 media=video, sendonly, ANY
23:30:01,904 warn [rtsp] error=streams: streams: unsupported scheme: T8210P812419166F stream=T8210P812419166F

Can someone guide me how to downgrade to verify?

@AlexxIT AlexxIT added the question Further information is requested label Nov 13, 2024
@AlexxIT
Copy link
Owner

AlexxIT commented Nov 13, 2024

Well. The T8210P812419166F scheme is definitely not supported. I'm not familiar with the eufy addon and don't know how it works. And I don't know why it worked before.

@z-master42
Copy link
Author

I think the scheme is made up of model number and serial number.

The setup consists of the eufy-security-ws addon, the Eufy Security Integration, the WebRTC Camera Integration and Go2RTC (in some variant). The use of Go2RTC is actually included in the Eufy Security Integration documentation.

Stream provider is P2P and the stream URL is an RTSP.

@oig123
Copy link

oig123 commented Nov 13, 2024

I have the same problem.

@ahmed-elgamil
Copy link

Same problem here

@foddy-foo
Copy link

foddy-foo commented Nov 14, 2024

I see the same problem. My Eufy doorbell stream no longer works in Home Assistant when using 1.9.7
Rolling back to 1.9.6 makes it work again.

This is what I see in config

streams:
  T8210P6421501681:
    - T8210P6421501681

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

And what you can see in config for old version?

@foddy-foo
Copy link

And what you can see in config for old version?

That is the config as seen once I rolled back to 1.9.6

@z-master42
Copy link
Author

And what you can see in config for old version?

The config is the same for both versions.

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

If someone is a developer - it might be helpful to know which commit broke. Just need to build a binary for each commit between 1.9.6 and 1.9.7. Should not be a difficult task, even if you don't know golang.

@z-master42
Copy link
Author

You mean just try out nine different builds?

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

Yes. Just git checkout, go run. Multiple times

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

OK. Looks like we know the problem #1458
All incoming sources broken.

@AlexxIT AlexxIT added bug Something isn't working and removed question Further information is requested labels Nov 14, 2024
@AlexxIT AlexxIT self-assigned this Nov 14, 2024
@misc2000
Copy link

Sounds great that you found the source of the problem.

Can someone please give me some how level instructions how to downgrade to 1.9.6 again until the problem is solved?

I am using a Pi4 with standard HAOS Image and did install all over the HA add-on store/hasc as explained in the eufy cam how's to's for HA.
I think go2rtc was installed from webrtc-camera when I installed it.

Could it be a try to uninstall webrtc-camera and reinstall it in the hope it will install again the older version from go2rtc?

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

Fixed in latest master version

@AlexxIT AlexxIT added this to the v1.9.8 milestone Nov 14, 2024
@AlexxIT
Copy link
Owner

AlexxIT commented Nov 14, 2024

WebRTC camera integration has old go2rtc version - 1.9.4

@foddy-foo
Copy link

Sounds great that you found the source of the problem.

Can someone please give me some how level instructions how to downgrade to 1.9.6 again until the problem is solved?

I am using a Pi4 with standard HAOS Image and did install all over the HA add-on store/hasc as explained in the eufy cam how's to's for HA. I think go2rtc was installed from webrtc-camera when I installed it.

Could it be a try to uninstall webrtc-camera and reinstall it in the hope it will install again the older version from go2rtc?

Personally I went to Settings, System then Backups within Home Assistant and looked through the recent backups listed. I saw one entry for go2rtc from the day before when the add-on got automatically updated. I selected that and restored (it only restores that one item not your whole HA). This took about 10 seconds to complete. I then restarted the whole Home Assistant and it fixed the problem. I've now turned off Auto-Update for that particular add-on. Hope this helps.

@z-master42
Copy link
Author

Fixed in latest master version

Tried it out, it works.

Many thanks for the quick fix.

@misc2000
Copy link

misc2000 commented Nov 14, 2024

Also for me its working again.

Now because I have some eufy users reading this a quick question:
I want to forward the video stream of the eufy doorbell with 2-way audio to HomeKit.
currently I have good and stable video with the direct HomeKit export from go2rtc. But a kind of slow-motion video from the HomeKit camera from the HA own HomeKit integration.
This are my config:

homekit.yaml:
- name: Haustürklingel
port: 56324
mode: accessory
filter:
include_entities:
- camera.haustur
entity_config:
camera.haustur:
linked_doorbell_sensor: binary_sensor.haustur_ringing
linked_motion_sensor: binary_sensor.haustur_motion_detected

go2rtc.yaml
streams:
T8210P812419166F:
- T8210P812419166F
homekit:
T8210P812419166F:
pin: 33322333
pairings:

...
How should the stream source: Tag look like in the HA HomeKit.yaml and do I need some more stream config in the go2rtc side to reach my goal?
Or can someone with a eufy doorbell cam share the relevant config parts?
Thanks

@saschawj
Copy link

saschawj commented Nov 14, 2024

For AlexxIT.
Seen the same issue for a bunch of cameras. Good that you potentially found the source of this, however I would like to add a portion of the log here, in case it helps:

END of File warning

12:31:53.503 WRN github.com/AlexxIT/go2rtc/internal/streams/producer.go:170 > error=EOF url=http://192.168.XX.XXX:8123/api/camera_proxy_stream/camera.front_door?token=9eaaXXXXeead096c349d5e38ba3984a1a23e2aecc9b3d58be1902824e03b2
12:31:53.539 WRN github.com/AlexxIT/go2rtc/internal/streams/producer.go:170 > error=EOF url=http://192.168.XX.XXX:8123/api/camera_proxy_stream/camera.ingarage?token=a3e0XXXX8e20e2fb5d77eb7c8fd5bd8a82e8d52d404aa66bcc66c7346c3c9cd9

New Stream error Warning with unsupported scheme

12:32:31.493 INF [streams] create new stream url=rtsp://127.0.0.1:8554/T8423TXXXXXXXXXX

As above unsupported scheme error

12:35:21.542 WRN [rtsp] error="streams: streams: unsupported scheme: T8170TXXXXXXXXXX" stream=T8170TXXXXXXXXXX
12:39:16.282 WRN [rtsp] error="streams: streams: unsupported scheme: T8423TXXXXXXXXXX" stream=T8423TXXXXXXXXXX

I have a whole bunch of Eufy cameras and as stated none are displaying any more.

Eufy Floodlight Cam S330 (Model: T8423)
Eufy Solocam S340: (Model: T8170)
Eufy Floodlight Cam E340: (Model: T8425)
Eufy Garage-Control Cam: (Model: T8452)

Should you need any tests done, please let me know.

@oig123
Copy link

oig123 commented Nov 15, 2024

Fixed in latest master version

thanks

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 15, 2024

Unsupported scheme is correct error. Eufy integration creates an invalid config. This issue should be added to the eufy project.

@z-master42
Copy link
Author

What should a valid configuration/schema look like? Use of entity ID?

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 17, 2024

This is incoming stream. It should have empty source.

streams:
  T8210P812419166F:

@Induktiv
Copy link

Hallo zusammen, ich bin erst seit ein paar Tagen im Thema HA unterwegs und hatte vorher bereits Eufy-Kameras. Diese wollte ich nun einbinden.
Ich hatte vorher auch diesen Fehler.
image

Habe dann die Masterversion heruntergeladen und installiert, leider besteht der Fehler weiterhin.
Ich habe eine Eufy S2300 (3C) Kamera.

image
Ist das so richtig, dass hier noch die 1.9.7 trotz Master steht?

Für Hilfe wäre ich sehr Dankbar!

@z-master42
Copy link
Author

Yes, that's right that it still says 1.9.7 and here please English, there are not only Germans on GitHub 😉

@Induktiv
Copy link

Okay, thank you! Do you have any idea what might be causing my cameras to not display a live image despite the new master version? Normally, the streams should be running in go2rtc, right? Do I need to start them before the stream works in the go2rtc user interface? I've tried both, but it’s not working.
Do I need to reinstall WebRTC after installing the new go2rtc master version?

Thanks :)

@z-master42
Copy link
Author

It depends on your camera whether you have to start its stream or whether it provides a permanent stream.

Furthermore, with the current master version, the process is exactly the same as before with 1.9.6.

@fuatakgun
Copy link

fuatakgun commented Nov 23, 2024

hi,

the current implementation of API call is like this, I am using the variable with name, because initially I could not find way to add an empty source using API. This had been working (until now) :)

Input

        parameters = {
            "name": str(self.camera.serial_no),
            "src": str(self.camera.serial_no)
        }

Output

streams:
        T84A1P10231228E1:
          - T84A1P10231228E1

I tried sending empty source parameter or not sending the source parameter at all, but no success adding it via API. could it be that API is blocking it?

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 24, 2024

@fuatakgun you right. Creating stream with empty sources via API not supported right now. I'll think about improving that.

@fuatakgun
Copy link

Any suggestion to make it possible other than manually writing to streams?

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 24, 2024

You can continue to use the current API. There is nothing wrong there, except for the error in the log about unsupported source.

@fuatakgun
Copy link

@AlexxIT ,when 1.9.8 version is released, eufy security integration can continue using this non-sense source parameter just to set the incoming stream and I can continue publishing to it, is that right?

parameters = {
            "name": str(self.camera.serial_no),
            "src": str(self.camera.serial_no)
        }

@AlexxIT
Copy link
Owner

AlexxIT commented Nov 25, 2024

In fact, it's just a useless source for the stream. go2rtc will skip it every time it sees it. The only problem is the logging of the error message.

I haven't figured out how to redesign the API yet.

@fuatakgun
Copy link

Yes, tested with the master version and all is working fine. Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

9 participants