iCloud3 v3 iDevice Tracker - Version 3

Interesting, the watch does not show up in the “IOS APP DEVICE_TRACKER ENTITY” drop down.
All that shows up there are the handful of android devices and the iPhone that have HA app installed on them.

The watch does not have the HA app installed on it, as it is a Family Member device (for my son, he does not have an iPhone).

Could this be part of the issue?

It’s strange because I get GPS accuracy and that changes periodically, there is just no coordinates.

Thanks Gary, I managed to delete the old device_tracker and then rename the new pre-release icloud3 tracker to what they used to be called (basically without the _3 appended)

Quick query: are the next_update sensors deprecated? Thank you!!

@daneboom
The next update Sensor is available. See Configure Settings > Sensors to verify it is being updated. It is on my system.

Thanks for this awesome integration, it clearly represents a huge investment of your time! I’m still trying to figure out a couple of things:

  • When using your recommended Location settings for the HA app on iOS, how to prevent iOS regularly prompting family members that HA has been tracking their location continually and asking if they want that to continue.
  • How the iOS app provides zone enter/exit triggers when the device is not at home on the wi-fi network. If it’s away from home, even if it’s on mobile data, it’s not going to be able to send these triggers is it?

Thank you.

@spry-salt

  1. I believe this is a setting in the phone on Settings App > Privacy and Security > Location Services > Home Assistant > Allow Location Access = Always Allow enabled.
  2. The iosapp has to be able to communicate with your HA server using cell service. The easiest way to do this is using the HA Nabu Casa program.

See the HA iOS companion docs here for instructions on how to do this. See the items describing the icloud and iOS HA parameters.

Thanks for your reply.

I’ve set the location services as you described; the thing is, iOS will periodically notify the user that the app Home Assistant has been tracking them continually for some (arbitrary) time and asks if they want that to keep happening. That’s a feature of iOS but it encourages them to switch that access off so that iCloud3 will no longer get their location updates. I’ve been adjusting the frequency of polling to see if I can make iOS not complain too much.

On having a back channel like Nabu Casa, that makes sense but I don’t recall seeing that in the icloud3 docs. I don’t really have the budget for that and I’m not keen to vpn back into our network either. Maybe it’ll be best in my situation then to just switch off the HA app access for icloud3.

@spry-salt
I was using the iOS app for several years before Nabu Casa came out. I was using duckdns and lets_encrypt without any problems. It worked fine and did what I wanted. I went with Nabu Casa to support voice commands to turn on/off lights rather than continuing to use AWS and the Alexa-to-HA clogged-together Interface.

The iOS App docs explain how to do that.

And I rarely get the continue to us the iOS app message from iOS. I think if the settings are to Always Allow and you enter to keep using it, iOS stops asking

Hi Gary! You can tell me.Can an android phone be tracked via icloud 3? Thank you in advance

@dimadon11 iCloud3 is focused on iPhones and other iDevices for location information. It also uses the iOS app for location data and zone enter/exit triggers. The iCloud data source can be turned off so I guess it might be able to be used if only the iOS app is unused and the Android app provides data just like the iOS app does. I’ve never tried it, do not know anyone that has and have no plans or desire to.

iCloud3 v3, Prerelease version 1.4 has been uploaded (9/23/2023)

Download:

Download from HACS or the Releases screen (here)[Release iCloud3 v3, Prerelease Version 1.4 (9/22/2023) · gcobb321/icloud3 · GitHub]

Notes:

This is an update to Prerelease Version pr1.3 that fixes a few bugs and changes the way Stationary Zones are handled.

Change Log:

  1. Bug Fix - Fixes a “type object ‘GlobalVariables’ has no attribute ‘this_update_tine’” error. it should be ‘_time’, not ‘_tine’
  2. Fixed a problem adding the first device to a new iCloud3 installation that was generating a 'TypeError: ‘NoneType’ object is not callable – Gb.async_add_entities_device_tracker(NewDeviceTrackers, True) error message.
  3. Stationary zones - Stationary zones are now removed from HA Zones instead of moving them back to their ‘base’ location when all of the devices have exited the zone. Monitored devices will no longer create a stationary zone since they are not actually tracked.
  4. Error handling - If a device goes offline for an extended period of time (in Airplane mode) the longest interval was changed from 2-hours to 1-hour. An iOS App Location Request will be made when the interval time changes to see if the device is now available for tracking.
  5. China - Fixed a problem updating the Apple Web Server URL for China. This uses the HA Country Code or the Configuration File icloud_server_endpoint_suffix: “cn” parameter to add .cn to the https://www.icloud.com and https://setup.icloud.com URLs in the iCloud3-iCloud Account interface module.

