Меню
Главная Статьи {{t.nav.bookmarks}} {{t.nav.experience}} {{t.nav.profiles}} Обо мне Работайте со мной
WiFi router with glowing signals
Конфиденциальность 27 фев, 2026 • 15 мин. чтения

Ваш WiFi видит вас в движении: проект на выходные, чтобы доказать это

Your router is constantly mapping your movements through walls. Here's how to build your own WiFi motion detector in a weekend and understand what your network actually sees.

Поделиться:
Lee Foropoulos

Lee Foropoulos

15 мин. чтения

Continue where you left off?
Text size:

Contents

Я покажу вам кое-что, что навсегда изменит ваше представление о WiFi-роутере, стоящем в вашей гостиной. Это не просто шлюз в интернет. Это радарная система, которая может видеть, как вы дышите.

Не научная фантастика. Физика. И вы можете собрать такую систему сами на этих выходных.

Подождите, что? Мой роутер может меня видеть?

Вот что на самом деле происходит: Современный WiFi (802.11ac/ax) использует технологию под названием beamforming (формирование луча). У вашего роутера несколько антенн, и вместо того чтобы передавать сигнал одинаково во все стороны, он фокусирует луч на ваши устройства. Представьте себе прожектор вместо лампочки, освещающей всё вокруг.

Для этого роутер и устройства постоянно обмениваются обратной связью о сигнале, а именно так называемой BFI (Beamforming Feedback Information). Эти данные точно описывают, как радиоволны отражаются по вашей комнате.

А вот самое интересное: эта обратная связь не зашифрована. Любой может её перехватить. И когда вы, по сути большой мешок с водой, отражающий радиоволны, двигаетесь по комнате, данные BFI меняются. Пройдите через гостиную, и математика буквально покажет ваше перемещение.

Наука простым языком

Ваше тело отражает WiFi-сигналы. Когда вы двигаетесь, отражения меняются. Роутер отслеживает эти изменения для оптимизации силы сигнала. Эти данные отслеживания передаются открыто. Перехватите их, и у вас есть датчик движения, работающий сквозь стены.

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

Последствия для конфиденциальности (да, это тревожно)

Прежде чем мы перейдём к увлекательной части проекта, давайте обсудим главную проблему: это вопрос приватности.

Ваша WiFi-сеть постоянно передаёт информацию, которая может раскрыть:

  • Есть ли кто-нибудь дома
  • Сколько людей находится в комнате
  • Общие паттерны перемещения по вашему дому
  • Потенциально, конкретные действия (готовка, сон, физические упражнения)

Кто-то с нужным оборудованием, припарковавшийся у вашего дома, теоретически может перехватить эти данные. Ему не нужно подключаться к вашей сети. Достаточно принимать BFI-фреймы, которые транслирует ваш роутер.

"Та же технология, которая делает ваш WiFi быстрее, делает ваш дом прозрачным для любого, кто знает, куда смотреть."

Это не гипотетический сценарий. Исследовательские статьи уже это продемонстрировали. Единственная причина, по которой это не используется массово, в том, что большинство людей не знает о такой возможности. Это... не лучшая защита.

Та же технология, которая делает ваш WiFi быстрее, делает ваш дом прозрачным для любого, кто знает, куда смотреть.

Зачем строить это самому?

Так зачем я вам это рассказываю? Несколько причин:

1. Понимание модели угроз. Невозможно защититься от того, чего не понимаешь. Увидеть это своими глазами делает угрозу реальной так, как чтение об этом не может.

2. Легитимные применения реально крутые. Обнаружение движения для умного дома без камер. Датчики присутствия для автоматизации. Обнаружение падений для пожилых родственников. Экономия энергии за счёт знания, какие комнаты заняты. И всё это без установки датчиков повсюду.

3. Это по-настоящему увлекательно. Вы превращаете радиоволны в визуализацию физического пространства. Это настоящий киберпанк.

То, что мы строим, это этичный эксперимент только в собственной сети. Вы мониторите свой собственный WiFi, в своём собственном доме, чтобы понять технологию, которой уже пользуетесь. Это не просто законно, это разумно.

Два пути: выберите свой маршрут

Я дам вам два варианта в зависимости от вашего уровня подготовки и того, какое оборудование у вас под рукой.

Circuit board and electronics
Выбирайте: полная настройка на Linux или готовое решение на ESP32

