Arlo: replacement pyarlo module


Can you try setting the mode again? It looks like the base station/camera got updated - the automationRevisionUpdate is new to me.


Firmware on Hub:
Firmware on cameras:

Also, note that the there is a significant interval between the request and the response. I gave the new request at 12:30 and there has been no response as yet (the state is still disarmed).

2019-03-07 12:30:08 DEBUG (MainThread) [pyaarlo] ArloHome:new-mode=armed,id=mode1


The latest updates fixed the bug…thank @sherrell



Thanks a million for this great custom component!
Even if it may be a stupid question: I can’t trigger the alarm of the base station. In my automation I use:

  - data:
      entity_id: alarm_control_panel.aarlo_smith_family_base
    service: alarm_control_panel.alarm_trigger

I get no alarm sound but the following error:

Traceback (most recent call last):
    File "/usr/lib/python3.5/asyncio/", line 241, in _step
    result = coro.throw(exc)
    File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/", line 287, in _handle_service_platform_call
    await getattr(entity, func)(**data)
    File "/usr/lib/python3.5/asyncio/", line 380, in __iter__
    yield self  # This tells Task to wait for completion.
    File "/usr/lib/python3.5/asyncio/", line 304, in _wakeup
    File "/usr/lib/python3.5/asyncio/", line 293, in result
    raise self._exception
    File "/usr/lib/python3.5/concurrent/futures/", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
    File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/alarm_control_panel/", line 140, in alarm_trigger
    raise NotImplementedError()

What am I doing wrong?

I hope this is the right place to ask - if not apologies, this is my first ever post and I’m a total newby.


That’s not supported in aarlo. Yet. But it shouldn’t die too, I’ll look at that.

If you try ‘arm_home’ or ‘arm_away’ that should work.


Thanks for the quick response.
The arm_home and arm_away work fine. I’d just like to trigger the alarm by some other movement sensors around the house when Arlo is armed.
Does the Arlo API support triggering the alarm at all?


@Xirr I believe you can trigger it from the API. If you can trigger it from the camera web page we can do it from inside Home Assistant. My plan was to add alarms withing the coming weeks.


@sherrell I was going to ask if it’d be possible to trigger the alarm - Would be GREAT if you can support it soon, that will make my whole alarm system more solid!
Thanks for your amazing work btw (I can finally use my arlo’s within HA thank to your work)


Hi Sherrell and thank you for that module.
I have a problem when i call a custom mode nothing happen.
I’ve checked the log and no request is even going out.
A weird symptome when i remove the annotation to the custom name mode in my configuration.yaml the home_mode_name: home works in disarming the alarm but not setting my custom mode called home.

any thoughts on this one.

Thanks in advance


I have a quick question: Is there any way to take a snapshot while the camera is recording and saving that snapshot to a file? I would like to send an iOS notification with a picture which is taken 5 seconds after the recording has started (and in most cases the camera is still recording at that point). Currently, I’m only able to send a notification with an up-to-date image after the recording has finished. Any help would be greatly appreciated.
Thanks and regards!


Im getting config errors,


  username: !secret arlo_username
  password: !secret arlo_password
  packet_dump: True
  db_motion_time: 30
  db_ding_time: 10
  recent_time: 10
  last_format: '%m-%d %H:%M'
  conf_dir: /config/.aarlo

  - platform: aarlo


- platform: aarlo
    - motion
    - sound
    - ding


- platform: aarlo
  ffmpeg_arguments: '-pred 1 -q:v 2'

does anything seem wrong?


yes indeed i see something wrong


Would you be so kind to tell me where I should start?


@Corey_Maxim I can’t see anything obviously wrong with your configuration. What is “Configuration/Genera/Check Config” button showing you? And do you have the arlo username and password in your secrets file?

@vjmindlab Do you have debug turned on for the aarlo component? That way I’ll be able to see exactly what is happening. Something like this will do it:

    default: info                                                                                                                    
        pyaarlo: debug                                                                                                               

And removing the custom modes will convert everything to a disarmed request. The modes themselves aren’t case sensitive, everything is converted to lower case internally.

@ffm777 That should work with the latest release. There is an example automation in the docs that will trigger a snapshot 3 seconds after the camera starts recording. You’ll need another automation to track the camera moving from a ‘taking snapshot’ to ‘recording’ state change at which point the camera image has been updated and you can copy that to a file.


