This integration sends a message to the defined hosts on UDP port 5353.
The iPhone responds, even when in deep sleep, and an entry in the ARP cache is made .
Uses Home Assistant's device_tracker and idea/script from return01
Only IP addresses will work, no hostnames!
You have to assign a static IP address(es) to your iPhones, probably in your router.
The interval_seconds time must be shorter than the timeout in which the ARP cache is cleared (usally 15-45sec), or the phone will be marked not_home. So, leave it at the default value (12sec) or make it shorter.
device_tracker:
- platform: iphonedetect
consider_home: 60
scan_interval: 12
new_device_defaults:
track_new_devices: true
hosts:
hostname1: 192.168.0.17
hostname2: 192.168.0.24
This will create device_tracker.hostname1
and device_tracker.hostname2
once the devices have been detected on your network.
(Re)start the Wi-Fi on your device/phone to trigger their creation on first run.
Note
If you have track_new_devices: false
(in this or any integrations specified before this) for the device_tracker component you need to manually change track:
to true for each device in known_devices.yaml
(see component settings for device_tracker)
hostname1:
icon:
mac:
name: hostname1
picture:
track: true