Trying to configure my new Arlo Pro cameras. In the documentation you can read "The Arlo component also provides a service to enable/disable the motion detection "
Using both the Arlo: configuration and
camera: config with Arlo as platform
Trying to use the service “camera.enable_motion_detection” This service is missing and nothing works. What can be the problem?
# Some Arlo cameras does not have basestation
# So check if there is base station detected first
# if yes, then choose the primary base station
# Set the mode on the chosen base station
if base_stations:
primary_base_station = base_stations[0]
primary_base_station.mode = mode
If anyone with an Arlo Q would like to contribute to the library, your contributions would be more than welcome :-). I can confirm that the current library heavily references a base station (and does not handle multiple base stations, for that use case).
I have a little time over the next few weeks so can start taking a look. Unfortunately I’m on vacation in November so will have to stop then.
Do you think the direction should be to create a separate class for the Arlo Pro cameras (non-base station) because of the fact they are so different? Keeping them mashing into the same camera class seems to cause instability as features are added.
It seems likely that there would need to be a different class for standalone cameras like the Arlo Q (Plus), Arlo Baby and Arlo Go. For original Arlo and Arlo Pro, data is retrieved through the hub. So there is a many-to-one relationship as far as cameras referencing shared data from the hub. Q, Baby, and Go would have 1-to-1 data retrieval, sans hub.
I can’t know for sure without having access to one of the standalone device, but I would assume that they access the same endpoints as the hub. So perhaps it would be as simple as abstracting the current Base Station class up one level, then having base stations and standalone cameras inherit from there.
Yeah, this is my thinking as well. I don’t have access to a base station so can only look at the code on how that works. I’ll likely replicate the existing camera class first and see if I can fit in the Q device logic, then look for commonality with the existing basestation.