thank you for replying indeed i did activate the debug log but when i call the custom mode nothing is written in the log not even the call itself. I can see all the other calls to the base station in the log when i call a normal disarmed function.

This is my log for a disarmed mode call (mode1)

2019-03-17 20:05:59 DEBUG (MainThread) [pyaarlo] Alarm:new-mode=armed,id=mode1
2019-03-17 20:05:59 DEBUG (ArloBackgroundWorker) [pyaarlo] starting request=
2019-03-17 20:05:59 DEBUG (EventStream) [pyaarlo] sending modes to 4RC1767RA00AD
2019-03-17 20:05:59 DEBUG (EventStream) [pyaarlo] Alarm BASE got modes
2019-03-17 20:05:59 DEBUG (EventStream) [pyaarlo] set:4RC1767RA00AD/activeMode=armed
2019-03-17 20:05:59 DEBUG (EventStream) [pyaarlo] unhandled response devices/4XH47576BE131/states
2019-03-17 20:06:00 DEBUG (EventStream) [pyaarlo] sending activeAutomations to 4RC1767RA00AD
2019-03-17 20:06:00 DEBUG (EventStream) [pyaarlo] Alarm BASE got activeAutomations
2019-03-17 20:06:00 DEBUG (EventStream) [pyaarlo] set:4RC1767RA00AD/activeMode=armed
2019-03-17 20:06:01 DEBUG (EventStream) [pyaarlo] sending modes to 4RC1767RA00AD
2019-03-17 20:06:01 DEBUG (EventStream) [pyaarlo] Alarm BASE got modes
2019-03-17 20:06:01 DEBUG (EventStream) [pyaarlo] set:4RC1767RA00AD/activeMode=armed

But it fails to send anything for the custom mode


@vjmindlab We need to go back to the beginning. If you get the logs since start - or restart if necessary - you should find something like the following trace. This will show the modes configured on the base station. Make sure these names line up with the one you are using in the configuration file - for me home_mode_name is home.

2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] sending modes to XXXXXX0588                                                        
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] Front Base BASE got modes                                                          
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] mode0<==>disarmed                                                                  
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeIdToName/mode0=disarmed                                         
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeNameToId/disarmed=mode0                                         
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] mode1<==>armed                                                                     
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeIdToName/mode1=armed                                            
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeNameToId/armed=mode1                                            
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] mode2<==>SmartThings                                                               
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeIdToName/mode2=smartthings                                      
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeNameToId/smartthings=mode2                                      
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] mode3<==>Home                                                                      
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeIdToName/mode3=home                                             
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/modeNameToId/home=mode3                                             
2019-03-16 20:12:08 DEBUG (EventStream) [pyaarlo] set:XXXXXX0588/activeMode=home    


Thanks i will check that


ok i can see in the log that no mode3 is being reply by my base

2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] async ping response subscriptions/MC4M-140-37962202_web
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] sending modes to 4SU177SS46A86
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door BASE got modes
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] mode0<==>disarmed
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/modeIdToName/mode0=disarmed
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/modeNameToId/disarmed=mode0
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] mode1<==>armed
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/modeIdToName/mode1=armed
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/modeNameToId/armed=mode1
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/activeMode=disarmed
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door CAMERA got one modes
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door got modes
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] sending cameras to 4SU177SS46A86
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door BASE got cameras
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door CAMERA got one cameras
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] Front Door got cameras
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] base info
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/activityState=idle
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/audioDetected=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/brightness=0
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/connectionState=available
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/flip=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/mirror=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/motionDetected=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/motionSetupModeEnabled=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/motionSetupModeSensitivity=80
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/powerSaveMode=2
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/privacyActive=False
2019-03-17 20:14:18 DEBUG (EventStream) [pyaarlo] set:4SU177SS46A86/signalStrength=4

I will try to redo my Arlo setup in the Arlo app see if it fix it thank you for your help


That’ll do it! I have a home mode that stops a couple of cameras reporting motion and recording videos.

I’ll add some debug in the set code because right now if there is no mode matching the one you ask for the silence is deafening.


Thanks a lot that fixed it i guess something got messed up in my Arlo base station