iCloud3 v3 iDevice Tracker - Version 3

I have another question.
Because I wanted to start frm scratch I removed icloud3 from my system including the config in configuration.yaml and config_ic3.yaml

However, still have the entities from the config_ic3.yaml in the system.
What is the best way to remove them (not possible from the UI because they don’t have a unique entity ID.

EDIT:
Solved it by removing the entities from known devices. :slight_smile:

@kamg130
There are a couple of things that might help figure out what is going on:

  1. The Trouble Shooting section the iCloud3 docs show info about the Event Log during startup.
  2. The fmf devices with location info that is returned from iCloud are listed in Stage 3 of the Event Log. If the device is not shown there, check the FindMy app on your phone to see if her location is displayed.
    See here for more info on setting up FmF devices [here]{@kamg130
    There are a couple of things that might help figure out what is going on:
  3. The Trouble Shooting section the iCloud3 docs show info about the Event Log during startup.
  4. The fmf devices with location info that is returned from iCloud are listed in Stage 3 of the Event Log. If the device is not shown there, check the FindMy app on your phone to see if her location is displayed. See here for more info about setting up FmF on her device.
  5. On her phone, in the Settings app, make sure Privacy Locaton Services is On and Share My Location is On.

Also, the inzone_interval should be at least 15 minutes. Otherwise you will be requesting iCloud to update the phones location every minute when you know where it is and run down the battery. It defaults to 2-hours.

@gcobb321 i don’t want to put undue pressure on you as I would much rather wait and have a polished beta :wink:

Understand timelines push easily. Just hoping for an update on how far away beta might be so I can make a call on what to do in the interim.

Context because I don’t want to just seem impatient - old instance died and I started clean, not that it’s particularly messy but trying to avoid installing 2.4 (manual config etc) and wanting to install v3 clean :blush:

My current presence tracking is just horrible :joy:

Please take my ‘impatience’ as a compliment :wink:

I am also just starting with HA and icloud3, but I see my friends (this is the ultimate killer feature vs the regular icloud).
Anyway, I have specified my friends phones in the config_ic3.yaml and don’t even use tracking_method: fmf in the configuration.yaml
I guess the important thing is to add the right email adresses of your friends phones like:

devices:
- device_name: iPhone_von_Daniel
  email: [email protected]
  name: Daniels iPhone (iCloud3)

Since yesterday I have icloud3 up an running and I am very happy about this feature rich alternative to the regular icloud.
However I get “position jumps” I cannot explain. These are resulting in home distances of 0.
See my history view (the big jump in the center is the change from miles to km):

The documentation says about Zone exits (2.4 Using Sensors (gcobb321.github.io):
iCloud3 then puts the device back into the Home zone where it belongs.

Wouldn’t it be better to keep the previous position instead of setting it artifically to the home zone?

I’ve been working with computers since the 1970s and have never been good at estimating when things were ready for release.

It is looking real good. The full integration is complete, all parameters are configured via forms on the Devices & Integrations screen, device_tracker and sensor entities are created, deleted and updated automatically, tracking from multiple zones is pretty solid, the iOS App monitoring is solid and works with the iCloud location updating, battery levels are now monitored and change every 5-minutes using data from the iOS App and iCloud, a ‘passthru’ zone delay is working (delays an iOS App zone Enter from being initiated for 1-minute to see if you are just passing through it will be back to a not_home/away state), The Waze History sql database is working (eliminates calls to Waze from known locations), the v2-to-v3 config migration works, and others. There are other things I want to add to tie in to HA but they will wait.

I’m doing some tuning on iCloud location requests to reduce the number of calls to iCloud, to ask for the location updates early so the data is available when it is needed (it seems to take 2-calls right now to get location data, the first call always resends old location info and the 2nd call sends newer data, sometimes), I have a couple of items that need to be fixed in the configuration update and a lot of code cleanup to do to remove debug code, unused code, and other things. Some document updates are needed to explain how it works, how to install it, etc.

The best estimate I can give is soon.

1 Like

@NCO3 Actually, when iCloud3 throws a zone exit away, it just ignores it and doesn’t change the location of the phone. Look at the Event Log around the time of the distance jump and see what is going on.

Thank you for your quick response.
Will do and will possibly come back with follow up questions :blush:

EDIT:
@gcobb321
The most recent case of a home distance of 0 was after a restart (after installation of 2022.7.7).
Maybe this is not a good case and works as designed.

However, because the recorder function is switched off for the icloud3 (in accordance to your docs), I wonder if there is a way to reinitialize the position with historic data (before the restart) to avoid the jump home (and trigger automations)?

@gcobb321
I have another question about icloud3.

My use case is, that I have the iphones of the family (device_tracker entities) as one source for my family members person entities. Means, beside the icloud3 device_tracker... I use the wifi connectivity switch of my router (if person is at home) among others.

So, the persons badges usually show Away, Stationary, etc. (set by icloud3 obviously).
Sometimes though, the badge of my wife (for instance) shows a badge information the iphone of our son:
(Wife was detected at sons_iphone_stationary):
image

Maybe I just don’t get it and this should indicate that my wife is with my son.
However, I think it’s confusing.

Any hint / explanation would be greatly appreciated.

EDIT:
After reading the docs once more ( :slight_smile: ) I recognized that there is a zone created for each phone if stationary. SO it seems, that one phone state is mapped on the zone of another phone.
Maybe that makes sense, but showing the entities name is not readable on badges.

So how to rename this to “Zone X”
Another option would be from my side to avoid this mapping to another stationary zone if the phones are close.

Is this possible?

just one question how to pull battery states from watch

Question: How to correctly define Apple Watch device so it can get a different interval poll time?

I would like to define my watch poll interval to be 5 min while other devices that doesn’t have iosapp installed to be 15 min. In config_ic3.yaml defined as:

inzone_intervals:
  - inzone_interval: 30 min
  - ipad: 1 hrs
  - watch: 5 min
  - no_iosapp: 15 min

After startup the apple watch gets the no_iosapp poll interval time because I have defined the device with iosapp_installed as false:

devices:
 - device_name: apple_watch_de_marcelo
   name: Apple Watch de Marcelo - iCloud3
   picture: /local/images/marcelo.jpg
   iosapp_installed: false

But if I don’t define this attribute as false I get an error on icloud3 startup complaining the device tracker entity wasn’t found which really doesn’t exist.

How do I achieve the above scenario?
Thanks in advance

@marceloaf Use the inzone_interval parameter for the watch device. See the iCloud3 docs here for all of the parameters for the device.

devices:
 - device_name: apple_watch_de_marcelo
   name: Apple Watch de Marcelo - iCloud3
   picture: /local/images/marcelo.jpg
   iosapp_installed: false
   inzone_interal: 15 mins
1 Like

@Richi_Bowzer You have to track it with the Family Sharing tracking method. The battery info is not part of the data returned from iCloud Location Servers for devices using the Find My Friends tracking method. The devicename_battery and devicename_battery_status sensors will be created and report the battery level.

What is this an indicator of?

It appears to have eventually reached a conclusion:

I had to completely reinstall iC3 over the weekend due to a mishap with the iOS app. Seems to be functioning just fine other than these long runs of Requesting New iCloud Location entries.

I have no idea. It was probably not connecting to Apple iCloud for location data or was getting old data. Sometimes you can look at the Tracking monitors (Event Log > Actions > Show Tracking Monitor) to see what is going on. Sometimes an iCloud3 restart (Event Log > Actions > Restart iCloud3) will reset everything to.

A restart seems to have cleared it, thanks!

Hello, I’ve faced with unstable work of several integrations “icloude3”, “gree” - icloud3 stops tracking devices with **PAUSED** message in the info sensor (‘sensor.iphone_renat_info’ for example); the gree integration controls AC by auto discovered entity and some time device from this integration becomes unavailable also.
Today i’ve started investigation and discovered “icloude3” races with the “mikrotik” integration during creation device_tracker entities and this situation leads to creating a lot of duplicated entities. I’ve already disable device tracking in mikrotik integration and delete all tracked device entities of this integration. But still have a lot of entities generation by icloud3 which can not be deleted via ui or entity purge service call


So, how to remove all entities claimed with “!” ? and how to limit icloud3 for creating entities only specified in config_ic3.yaml?

PS: only ‘icloud3’ platform is configured for device_tracker, so i guess that icloud3 has created all those duplications

device_tracker:
  - platform: icloud3
    username: !secret icloud_user
    password: !secret icloud_ha_password
    exclude_sensors: batstat,lzonn,lzont,name

Hi there,

I’m having an issue with iCloud3 not seeing that I’ve reached home in a timely manner. It’s all over the place - sometimes it’s on the ball and exactly correct, but often times it doesn’t notify of being at home for a minute to three minutes after we’re arrived. I went through my config as I’ve had it installed for some time to make sure things were set right. I’ve made sure the app is installed and everything is what I think - correct. I’ve checked all that location sharing settings in iOS for the HA app as well - they’re all on.

How can I troubleshoot what the problem is?

Here is the current config - with specific details removed of course.

#-- iCloud3 Settings -----------------------------------------
device_tracker:

  • platform: icloud3
    username: [email protected]
    password: mypasswordhere

    tracking_method: icloud

    devices:

    #-- General Parameters -----------------------------------------
    event_log_card_directory: ‘www/custom_cards’

    #-- Formatting Parameters---------------------------------------
    unit_of_measurement: mi
    time_format: 12
    display_text_as:
    - [email protected] > [email protected]
    - [email protected] > [email protected]

    #–Zone/Tracking Parameters-----------------------------------------
    inzone_interval: ‘2 hrs’
    max_interval: ‘4 hrs’
    center_in_zone: False
    stationary_inzone_interval: ‘30 min’
    stationary_still_time: ‘6 min’
    stationary_zone_offset: 1, 0
    travel_time_factor: 0.6
    distance_method: waze

    #–Waze Parameters-----------------------------------------
    waze_region: US
    waze_min_distance: 1
    waze_max_distance: 1000
    waze_realtime: True

    #–Accuracy Parameters-------------------------------------
    gps_accuracy_threshold: 100
    ignore_gps_accuracy_inzone: True
    old_location_threshold: ‘2 min’

@Allistah The problem probably has to do with poor GPS and GPS errors which can lead to old location being returned from iCloud. The Event Log shows how iClouc3 is responding to the data it received, if it is old, if it is requesting updated data on a varying time frame and if Enter zone triggers are being received from the iOS App.

  1. Select Event Log > Action > Show Tracking Monitors to show additional details about what is being read from the iOS App and iCloud Location Svc.
  2. Look for zone Enter Trigger from the iOS App.
  3. Look for Old Location, retrying in xxx messages

@akrigator iCloud3 creates the device_tracker entiity and sensors when it starts. They are not part of list of entities you listed above. If HA is started without iCloud3, the sensors it creates are not created and they will not exist.

The device_tracker entities shows above are probably being created by the other integrations. The easy way to delete them all is check the box at the top left in the heading line. This will select everything. Then click the downward-triangle next to CLEAR on the top right and select ‘delete’. This will delere ONLY the sensors and device_tracker entities with the red ! inside the circle under Status. The valid entities without an error are not deleted.