mirror of
https://github.com/agessaman/meshcore-bot.git
synced 2026-04-28 20:05:19 +00:00
22e1b2b53c
When the radio firmware is unresponsive but not yet flagged as zombie, send_advert() would hang indefinitely on the main event loop, blocking all packet processing (no data in/out) for 60+ seconds until the scheduler thread's future.result() timed out — but that only timed out the waiting thread, not the coroutine itself. Fix: wrap every send_advert() call that runs on the event loop with asyncio.wait_for(timeout=30.0). On timeout in the interval-advert path, _radio_fail_count is incremented so repeated timeouts feed into the existing zombie-detection threshold.