Life360 Device Tracker Platform

The Home Assistant app!

1 Like

HA companion app is not able to update a battery level periodically )))
iPhone 5S (iOS 12.5.5), iPad Air 2 (iOS 15.x) - same outdated data.
Also, I do not want to install HA app on 9 mobile phones for my family.

Could you please open a new topic to request suggestions for other HA device trackers? This topic is intended for discussions about the Life360 integration. Thanks!

Iā€™m working on converting the standard integration to the newer entity-based format (which many other device tracker integrations did a while ago.) Iā€™m looking for testers. Please see:

Life360 conversion to entity-based device tracker - Testers Needed - Development - Home Assistant Community (home-assistant.io)

1 Like

@pnbruckner Just installed with HACS and no problems so far.

1 Like

Am i forced to have the app installed and running?

Iā€™m sorry, I donā€™t understand what youā€™re asking.

I mean: to use your custom component i must have the android app installed on my mobile and running or not? Is the custom component independent from the app or not?
I was using the old integration, so i already have username and passwords.

So, the life360 integration has been a built-in integration in Home Assistant for a long time now. When you say you were ā€œusing the old integrationā€, do you mean the built-in one, or my custom version from way back before it was added as a built-in one?

In any case, the Home Assistant life360 integration (whether the old one, the current built-in one, or this new version, which will hopefully replace the built-in one) gets location information from the Life360 server. It cannot operate independent of Life360. In order to use the integration, you must have a Life360 account, and for it to be useful, yes, youā€™d need to have the Life360 app installed on your phone(s.)

Ok, what happens if i have the app installed but deactivated (i noticed in past a BIG waste of battery)?
Is it enough to have a Life360 account?

Iā€™ve never had any issues with battery usage from the Life360 app, and Iā€™ve been using it for almost 9 years. AFAIK, they go to great lengths to minimize battery usage while maximizing useful location updates. If you have battery issues you should check their FAQs.

Um, how do you expect the Life360 server to get location information from your phone if the app (that supplies that information) is deactivated? I think youā€™re misunderstanding how this works. The app sends location information to the Life360 server, and the HA integration periodically queries the Life360 server for that data. This is basically the same model that most, if not all, tracker systems use. E.g., I also use Google Maps, and it works exactly the same way. (Moreover, I use both apps on the same phone, which Iā€™ve been doing for years, and do not have any battery issues.)

Of course, using any app that periodically runs, uses GPS, and sends information to a server, is going to use some battery. Nothing is free. :slightly_smiling_face: But, in my experience, I wouldnā€™t classify either Life360 or Google Location Sharing as ā€œBIGā€ wastes of battery.

2 Likes

I am pretty sure that L360 will respond with the latest location data that it has. My wifeā€™s phone ran out of battery a few days ago and L360 was still reporting her location as ā€œat workā€.

Just a stupid question:

How, having HA OS, to run the life360_backup.py script?
EDIT: found itā€¦ :slight_smile:

I get ā€˜unavailableā€™ state very often since i switched from legacy integration to yours and i am foced to reload the integration to have again the device available.

Schermata 2022-06-01 alle 17.24.17

Any hints?

Are there any messages in the log? Have you enabled debug for this?

Still notā€¦ can you tell me how?

Logger - Home Assistant (home-assistant.io)

E.g.,

logger:
  default: info
  logs:
    life360: debug
    homeassistant.components.life360: debug

Add that to configuration.yaml, then restart HA. Then look in home-assistant.log for messages related to life360.

What i see is only this:

2022-05-31 04:22:21 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-05-31 05:20:45 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-05-31 06:31:58 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-05-31 06:38:46 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data:

And this:

2022-06-02 00:08:00 ERROR (MainThread) [custom_components.life360] Unexpected error fetching life360 ([email protected]) data: Executor shutdown has been called
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 191, in _async_refresh
    self.data = await self._async_update_data()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 150, in _async_update_data
    return await self.update_method()
  File "/config/custom_components/life360/__init__.py", line 154, in async_update_data
    return await get_life360_data(hass, api)
  File "/config/custom_components/life360/helpers.py", line 134, in get_life360_data
    for circle in await retrieve_data(api.get_circles):
  File "/config/custom_components/life360/helpers.py", line 124, in retrieve_data
    return await hass.async_add_executor_job(func, *args)
  File "/usr/src/homeassistant/homeassistant/core.py", line 479, in async_add_executor_job
    task = self.loop.run_in_executor(None, target, *args)
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 807, in run_in_executor
    self._check_default_executor()
  File "/usr/local/lib/python3.9/asyncio/base_events.py", line 514, in _check_default_executor
    raise RuntimeError('Executor shutdown has been called')
RuntimeError: Executor shutdown has been called

More infos from the log:

2022-06-02 06:06:14 DEBUG (SyncWorker_4) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 06:06:14 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 08:43:06 DEBUG (SyncWorker_51) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 08:43:06 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 09:14:20 DEBUG (SyncWorker_47) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 09:14:20 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 09:36:44 DEBUG (SyncWorker_45) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 09:36:44 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 10:01:44 DEBUG (SyncWorker_13) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 10:01:44 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 11:08:08 DEBUG (SyncWorker_30) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 11:08:08 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 12:15:45 DEBUG (SyncWorker_30) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 12:15:45 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 12:28:57 DEBUG (SyncWorker_10) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 12:28:57 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 
2022-06-02 12:40:33 DEBUG (SyncWorker_15) [life360.life360] Error while getting: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members: 400 Client Error: Bad Request for url: https://api.life360.com/v3/circles/22c7ec58-09f8-439a-8f2d-7e43d2429428/members
2022-06-02 12:40:33 ERROR (MainThread) [custom_components.life360] Error fetching life360 ([email protected]) data: 

What version of Home Assistant are you running?