Device info
- Camera: T8170 (SoloCam S340),
device_type: 48 (OUTDOOR_PT_CAMERA)
- Station: T8030 (HomeBase 3), firmware 3.8.2.8
- eufy-security-client: v4.0.0
Description
When calling Station.enableDevice() for an outdoor PT camera (type 48), the P2P command is sent correctly via CMD_SET_PAYLOAD (1350) wrapping CMD_INDOOR_ENABLE_PRIVACY_MODE_S350 (cmd 6250) — this was fixed in v4.0.0. The HB3 acknowledges with ERROR_PPCS_SUCCESSFUL and the camera is physically disabled.
However, the Eufy cloud param param_type 6254 (the cloud-side enabled/privacy state) is never updated via the HTTP API. As a result:
- HA (and eufy-security-ws) correctly reflects
enabled: false from the P2P command response
- The Eufy mobile app shows the camera as fully operational — no visual indication it was disabled
- If a family member opens the Eufy app, they see no change and cannot tell the camera was disabled from HA
Evidence from debug logs
At startup, param_type 6254 for T8170T10242521C2 reads:
{ "param_type": 6254, "param_value": "0", "update_time": 1743827584 }
After enableDevice(..., false) succeeds (P2P ACK received), the next cloud poll still shows the same update_time: 1743827584 — param_type 6254 was never written.
Relevant P2P command that IS sent correctly:
CMD_SET_PAYLOAD (1350) → { cmd: 6250, mChannel: 0, payload: { switch: 1 } }
→ returnCode: 0 (ERROR_PPCS_SUCCESSFUL)
Expected behavior
After disabling the camera via P2P, the HTTP API should also be called to update param_type 6254 in the cloud, matching what the Eufy iOS app does (it writes both the cloud param and sends the P2P command).
Suggested fix
After the P2P command for enableDevice succeeds on outdoor PT cameras, call the HTTP API to update param_type 6254 (0 = enabled, 1 = disabled / privacy on), similar to how other property writes update both transports.
Device info
device_type: 48(OUTDOOR_PT_CAMERA)Description
When calling
Station.enableDevice()for an outdoor PT camera (type 48), the P2P command is sent correctly viaCMD_SET_PAYLOAD(1350) wrappingCMD_INDOOR_ENABLE_PRIVACY_MODE_S350(cmd 6250) — this was fixed in v4.0.0. The HB3 acknowledges withERROR_PPCS_SUCCESSFULand the camera is physically disabled.However, the Eufy cloud param
param_type 6254(the cloud-side enabled/privacy state) is never updated via the HTTP API. As a result:enabled: falsefrom the P2P command responseEvidence from debug logs
At startup,
param_type 6254forT8170T10242521C2reads:{ "param_type": 6254, "param_value": "0", "update_time": 1743827584 }After
enableDevice(..., false)succeeds (P2P ACK received), the next cloud poll still shows the sameupdate_time: 1743827584—param_type 6254was never written.Relevant P2P command that IS sent correctly:
Expected behavior
After disabling the camera via P2P, the HTTP API should also be called to update
param_type 6254in the cloud, matching what the Eufy iOS app does (it writes both the cloud param and sends the P2P command).Suggested fix
After the P2P command for
enableDevicesucceeds on outdoor PT cameras, call the HTTP API to updateparam_type 6254(0= enabled,1= disabled / privacy on), similar to how other property writes update both transports.