Почему в классе обрывается связь по Bluetooth (и как это исправить)

Связь по Bluetooth в переполненном классе обрывается из-за перегрузки диапазона 2,4 ГГц и коллизий пакетов оповещения BLE при одновременной работе 20+ устройств. Вот протокол для организации работы в классе, который решает эту проблему.
Когда на испытательном столе учителя лежит один-единственный набор по робототехнике, Bluetooth Low Energy (BLE) работает безупречно. Но стоит перенести тридцать таких наборов в обычный класс вместе с тридцатью планшетами, корпоративной точкой доступа Wi-Fi и сорока смартфонами, как связь начинает рваться уже через пять минут. Оборудование здесь почти никогда ни при чем: проблема заключается в перегрузке радиочастот в нелицензируемом диапазоне 2,4 ГГц и неконтролируемых коллизиях пакетов оповещения BLE.
Физика процесса: почему диапазон 2,4 ГГц перегружается ровно в 09:00
Bluetooth Classic и BLE работают в радиочастотном диапазоне ISM (промышленный, научный и медицинский диапазон) на частотах от 2,400 ГГц до 2,4835 ГГц. Этот узкий участок электромагнитного спектра делят между собой:
- Школьные точки доступа Wi-Fi (часто использующие полосу 20 МГц или 40 МГц на каналах Wi-Fi 1, 6 и 11).
- Планшеты и ноутбуки учащихся, передающие трафик по Wi-Fi.
- Смартфоны учеников, постоянно ищущие сети и периферийные устройства Bluetooth.
- Отладочные платы микроконтроллеров (micro:bit, ESP32, Raspberry Pi Pico W, Arduino), рассылающие пакеты оповещения BLE.
- Тела людей, которые в основном состоят из воды и активно поглощают радиосигналы с частотой 2,4 ГГц.
Прежде чем BLE-устройство установит соединение, оно должно заявить о своем присутствии. В BLE для обнаружения и инициации подключения выделено ровно три специальных радиоканала: канал 37 (2,402 ГГц), канал 38 (2,426 ГГц) и канал 39 (2,480 ГГц). Эти каналы были намеренно размещены в промежутках между стандартными непересекающимися каналами Wi-Fi 1, 6 и 11.
Однако когда двадцать пять микроконтроллеров каждые 100 миллисекунд рассылают оповещения по этим трем каналам, а двадцать пять планшетов активно сканируют те же самые три канала, одновременно поддерживая высокоскоростное соединение Wi-Fi со школьной сетью, радиочастотные коллизии становятся неизбежными. Пакеты сталкиваются в эфире, проверка контрольной суммы (CRC) не проходит, пакеты отбрасываются, и время ожидания подтверждения связи по BLE истекает.
Человеческий фактор: перекрестное сопряжение и лавина поисковых запросов
Радиофизика объясняет потерю пакетов, но поведение учеников в классе лишь усугубляет проблему. На обычном уроке робототехники хаос разворачивается по предсказуемому сценарию:
Учитель объявляет: «Откройте браузер и подключите робота». Тридцать учеников нажимают «Поиск» в течение пяти секунд. Тридцать планшетов забивают диапазон 2,4 ГГц запросами на сканирование, а тридцать роботов наводняют эфир ответами на оповещения.
В этом «шторме запросов» планшеты с трудом могут определить имена устройств. Если каждая плата называется BBC micro:bit или ESP32_BLE, ученики неизбежно подключаются к роботу соседа через две парты. Как только ученик А загружает код в робота ученика Б, ученик Б думает, что связь оборвалась, и снова нажимает «Поиск», провоцируя очередную волну радиочастотного шума.
Протокол сопряжения устройств в классе
Вам не нужно менять оборудование, чтобы добиться стабильного беспроводного подключения. Нужен регламент работы, позволяющий контролировать радиопомехи и человеческий фактор.
| Уровень | Мера | Техническое обоснование |
|---|---|---|
| Именование | Постоянные буквенно-цифровые идентификаторы (например, BOT-A01 – BOT-A15), совпадающие с номерами парт. | Устраняет путаницу при поиске и предотвращает случайное подключение к чужим устройствам. |
| Дистанция | Сопряжение вплотную (планшет подносится ближе 10 см к плате во время установления связи). | Максимизирует отношение сигнал/шум в критический момент начального обмена ключами. |
| Очередность | Поэтапное подключение группами парт (по 3–4 пары устройств одновременно). | Предотвращает перегрузку оповещениями BLE на каналах 37, 38 и 39 от 30 устройств одновременно. |
| Программный | Фильтрация по уровню RSSI (отсечение сигналов слабее -60 дБм). | Заставляет планшет игнорировать все платы, кроме той, что находится прямо перед ним. |
1. Введите строгое физическое и программное именование
Никогда не оставляйте на платах роботов заводские имена по умолчанию. Промаркируйте каждый микроконтроллер контрастной виниловой наклейкой (например, от LAB-01 до LAB-20). Прошейте микроконтроллеры так, чтобы имя, транслируемое по BLE, в точности совпадало с этой наклейкой. Привяжите рабочие места к именам устройств: ученик за партой 04 всегда подключается исключительно к плате LAB-04.
2. Настройте порог по уровню RSSI
Индикатор уровня принимаемого сигнала (RSSI) измеряет мощность сигнала в децибелах относительно одного милливатта (дБм). Типичные значения варьируются от -30 дБм (устройство лежит прямо на планшете) до -90 дБм (устройство находится в другом конце класса за двумя бетонными колоннами).
Если вы используете Web Bluetooth или специализированные среды программирования, настройте фильтры подключения с порогом RSSI не слабее -60 дБм. Благодаря этому при сканировании планшет ученика 04 просто откажется отображать платы, находящиеся в других частях класса, что мгновенно устранит 90% ошибок сопряжения с чужими устройствами.
3. Регламент подключения «по рядам»
Сделайте сопряжение четкой процедурой урока, а не хаотичным общим действием. Пусть первый ряд подключает свои устройства, пока 2-й, 3-й и 4-й ряды ждут с выключенными микроконтроллерами. Как только BLE-устройство завершает процедуру рукопожатия, оно переходит с перегруженных каналов оповещения (37, 38, 39) на стандартные каналы передачи данных (0–36) с адаптивной скачкообразной перестройкой частоты, что значительно снижает фоновые помехи для следующей группы.
Когда стоит переключиться на WebUSB
Беспроводная прошивка удобна для колесных роботов, перемещающихся по полу, но это не лучший выбор для настольных электронных схем, калибровки датчиков и высокочастотной телеметрии по последовательному порту. Если ваш урок предполагает быструю итеративную отладку — когда ученики прошивают новый код каждые сорок секунд, — подключайте платы обычным USB-кабелем.
Современные браузерные среды с поддержкой WebUSB не требуют установки драйверов и полностью избавляют от проблем с радиопомехами в диапазоне 2,4 ГГц. Такие платформы, как Sheen Canvas, поддерживают прямую прошивку через WebUSB и Web Serial наряду с Web Bluetooth, позволяя учителям использовать беспроводную связь только на этапе финального запуска проекта, сохраняя процесс написания кода и отладки быстрым, надежным и комфортным.
Школам, которые проектируют специализированные лаборатории робототехники или масштабируют программы на несколько параллелей, наша команда помогает выстроить аппаратные процессы и регламенты работы на уроках в рамках программы поддержки школ.