Путь A: Полный опыт (Linux + Wi-BFI)

  • Время: 30-60 минут
  • Сложность: Средняя (нужна командная строка)
  • Оборудование: Машина с Linux + WiFi-адаптер с режимом мониторинга
  • Результат: Визуализация данных BFI в реальном времени, наблюдение за движением на графиках

Путь B: Готовое решение (ESP32 + ESPectre)

  • Время: 15-30 минут
  • Сложность: Легко (веб-прошивальщик, копирование конфига)
  • Оборудование: Плата ESP32-S3 или ESP32-C6 (~$10)
  • Результат: Работающий датчик движения в Home Assistant

Путь A: Глубокое погружение в Wi-BFI

Это подход "посмотрите на реальные данные". Вы будете захватывать настоящие BFI-фреймы от роутера и наблюдать, как они меняются при вашем перемещении. Тот же метод, который используют исследователи в научных статьях.

Что вам понадобится

  • Машина с Linux — Ubuntu 22.04/24.04 или Raspberry Pi
  • WiFi-адаптер с режимом мониторинга — Большинство встроенных чипов Intel/Broadcom/Realtek подойдут. Если нет, USB-донгл за $15, такой как TP-Link AC600 или Alfa AWUS036ACH, решит вопрос.
  • Ваш существующий WiFi-роутер — Любой роутер 802.11ac или 802.11ax (по сути любой роутер за последние 5 лет)

Шаг 1: Установка инструментов

Откройте терминал и выполните:

1# Install system dependencies
2sudo apt update
3sudo apt install tshark wireshark aircrack-ng git -y
4
5# Install Miniconda (skip if you already have conda)
6wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
7bash Miniconda3-latest-Linux-x86_64.sh -b
8~/miniconda3/bin/conda init
9# Close and reopen terminal after this

Шаг 2: Клонирование Wi-BFI

1# Get the tool
2git clone https://github.com/kfoysalhaque/Wi-BFI.git
3cd Wi-BFI
4
5# Create the environment
6conda env create -f wi-bfi.yml
7conda activate wi-bfi

Шаг 3: Определение параметров сети

Вам нужно знать канал и ширину полосы вашего роутера. Выполните:

1# See your wireless interface name
2iw dev
3
4# Or open Wireshark and scan for networks

Запишите имя интерфейса (обычно wlan0 или wlp2s0), канал (например, 36 или 149) и ширину полосы (80MHz типична для 5 ГГц).

Шаг 4: Начало захвата

Откройте два терминала. В первом запустите захват:

1cd ~/Wi-BFI/Demo
2
3# Replace values with your actual settings
4./angle_collection.sh my_capture wlan0 36 80MHz 1

Во втором терминале запустите визуализацию в реальном времени:

1cd ~/Wi-BFI
2
3# Replace YOUR_PHONE_MAC with your phone's MAC address
4# (find it in your router's admin page or phone settings)
5python main_live_plot.py AX SU 4x2 80 YOUR_PHONE_MAC my_capture 1

Шаг 5: Наблюдайте за магией

Теперь пройдитесь по комнате. Смотрите на графики. Видите, как колеблются углы и амплитуды? Это ваше тело отражает WiFi-волны. Математика буквально отслеживает ваше перемещение в пространстве.

Встаньте неподвижно, и график стабилизируется. Пройдите мимо телефона, и он резко подскочит. Помашите руками, и вы увидите соответствующие изменения. Это те же самые данные, которые могут использоваться для обнаружения движения, распознавания жестов или... слежки.

Путь B: Простой режим с ESP32

Не хотите возиться с Linux и режимом мониторинга? Возьмите плату ESP32 и получите работающий датчик движения за 15 минут.

Что вам понадобится

  • Плата ESP32-S3 или ESP32-C6 — Около $8-12 на Amazon. ESP32-C6 новее и отлично работает.
  • Кабель USB-C — Для прошивки платы
  • Home Assistant — Необязательно, но рекомендуется для полного опыта

Проект ESPectre

ESPectre это проект с открытым исходным кодом, специально разработанный для превращения вашего WiFi в датчик движения. Он блестящ в своей простоте.

GitHub: github.com/francescopace/espectre

Шаги настройки

1. Прошивка платы — Зайдите на веб-прошивальщик ESPectre (ссылка в репозитории). Подключите ESP32, нажмите flash, готово.

2. Настройка WiFi — Плата создаёт точку доступа. Подключитесь к ней, введите данные вашей домашней WiFi-сети.

