| 1833 | // wifiExportReport() further down (it also carries the heatmap image + build |
| 1834 | // plan). It renders the 2.4 GHz Bluetooth / Zigbee overlays and the last AI |
| 1835 | // analysis inline. This slot previously held a second, server-rendered |
| 1836 | // wifiExportReport() that was shadowed by that later definition and never ran. |
| 1837 | |
| 1838 | // One auto-refresh tick: the Wi-Fi survey plus any enabled overlays. The |
| 1839 | // Waterfall view streams on its own poll, so it's left alone here. |
| 1840 | function _wifiAutoTick() { |
| 1841 | if (_wifiState.view !== 'waterfall') wifiScan(); |
| 1842 | if (_wifiState.btOn) wifiBtScan(); |
| 1843 | if (_wifiState.zbOn && _wifiState.zbAvailable) wifiZbScan(); |
| 1844 | } |