Troubleshooting¶
Device shows incorrect model¶
Afero IoT does not always report enough metadata for automatic classification.
Open a PR against src/aioafero/device.py and update AferoDevice.__post_init__
so the device maps to the correct device_class. See Contributing.
Slow or stale updates¶
The API rate-limits requests. Concurrent clients (phone app, Home Assistant, scripts)
compete for the same quota. Reduce polling frequency with polling_interval or
limit concurrent integrations.
No log output when debugging¶
aioafero does not configure logging handlers. In a script, call
logging.basicConfig (or equivalent) before setting
logging.getLogger("aioafero").setLevel(logging.DEBUG). See Examples.
Home Assistant and other hosts handle this themselves.
Authentication failures¶
InvalidAuth— credentials or refresh token rejected. Run a full login again withv1.AferoAuth.for_loginand replace the storedrefresh_token(see Authentication).OTPRequired/InvalidOTP— collect the emailed code from the user and callauth.submit_otpon the sameAferoAuthinstance (Authentication).ExceededMaximumRetries— transient overload (429/503/504); bridge retries automatically.
Incorrect split-device state¶
Split entities share a parent metadevice ID for API updates. Ensure integrations use
each model’s update_id (not id) when debugging state writes. See
Device splitting.