Track which devices are connected to your FASTGate Huawei DN8245F2 router in Home Assistant.
Unlike ping-based tracking, this integration queries the router directly for reliable home/away presence detection. No ping, no app, no MQTT—just simple, accurate device tracking.
- No ping, no Companion App, no MQTT — pure router API polling
- Reliable detection — Android devices won't randomly show as away while on Wi-Fi
- Fully UI-driven — no
configuration.yamlneeded - Selective monitoring — choose which devices get a tracker
- Custom names — assign friendly names to each device
- Single polling loop — efficient with a shared
DataUpdateCoordinator - Installable via HACS
| Problem with Ping | This Integration |
|---|---|
| Android stops responding to pings while on Wi-Fi | Router knows who is associated—zero false negatives |
Variable latency causes spurious not_home states |
Direct router API polling—stable and fast |
device_tracker.see is deprecated |
Uses modern ScannerEntity API |
| One probe per device creates polling conflicts | Single DataUpdateCoordinator for all devices |
- Supported: FASTGate Huawei DN8245F2
- Not supported: Other FASTGate variants, NeXXT, or other Huawei models
Uses RouterScraper 0.3.1 with the fastgate_dn8245f2 backend.
Source: RouterScraper GitHub repository
http://192.168.1.254(FASTGate)http://myfastgate(FASTGate)http://192.168.1.1(other Huawei routers)
If these don't work, check your router label or DHCP gateway.
| Requirement | Version |
|---|---|
| Home Assistant | >= 2026.8.0 |
| Python | >= 3.11 |
| routerscraper | 0.3.1 |
routerscraperis installed automatically via Home Assistant. No manual setup needed.
- Open HACS → Integrations → three-dot menu → Custom repositories
- Add
https://github.com/pheudo/fastgate_presence(category: Integration) - Search for FASTGate Presence (DN8245F2) and install
- Restart Home Assistant
mkdir -p ~/config/custom_components
cp -r fastgate_presence/ ~/config/custom_components/Restart Home Assistant.
- Settings → Devices & Services → Create Integration
- Search for FASTGate Presence (DN8245F2)
- Fill in:
| Field | Description | Default |
|---|---|---|
| Router IP | FASTGate IP address | 192.168.1.254 |
| Username | Router web login | admin |
| Password | Router web password | — |
| Polling interval | Seconds between updates | 60 |
The integration verifies credentials before saving.
Security: Passwords are encrypted in Home Assistant's secure storage, never logged or exposed in diagnostics.
- Settings → Devices & Services → FASTGate Presence → Configure
- Review/adjust polling interval, click Next
- See all currently connected devices
- Select which ones to track
- (Optional) Add friendly names in the overrides box:
AA:BB:CC:DD:EE:FF=Primary phone
11:22:33:44:55:66=Studio laptop
FC:AA:14:55:01:23=Living room TV
- Save — device trackers are created
If you assign a custom friendly name:
- The name persists always, both online and offline
- Router hostname changes are ignored
- The name never changes (unless you edit it)
If you select a device from the list without a custom name:
- When online: Home Assistant displays the current router hostname
- When offline: Home Assistant displays the last hostname seen from the router
- When reconnecting: The name updates to the current router hostname
If a device never went online:
- Home Assistant falls back to displaying the MAC address
If you want to add a device manually:
- Add a line like
AA:BB:CC:DD:EE:FF=in the overrides box - Add
AA:BB:CC:DD:EE:FF=My nameif you also want a fixed friendly name - Any MAC written in the overrides box is monitored, even if it is not currently online
Offline devices: Add any MAC via the overrides box even if not currently connected. The tracker starts in
not_homeand switches tohomewhen detected.MAC addresses are case-insensitive:
aa:bb:cc:dd:ee:ff=Phoneworks the same asAA:BB:CC:DD:EE:FF=Phone.
For each monitored device, a device_tracker.<name> entity is created.
| State | Condition |
|---|---|
home |
Device MAC detected in router's client list |
not_home |
Device MAC no longer connected |
| Attribute | Content |
|---|---|
mac_address |
Uppercase MAC address |
hostname |
Name from router |
ip_address |
DHCP-assigned IP |
network_type |
WiFi, LAN, or Unknown |
device_tracker.primary_phone:
state: home
mac_address: AA:BB:CC:DD:EE:FF
hostname: phone-main
ip_address: 192.168.1.42
network_type: WiFiEach tracker registers a Home Assistant Device:
| Field | Value |
|---|---|
| Manufacturer | Huawei |
| Model | Router Client |
| Connections | MAC Address |
| Name | Custom friendly name or router hostname |
| Via device | The router (DN8245F2) |
Settings → Devices & Services → FASTGate Presence → Configure → follow step 2 above
Same configure screen as above.
Deselect it in the configure screen. On save, the tracker and registry entry are automatically deleted.
Settings → Devices & Services → FASTGate Presence → ⋮ → Diagnostics
Shows:
- Router connection status
- Connected device count
- Monitored devices and states
- Last update timestamp
- Network type debugging info
Safe to share: Never includes passwords, tokens, or sensitive data.
- Password storage: Encrypted in Home Assistant's secure config storage (
config/.storage/core.config_entries), never in plain text - Network: Local HTTP only (LAN only)—no internet traffic
- Sessions: RouterScraper creates a fresh login per poll cycle—no long-lived tokens to protect
- Logging: Credentials never logged; DEBUG logs only MAC and hostname
- Diagnostics: Safe to share publicly
- Verify the IP address
- Try opening
http://192.168.1.254orhttp://myfastgatefrom your network - Ensure Home Assistant is on the same LAN (not VPN'd or on a different subnet)
- Verify credentials match the router web interface
- Default username is usually
admin - Default password is on the router label
The router temporarily blocks logins after multiple failed attempts. Wait 5–10 minutes.
- Verify the device appears in the router web UI (
http://192.168.1.254) - Check Home Assistant logs: Settings → System → Logs → filter
fastgate_presence - Try lowering polling interval to 30 s
- Confirm the MAC address matches (some devices randomize MACs on reconnect)
Android and iOS use randomized MACs per network. They may change on every reconnection.
Fix:
- Android: Wi-Fi → network → Advanced → Privacy → Use device MAC
- iOS: Settings → Wi-Fi → network → Private Wi-Fi Address → off
| Limitation | Reason |
|---|---|
| RouterScraper is synchronous | Polling runs in a thread pool to avoid blocking Home Assistant |
| Login on every poll | DN8245F2 doesn't support persistent sessions |
| Variable network labels | Router firmware formats the Network field differently; we normalize to WiFi/LAN |
This is an unofficial community project—not endorsed by Huawei, Fastweb, or any router vendor.
Provided "as-is" without warranties. Users are responsible for network, legal, and compliance requirements.
RouterScraper is a third-party dependency; firmware and library changes may affect compatibility.
Product names and trademarks (Huawei, Fastweb, FASTGate) are used for identification only.
Pull requests and issues welcome.
Before opening a PR:
- Ensure HACS and hassfest checks pass (GitHub Actions)
- Validate Python:
python -m py_compileon modified files - Update
CHANGELOG.md
MIT (c) 2026 Rodolfo Candido