3. Добавление в Home Assistant — Если у вас запущен Home Assistant, устройство автоматически обнаруживается как сущность датчика движения. Затем можно настроить автоматизации: включение света при обнаружении движения, оповещения, когда вы отсутствуете, и т.д.

4. Это буквально всё. Теперь у вас есть датчик движения, который работает сквозь стены, не требует прямой видимости и использует существующую WiFi-инфраструктуру.

Применение в реальной жизни

  • Присутствие во всём доме: Знайте, какие комнаты заняты, без камер
  • Отслеживание сна: Определяйте, когда кто-то в кровати (без носимых устройств)
  • Безопасность: Оповещение при обнаружении движения, когда все ушли
  • Автоматизация: HVAC, освещение на основе реальной занятости комнат
  • Уход за пожилыми: Обнаружение падений, мониторинг активности

Home Assistant: здесь начинается настоящее веселье

Именно здесь мы превращаем крутой научный проект в по-настоящему полезную домашнюю автоматизацию. Как только ваш WiFi-датчик движения подключён к Home Assistant, вы можете создавать автоматизации, для которых обычно потребовались бы десятки PIR-датчиков, камер или дорогих коммерческих систем.

Прелесть WiFi-сенсинга в том, что он работает сквозь стены. Один ESP32 в коридоре может обнаруживать движение в нескольких комнатах. Не нужна прямая видимость. Нет мёртвых зон. Нет батареек, которые нужно менять.

Примеры автоматизаций (YAML для копирования)

1. Свет включается, когда вы входите в комнату:

1automation:
2  - alias: "Living Room Motion Lights"
3    trigger:
4      - platform: state
5        entity_id: binary_sensor.wifi_motion_living_room
6        to: "on"
7    condition:
8      - condition: sun
9        after: sunset
10    action:
11      - service: light.turn_on
12        target:
13          entity_id: light.living_room
14        data:
15          brightness_pct: 80
16          transition: 2

2. Оповещения безопасности в режиме отсутствия:

1automation:
2  - alias: "Motion Alert When Away"
3    trigger:
4      - platform: state
5        entity_id: binary_sensor.wifi_motion_main_floor
6        to: "on"
7    condition:
8      - condition: state
9        entity_id: input_boolean.away_mode
10        state: "on"
11    action:
12      - service: notify.mobile_app
13        data:
14          title: "Motion Detected!"
15          message: "Movement in the house while you're away."
16          data:
17            priority: high
18            ttl: 0

3. Умный HVAC на основе занятости комнат:

1automation:
2  - alias: "Office HVAC When Occupied"
3    trigger:
4      - platform: state
5        entity_id: binary_sensor.wifi_motion_office
6        to: "on"
7        for:
8          minutes: 2
9    action:
10      - service: climate.set_temperature
11        target:
12          entity_id: climate.office
13        data:
14          temperature: 72
15          hvac_mode: heat_cool
16
17  - alias: "Office HVAC Standby When Empty"
18    trigger:
19      - platform: state
20        entity_id: binary_sensor.wifi_motion_office
21        to: "off"
22        for:
23          minutes: 15
24    action:
25      - service: climate.set_temperature
26        target:
27          entity_id: climate.office
28        data:
29          temperature: 65
30          hvac_mode: auto

4. Определение времени отхода ко сну (без носимых устройств):

1automation:
2  - alias: "Detect Bedtime"
3    trigger:
4      - platform: state
5        entity_id: binary_sensor.wifi_motion_bedroom
6        to: "on"
7    condition:
8      - condition: time
9        after: "22:00:00"
10        before: "02:00:00"
11      - condition: state
12        entity_id: binary_sensor.wifi_motion_living_room
13        state: "off"
14        for:
15          minutes: 10
16    action:
17      - service: scene.turn_on
18        target:
19          entity_id: scene.goodnight
20      - service: lock.lock
21        target:
22          entity_id: lock.front_door
23      - service: alarm_control_panel.arm_night
24        target:
25          entity_id: alarm_control_panel.home

5. Уход за пожилыми / оповещение об отсутствии движения:

1automation:
2  - alias: "No Motion Alert - Elder Care"
3    trigger:
4      - platform: state
5        entity_id: binary_sensor.wifi_motion_parents_house
6        to: "off"
7        for:
8          hours: 4
9    condition:
10      - condition: time
11        after: "08:00:00"
12        before: "22:00:00"
13    action:
14      - service: notify.mobile_app
15        data:
16          title: "Check on Mom"
17          message: "No motion detected for 4 hours during daytime."
18          data:
19            priority: high