Just wondering, when someone is away from home on the v3 pre release, sometimes it says away and sometimes it says StatZon1 and I’ve realised there’s a zone named the same which isn’t editable by the ui. Just wondering if it’s correct and what it means.

Also just had an update through HACS which has removed all of the sensors, access it only allows me to use enters a zone and exits a zone. I was using the battery level to charge my watch, assuming it just a bug because it’s pre release so just informing you.

Hey there,

I‘m using icloud3 v3 for quite a long time and I’m absolutely happy with it. But there are still 2 questions for me.

  1. My child has two device trackers, an iPhone and an iPad. When he goes to school he only takes the iPad. In the afternoon he often only takes the iPhone. Is it possible to make his person as a group. So, if one or both devices are away, he is away. If all devices are at home, he is at home?

  2. His school is only something like 100m away from our home. So I set the school zone’s diameter to 50m. But often when he comes home, his iPad is still at school. When I set the school zone smaller, his iPad is often away even if he is at school. Am I doing anything wrong?

Thanks for the help.

@Camille2906

  1. You can probably set up an HA Person for your son and add the iPhone and iPad to it.
  2. The default size of zones is 100m. The iOS App seems to use 100m as it’s monitored area without looking at the zone size. Because of that, If the school is 100m away from home, GPS accuracy is going to cause some of the problems you are seeing with not changing zones.

Try this. Make a School zone that is 100m centered on the school. Make your Home zone 250m so the School zone will be inside the Home Zone. When iPhone/iPad zone is selected, iC3 will see it is in more than one zone and will select the closest zone center.

Thanks for your reply. But I don’t think that will solve my issues.

I changed the size of my home zone already to a radius of 10m because I want Home Assistant only to react when I am really coming home and not when passing by or something like that. Most of the time this is perfect. The problem is the iPad without lte. I think the problem is, that icloud3 doesn’t update its status fast enough. After a few updates it is finally at home.

When I set both devices to a person there will be the problem between stationary, gps and wifi presence detection. I tried that and it just doesn’t work for our situation because we need other conditions for home and away than Home Assistant suggests.

@Camille2906
If the iPad does not have cell service,it will not generate the enter/exit zone triggers when it enters the zone. That means iCloud3 will do a zone enter on the next poll when the interval time has been reached.

However, the iOS app has 2 WiFi network sensors:

  • sensor.[iosapp_devicename]_connection_type
  • sensor.[iosapp_devicename]_ssid

Mine are WiFi & CobbNet

You might be able to create an automation having these values as a trigger. Then when it enters Home or School, or disconnects from WiFi, run the Service icloud3.action to relocate the device immediately. See here for more info on the service call options

icloud3_command_locate_gary_immediately:
  alias: 'iCloud3 Locate (Gary) - Immediately'
  sequence:
    - service: icloud3.action
      data:
        command: locate
        device_name: gary_iphone

This sounds amazing!!!

I will absolutely try that out!!!

So this works perfect as well for the iPad and for the Cellular phones.

Can you also help me with the previous state?

I only want to set the devices as home / away when the previous state has been no wifi/wifi for at least 10 minutes.

How do I have to set the template?

I’m not sure of that but I think there is a timer delay you can add to a trigger or condition and specify that it triggers an action after xx minutes. Look in the HA docs on triggers and conditions for automations.

Hi Gary, maybe it is just me missing some information after reading the user manual. But I have an apple watch what I want to use for tracking. On the config > page 2 > Tracking & Other Parameters I adjusted the Maximum Interval to 15 minutes. Also in the config > page 2 > inZone Parameters and Default Intervals for the Apple Watch I set 10 minutes. On this inZone page at top it says “This value is assigned to a device when it is added. You can then change it on the Update Device screen”, so after changing all these values I went and updated the device, but I still see if the watch stays long in zone, the updated intervall slowly increases to 15h and then 30h. Even after removing and re-adding the device and after restarting the addon, shortly after that there is an update, and after the first update the next update time is in 4.4h. How could I keep this update interval on a reasonable level (like 10-15 minutes max), did I miss to update some setting? Can that be that this is some bug? Thanks!

The Configure Settings > Page 2 > in zone Intervals screen is to set the default values for a device type.
The Configure Settings > Page 2 > Tracking Parameters screen max value applies more to Waze travel time as far as I recall

You want to set the inzone interval on the Configure Settings > Update Devices screen like you are using. When the interval increases from 30s to 1m to 5n to 1h etc, it is because the location info being reported be Apple is old. The watch is probably asleep and Apple can not locate it. The Event Log would show these location retries and what is going on.