You set up a smart camera, plug, or speaker through its manufacturer’s app. It worked. Months later, you open the same app on your phone and it asks you to set up the device again. The device is online and working through other ecosystems (Alexa, HomeKit, etc), but the manufacturer’s own app cannot find it. The local discovery between your phone and the device has broken.
How companion apps discover devices
Companion apps use one of several mechanisms:
- Local mDNS discovery (Bonjour) when on the same network
- Manufacturer cloud lookup when away from home
- Direct connection to known device IP if previously cached
If all three fail, the app does not find the device and assumes it is unset.
Check the phone is on the home network
The most common cause: your phone is on cellular, on guest Wi-Fi, or on a different SSID than the device.
Verify your phone is on the same Wi-Fi network as the device. Look in your phone’s Wi-Fi settings.
Check the device is online
Open another app that uses the device (Alexa, HomeKit). Is the device responding there? If yes, the device is online; the issue is the companion app’s local discovery. If no, the device is genuinely offline.
Force-quit the companion app
If the app has cached a stale device IP, it cannot find the device at the new IP. Force-quit the app to clear the cache. Re-launch.
If the app finds the device after relaunch, the cache was the issue. Set a DHCP reservation for the device to prevent its IP from changing.
Check local network access permission (iOS)
iOS requires explicit permission for apps to discover devices on the local network. If this permission was revoked or never granted, the app cannot do mDNS discovery.
Settings, Privacy & Security, Local Network, ensure the manufacturer’s app is enabled.
Check the device on a Wi-Fi network you can scan
If your IoT VLAN is isolated from your phone’s network, the phone cannot reach the device through mDNS even with permission granted. mDNS does not cross VLANs without explicit routing.
Either enable mDNS reflection in your router, or join your phone to the IoT SSID temporarily to set up the device.
Check the device’s cloud account
If the manufacturer cloud has lost the association between your account and the device, the app cannot find it even via cloud lookup. Log into the manufacturer’s website with your account credentials. Is the device listed?
If not, the device has been disassociated from your account. You may need to re-add it from the device, which usually requires a factory reset.
The two-account problem
If you signed up for the manufacturer service with one credential and signed into the app with another, the app cannot see the device because the device is associated with a different account.
Verify the credential you used in the app matches the credential the device was originally registered to.
The router restart
If multiple devices are missing from the companion app, your router’s mDNS or local discovery may be broken. Restart the router.
After restart, retry the app. If devices appear, the router was the issue.
The device firmware update
If the device received a firmware update that changed its API or discovery behavior, the app may no longer recognize it.
Check for an app update too. The manufacturer usually releases app updates around the same time as firmware updates to keep them compatible.
Reset the device as a last resort
If nothing else works, factory reset the device and re-add it through the app’s setup flow. The fresh pairing should establish proper discovery.
Before resetting, document the device’s name, room assignment, and any custom settings. Re-enter them after re-pairing.
The third-party app interference
If you have multiple smart home apps installed, they may compete for local discovery. mDNS scanning is bounded; only some apps get a response.
Uninstall unused apps. Verify the relevant app is the one actively scanning.
The Bluetooth requirement
Some companion apps use Bluetooth for initial device discovery. If Bluetooth is off or the app lacks Bluetooth permission, discovery fails.
iOS: Settings, Privacy & Security, Bluetooth, enable for the app.
Android: typically auto-granted; check Apps, app, Permissions.
The device on a different protocol
If your device was originally Bluetooth-only and you replaced it with a Wi-Fi version, the companion app may still be looking for the Bluetooth one.
Update the app or re-add the device to specify the current protocol.
The DNS issue
If your network’s DNS is slow, the companion app may time out before resolving the manufacturer cloud endpoint. The app fails to log in and never reaches local discovery.
Set a fast DNS (1.1.1.1, 8.8.8.8) at the router level.
The IPv6 issue
Some companion apps prefer IPv6 for local discovery. If your network has IPv6 enabled but the device only supports IPv4, the app may not find it through IPv6 and not retry IPv4.
Disable IPv6 on your router temporarily and retest. If the app finds the device, IPv6 was the cause.
The cloud sync delay
If you just re-added the device, the cloud association may not have propagated yet. Wait 5-15 minutes for sync.
The development versus production environment
If you use beta versions of either the app or the device firmware, they may be on a different cloud environment than production. The mismatch causes apparent missing devices.
Verify both are on production releases, not beta.
The fixed IP that pays back forever
Setting a DHCP reservation for every smart device eliminates the most common cause of app-cannot-find-device errors. The device always has the same IP, so any cached IP in the app remains valid forever. This is fifteen minutes of setup that pays back for years.
Do it once when you set up each device, not retrospectively when something breaks. The wider topic of network discovery is in our IoT VLAN guide.
The router-side device record
Most routers maintain a list of connected device names. If your camera shows as “Generic IoT Device” instead of its brand name, the camera is connecting but not advertising itself properly. This can prevent app discovery. Renaming in the router admin to match the brand sometimes triggers the app to find it. The wider topic of network discovery is in our cross-subnet guide.