Полезные советы для интеграции с Home Assistant

  • Несколько датчиков: Разместите 2-3 ESP32 для покрытия всего дома. Один на этаж работает хорошо.
  • Настройте чувствительность: Отрегулируйте порог обнаружения в конфигурации ESPectre, чтобы избежать ложных срабатываний от домашних животных.
  • Комбинируйте с другими датчиками: Используйте WiFi-движение как детектор "широкого охвата", а затем уточняйте с помощью датчиков дверей/окон для деталей.
  • Шаблонные сенсоры: Создайте бинарные сенсоры, объединяющие несколько комнат в зоны (верхний этаж, нижний этаж и т.д.)
  • Отслеживание истории: Используйте компонент Recorder для логирования паттернов движения. Полезно для анализа безопасности.

Убийственный сценарий: присутствие во всём доме

Традиционные датчики движения (PIR) обнаруживают только тепло и перемещение. Они не могут определить, сидит ли кто-то неподвижно. WiFi-сенсинг может. Он улавливает мельчайшие движения дыхания, набора текста или просто существования в пространстве.

Это значит, что вы можете создать автоматизации, которые знают, что вы в комнате, даже когда вы тихо работаете за столом. Свет не выключится, потому что вы перестали двигаться. HVAC не снизит температуру, потому что вы читаете книгу.

Это обнаружение присутствия, а не просто обнаружение движения. И вы собрали это за $10.

$10
Total cost of an ESP32 board that turns your existing WiFi into a through-wall motion and presence detector.

Идём дальше: добавляем обнаружение движения

Когда у вас есть потоковые данные BFI в реальном времени (из Пути A), вы можете добавить настоящее обнаружение движения примерно в 10 строках Python. Концепция проста: если дисперсия углов превышает порог, что-то двигалось.

1import numpy as np
2
3# Assuming you have a stream of angle data
4def detect_motion(angle_buffer, threshold=0.5):
5    """Returns True if motion detected in recent samples"""
6    if len(angle_buffer) < 10:
7        return False
8    variance = np.var(angle_buffer[-10:])
9    return variance > threshold
10
11# In your main loop:
12if detect_motion(recent_angles):
13    print("Motion detected!")
14    # Trigger alert, log event, whatever you want

Это базовая версия. В научных статьях используются более сложные техники: классификаторы машинного обучения, множественные потоки антенн, временные паттерны, чтобы различать типы движения, считать людей или даже распознавать конкретные действия.

Server room with networking equipment and cables
Каждая точка доступа WiFi это потенциальный узел сенсинга, транслирующий данные о пространстве вокруг себя

Что это значит для конфиденциальности

Теперь, когда вы видели, как это работает, давайте поговорим о последствиях:

Ваш WiFi всегда передаёт данные. Даже когда вы не используете его активно, роутер и устройства обмениваются BFI-данными. Любой в радиусе действия может перехватить эти фреймы.

Шифрование здесь не помогает. BFI является частью рукопожатия на физическом уровне. Это происходит до шифрования. WPA3, VPN, ничто из этого не имеет значения для этих конкретных данных.

Единственная реальная защита физическая: Клетки Фарадея (непрактично), снижение мощности передатчика (ломает WiFi) или принятие того факта, что паттерн присутствия в вашем доме фактически является публичной информацией в радиусе действия радиосигнала.

Это не про запугивание. Это про информированное согласие. Вы используете технологию с такими свойствами. Теперь вы знаете.

Подведём итоги

Вы только что узнали, что ваш WiFi-роутер, по сути, радарная система, собрали собственный детектор движения на радиоволнах и, надеюсь, получили лучшее понимание того, как невидимые сигналы вокруг нас несут информацию о нашем физическом мире.

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

И кстати, у вас ещё и крутой проект на выходные, которым можно похвастаться. "Да, я превратил свой WiFi в датчик движения. Ничего особенного."

Проект на выходные: WiFi-сенсинг 0/6

Довольно круто, правда?

Ресурсы

How was this article?

Поделиться

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

Ne propustite ni odnoi publikacii

Poluchajte uvedomleniya o novyh statyah. Email ne trebuetsya.

Vy uvidite banner na sajte kogda poyavitsya novaya statya, plyus uvedomlenie brauzera esli razreshite.

Tolko uvedomleniya brauzera. Bez spama.

0 / 0