СвязьГлава 10 / 51

Wi-Fi в обычном доме

Как сохранить удобство и локальную независимость одновременно?

Основной путь пользователя — обычная домашняя Wi-Fi-сеть. Отдельная сеть хаба остаётся сервисным или будущим специализированным вариантом.

Телефон остаётся в обычной домашней сети. Станция подключается к тому же роутеру по Wi-Fi, а устройства находят её внутри этой сети. Внешний DNS и облачный аккаунт не нужны для ежедневной команды.

Но роутер всё ещё участвует в связи. Гостевая изоляция клиентов, новый пароль или отключённая точка доступа могут разорвать локальный путь. Поэтому локальность означает независимость от внешних сервисов, а не независимость от любого сетевого оборудования.

Станция подключается к роутеру как клиент. Телефон остаётся в привычной сети. Узлы первого комплекта подключаются к доступной сети 2,4 ГГц, а станция может работать в другом диапазоне, если роутер допускает локальное взаимодействие между ними. Облачный DNS и интернет не участвуют в передаче команд внутри этой сети.

Радио на Linux#

Покупать Wi-Fi-модуль нужно по чипу и драйверу, а не по надписи «Wi-Fi 6». Linux iwlwifi документирует поддерживаемые устройства и ограничения режимов, включая различия client/AP. Наличие хорошего клиентского режима не гарантирует полноценную точку доступа на любом диапазоне. [38]

Для первой станции достаточно надёжного Wi-Fi-клиента и Bluetooth для дальнейшего сопряжения. Второй независимый радиомодуль имеет смысл, если потребуется собственная сеть устройств без зависимости от домашнего роутера. Он не должен появляться как скрытое обязательное условие приложения.

У металлического куба антенны выносятся наружу или в специально предусмотренную радиопрозрачную область. Коаксиальный кабель, разъём и антенна рассматриваются как один тракт. Нельзя произвольно удлинять тонкий пигтейл и ожидать прежней чувствительности.

A11Металлическая оболочка и радио. Внешняя антенна или пластиковая зона устраняют очевидный экран, но не заменяют испытание расположения и согласования.

Антенны устройств#

ESP32-C6-WROOM-1 имеет печатную антенну, вариант WROOM-1U — разъём внешней. В готовом узле соблюдаются рекомендации по свободной зоне около антенны, земле и размещению металла. Плата, прекрасно работающая без корпуса, может потерять связь после установки батареи или винта перед антенной. [14][81]

Для первого Sense предпочтителен пластиковый корпус с вынесенной к краю антенной. Металлические декоративные элементы рядом с радио добавляются после базового измерения. Кабель датчика также может изменить электромагнитную обстановку, особенно если он длинный и идёт вдоль антенны.

Обнаружение и идентичность#

Локальное обнаружение должно быть удобным, но не определять доверие. Приложение может использовать Bonjour/mDNS, адрес из QR или уже известный локальный endpoint. После обнаружения оно проверяет закреплённую идентичность станции. IP и имя — адреса, а не доказательство владельца.

Если multicast заблокирован, приложение должно уметь подключиться по известному IP или найти станцию через ограниченный механизм восстановления. Полное сканирование всей локальной сети не следует делать постоянной фоновой функцией. На iOS доступ к локальной сети требует предусмотренного разрешения и корректного объяснения пользователю. [57]

Что может сломать локальную связь#

УсловиеСимптомДействие системы
Guest Wi-Fi / client isolationТелефон видит интернет, но не хабОбъяснить локальную изоляцию, не винить пароль
Только 5 ГГц для узла 2,4 ГГцУстройство не присоединяетсяПоказать совместимый диапазон при настройке
Смена DHCP-адресаСохранённый IP устарелПовторное обнаружение с проверкой прежнего ключа
Роутер перезапущенСессии оборвалисьПереподключение с jitter и сверка состояния
Шумный эфирПовторные передачи и задержкиСнизить телеметрию, показать качество канала
Ошибка DNS провайдераВнешние имена недоступныЛокальный путь не обращается к ним

WPA-защита сети не заменяет аутентификацию протокола. Гость, имеющий пароль Wi-Fi, не должен получать право управлять реле. С другой стороны, TLS не исправляет слабый радиосигнал и роутер, который запрещает обмен между клиентами.

Политика переподключения#

Потеряв сеть, узел сохраняет локальную функцию и постепенно увеличивает интервал попыток с небольшим случайным разбросом. Одновременный старт десятков узлов не должен создавать синхронную лавину TLS-handshake. После подключения узел передаёт boot_id, последнюю версию состояния и актуальные наблюдения; исторические записи идут отдельно.

Постоянная доступность устройства не равна постоянной высокой частоте heartbeat. Интервал определяется допустимым временем обнаружения потери связи и энергопотреблением. Для стационарного Actuator он короче, для будущего спящего датчика — связан с расписанием пробуждения.

Как проверять радио#

Сохраняются положение станции, ориентация антенн, диапазон, расстояние, материал стен и нагрузка сети. Измеряются не только RSSI, но и частота переподключений, задержка команды, процент ошибок и поведение при переносе телефона. Одна удачная передача не подтверждает надёжность.

Для кабинета полезны три точки: рядом со станцией, обычное рабочее место и худшее предполагаемое место датчика. Те же точки повторяются с закрытым корпусом, работающими вентиляторами и активным USB/SSD. Электромагнитные помехи от собственной конструкции должны выявляться до изготовления красивых панелей.

Wi-Fi остаётся основным режимом#

Ethernet удобен как эталон для диагностики, но не подменяет согласованный пользовательский режим: Hub и узлы должны пройти приёмку через обычный Wi-Fi. Металлический куб получает наружные антенны либо проверенное радиопрозрачное окно. Сравниваются задержки и отказы с открытыми и закрытыми панелями; RSSI около −70 дБм — только диагностический ориентир, не доказательство пригодности.

Для постоянно питаемого Actuator в E0 выбирается WIFI_PS_NONE; экономию модема проверяют позднее как другую конфигурацию. На Linux фиксируется фактическая политика power-save адаптера. Результат зависит от AP, DTIM, диапазона и драйвера, поэтому не обещаем универсальную прибавку «100–300 мс». [178]

H0 запускается на Linux с доступной локальной сетью. WSL2, Docker Desktop и виртуальная машина допускаются лишь после отдельной проверки входящих соединений, multicast и проброса USB/BLE; NAT может скрыть проблему под видом неисправного устройства. Смена пароля Wi-Fi открывает физически подтверждённый сетевой provisioning без сброса владельца. Резерв питания только Hub не сохраняет Wi-Fi, если обесточен AP.

Найти в книге

Поиск по всем главам, схемам и техническим разделам.