eufy-security-client: [Bug]: bricked SoloCam S220 by setting video recording quality
Client version
2.9.1
Node version
v18.18.2
Operating System type
Docker
Operating system version
Debian GNU/Linux 12 (bookworm)
Describe the bug
Hi, yesterday I bricked my SoloCam S220 by setting the video recording quality via the corresponding “video_recording_quality” object. The initial value id “null” and setting the video recording quality to “Full HD (1080P)” works fine as well. When setting the value to “2K HD”, within the video recording quality menu no value is selected. The problem is that without any value being set, the camera does not record any events and the livestream does not work anymore being stuck in the “Playback is being prepared…” message. If you now remove the camera from the HomeBase or your router, because you don’t know the issue it’s not possible the reconnect the camera again! The following setup will fail during scanning the QR code which means the camera is total broken. Even resetting the camera by pressing the “SYN” button twice does not help and you have to hope for a warranty replacement.
To reproduce
----- Please, don’t remove the SoloCam S220 while reproducing the following steps -----
- go to the eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality state which initially is “null” and select “Full HD (1080P)” which works fine.
- go to the eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality state which now is set to “Full HD (1080P)” and select “2K HD”.
- Have a look at the video recording quality menu within the Eufy app and you will see that no recording quality is selected. At this state the camera can’t record any events and you can’t start a livestream.
Screenshots & Logfiles
-
Example is SoloCam S220 called “Terrasse”:
-
In the video settings pane the recording quality is set to “2K HD”:
-
Detailed look at the recording quality setting menu with selected “2K HD”:
-
When setting the “video_recording_quality” to “Full HD (1080P)” and afterwards setting to “2K HD”, the recording quality still is set to “2K HD”:
-
But when having a look at the recording quality setting menu, nothing is selected!
-
At the state where no recording quality is selected, the stream does not work anymore and the camera does not record any events:
This should be all relevant logfile lines:
2024-01-18 18:12:31.098 - silly: eusec.0 (27076) States user redis pmessage eusec.0.T8030P23233XXXXX.*/eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality:{"val":2,"ack":false,"ts":1705597951069,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1705597951069}
2024-01-18 18:12:31.099 - debug: eusec.0 (27076) [euSec.onStateChange] state eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality changed: 2 (ack = false)
2024-01-18 18:12:31.116 - debug: eusec.0 (27076) [Station.setVideoRecordingQuality] Station set video recording quality - sending command [{"stationSN":"T8030P23233XXXXX","deviceSN":"T8134P20233XXXXX","value":2}]
2024-01-18 18:12:31.117 - debug: eusec.0 (27076) [P2PClientProtocol.sendCommandWithStringPayload] sendCommandWithStringPayload: [{"p2pcommand":{"commandType":1700,"value":"{\"commandType\":1023,\"data\":{\"quality\":2}}","channel":2},"customData":{"property":{"name":"videoRecordingQuality","value":2}}}]
2024-01-18 18:12:33.590 - debug: eusec.0 (27076) [P2PClientProtocol.handleData] Handle DATA DATA - Result data for command received [{"stationSN":"T8030P23233XXXXX","message":{"sequence":18,"commandType":1700,"nestedCommandType":1023,"channel":2,"acknowledged":true,"retries":0,"returnCode":-133,"data":{"type":"Buffer","data":[209,0,0,18,88,90,89,72,164,6,48,0,0,0,1,0,2,1,0,0,148,101,228,156,185,70,253,210,143,57,32,74,127,25,196,129,160,235,20,108,96,30,57,141,163,241,5,38,121,42,47,138,182,228,57,76,91,94,84,90,231,120,244,240,15,10,174,151]},"customData":{"property":{"name":"videoRecordingQuality","value":2}}},"resultCodeName":"ERROR_PPCS_SUCCESSFUL","resultCode":0}]
2024-01-18 18:12:33.591 - debug: eusec.0 (27076) [Station.onCommandResponse] Station got p2p command response [{"station":"T8030P23233XXXXX","commandType":1023,"channel":2,"returnCodeName":"ERROR_PPCS_SUCCESSFUL","returnCode":0,"customData":{"property":{"name":"videoRecordingQuality","value":2}}}]
2024-01-18 18:12:33.667 - silly: eusec.0 (27076) States user redis pmessage eusec.0.T8030P23233XXXXX.*/eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality:{"val":2,"ack":true,"ts":1705597953662,"q":0,"from":"system.adapter.eusec.0","lc":1705597951069}
2024-01-18 18:12:33.670 - debug: eusec.0 (27076) [euSec.onStateChange] state eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality changed: 2 (ack = true) was already acknowledged, ignore it...
2024-01-18 18:12:54.162 - silly: eusec.0 (27076) States user redis pmessage eusec.0.T8030P23233XXXXX.*/eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality:{"val":3,"ack":false,"ts":1705597974159,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1705597974159}
2024-01-18 18:12:54.164 - debug: eusec.0 (27076) [euSec.onStateChange] state eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality changed: 3 (ack = false)
2024-01-18 18:12:54.168 - debug: eusec.0 (27076) [Station.setVideoRecordingQuality] Station set video recording quality - sending command [{"stationSN":"T8030P23233XXXXX","deviceSN":"T8134P20233XXXXX","value":3}]
2024-01-18 18:12:54.169 - debug: eusec.0 (27076) [P2PClientProtocol.sendCommandWithStringPayload] sendCommandWithStringPayload: [{"p2pcommand":{"commandType":1700,"value":"{\"commandType\":1023,\"data\":{\"quality\":3}}","channel":2},"customData":{"property":{"name":"videoRecordingQuality","value":3}}}]
2024-01-18 18:12:57.394 - debug: eusec.0 (27076) [P2PClientProtocol.handleData] Handle DATA DATA - Result data for command received [{"stationSN":"T8030P23233XXXXX","message":{"sequence":20,"commandType":1700,"nestedCommandType":1023,"channel":2,"acknowledged":true,"retries":0,"returnCode":-133,"data":{"type":"Buffer","data":[209,0,0,20,88,90,89,72,164,6,48,0,0,0,1,0,2,1,0,0,148,101,228,156,185,70,253,210,143,57,32,74,127,25,196,129,160,235,20,108,96,30,57,141,163,241,5,38,121,42,47,138,240,13,135,43,36,35,247,123,108,43,102,209,31,168,253,91]},"customData":{"property":{"name":"videoRecordingQuality","value":3}}},"resultCodeName":"ERROR_PPCS_SUCCESSFUL","resultCode":0}]
2024-01-18 18:12:57.395 - debug: eusec.0 (27076) [Station.onCommandResponse] Station got p2p command response [{"station":"T8030P23233XXXXX","commandType":1023,"channel":2,"returnCodeName":"ERROR_PPCS_SUCCESSFUL","returnCode":0,"customData":{"property":{"name":"videoRecordingQuality","value":3}}}]
2024-01-18 18:12:57.628 - silly: eusec.0 (27076) States user redis pmessage eusec.0.T8030P23233XXXXX.*/eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality:{"val":3,"ack":true,"ts":1705597977625,"q":0,"from":"system.adapter.eusec.0","lc":1705597974159}
2024-01-18 18:12:57.630 - debug: eusec.0 (27076) [euSec.onStateChange] state eusec.0.T8030P23233XXXXX.cameras.T8134P20233XXXXX.video_recording_quality changed: 3 (ack = true) was already acknowledged, ignore it...
Additional context
I think the Problem that the states values (2 and 3) are incorrect.
About this issue
- Original URL
- State: closed
- Created 5 months ago
- Comments: 15 (8 by maintainers)
Commits related to this issue
- Fixed issue #452 — committed to bropat/eufy-security-client by bropat 5 months ago
I have now implemented and successfully tested everything. This issue will be fixed in the next version.
Many thanks for sharing the devices. You can now remove the share.
Short update:
I have now analysed everything and found the differences between the standalone device and the device linked to Homebase. I should have everything sorted out by tomorrow evening 😉
Hi @bropat, I shared the two devices with you. Device_1 is connected to the HomeBase 3. Device_2 directly is connected to the WiFi. I hope access until thursday morning gives you enough time to have a look at the issue. Thanks a lot in advance!
I would have time tomorrow evening
If I can share a functional camera with you, please let my know and I will assist.
The camera has system version 3.2.6.8.
Yes, I have saved the other three SoloCam S220 by reconfiguring the recording quality directly via the app. I disconnected the fourth, now broken S220 from the HomeBase before reconfiguring the recording quality setting because I haven’t known where the issue comes from.