Устройство контроля присутствия и движения LEDStepsTOF200, инструкция по подключению и эксплуатации (верно и для LEDStepsTOF400)
1. Назначение устройства
LEDSteps UZ – это интеллектуальный датчик присутствия на базе лазерного дальномера VL53L0X (дальность от 120 до 200 см, зависит от данных лазерного модуля, рекомендуем использовать LEDStepsTOF200 для надежного расстояния детектирования присутствия не более 120 см).
Устройство предназначено для:
Обнаружения людей или объектов в заданной зоне.
Выдачи дискретного сигнала 5В, для систем автоматики (свет, ворота, сигнализация).
Отправки событий на внешний сервер (webhook) для интеграции с умным домом.
Управления через удобный веб‑интерфейс.
2. Комплектация.
Датчик в сборе, микроконтроллер: ESP32‑C3 (32‑бит RISC-V), сенсор VL53L0X ( 5–200 см).
Питание: 7-24В
Потребление: ≈ 200 мА
Диапазон Wi‑Fi: 2.4 ГГц
Первый запуск
Подключите питание – убедитесь, что светодиод Wi‑Fi медленно мигает.
Подключитесь к AP – найдите сеть LEDStepsTOF200, введите пароль 12345678.
Откройте веб‑интерфейс – http://192.168.4.1.
Настройте Wi‑Fi (STA) – на вкладке «Wi‑Fi»:
Нажмите «Сканировать сети».
Выберите свою домашнюю сеть.
Введите пароль.
Нажмите «Сохранить Wi‑Fi».
После успешного подключения светодиод Wi‑Fi загорится постоянно, точка доступа исчезнет.
Узнайте IP устройства – можно посмотреть в Serial Monitor или в списке клиентов роутера. Теперь управляйте по этому IP.
Настройте датчик – на вкладке «Датчик»:
Установите порог срабатывания (например, 60 см).
Выберите режим (Normal для стабильности, Turbo для скорости).
При необходимости скорректируйте гистерезис и подтверждения.
Нажмите «Сохранить».
LED_Сигнал выхода – при приближении руки к датчику должен включаться выход.
Настройте интеграцию (если нужно):
Введите URL webhook и токен (если требуется).
Включите интеграцию.
Нажмите «Тест ON» – убедитесь, что сервер получает события.
Задайте имя устройства – на вкладке «Система» при необходимости.
Рекомендации по выбору режимов
Режим Интервал чтения EMA alpha Confirm Макс. скорость движения
Normal 100 мс 0,3 3 до 5 км/ч
Turbo 50 мс 0 (выкл.) 2 до 10 км/ч
Turbo_Maximum 30 мс 0 1 до 20 км/ч
Параметры можно менять вручную на вкладке «Датчик».
Обзор веб‑интерфейса
Интерфейс состоит из шести вкладок.
- Вкладка «Статус»
Показывает текущее состояние датчика:

Баннер расстояния – реальное расстояние в см (целое число). Если датчик не видит объект дальше 200 см, отображается> 200 см.
Состояние – «Обнаружен» / «Нет» (в зависимости от порога).
Порог, Мин/Макс – текущие настройки датчика.
Режим датчика – Normal / Turbo / Turbo_Maximum.
Кнопка «Тест 2 сек» – включает выход SIGNAL и светодиод LED_STATUS на 2 секунды для проверки исполнительной части.
- Вкладка «Датчик»
Настройка чувствительности и логики:

Режим:
Normal – стабильный, с фильтром EMA (сглаживание).
Turbo – более быстрый, без фильтра.
Turbo_Maximum – максимально быстрый отклик.
Порог (см) – расстояние, при котором объект считается обнаруженным.
Мин / Макс (см) – диапазон валидных измерений (по умолчанию 5…200 см).
Интервал чтения (мс) – как часто опрашивать датчик (влияет на скорость реакции).
EMA alpha – коэффициент сглаживания (0…1), работает только в Normal.
Гистерезис (см) – защита от дрожания возле порога (разница для выключения).
Confirm ON/OFF – сколько подряд измерений нужно для смены состояния.
Настройки сохраняются кнопкой «Сохранить».
- Вкладка «Интеграция».
Вкладка «Интеграция» позволяет настраивать отправку событий с датчика на внешние серверы. Она состоит из двух независимых блоков: общей webhook‑интеграции и отдельной интеграции с Яндекс.Алисой. Оба блока работают параллельно – вы можете использовать их одновременно или только один из них.

1. Общая webhook‑интеграция
Этот блок предназначен для отправки событий (обнаружение/исчезновение объекта) на любой сервер по протоколу HTTP с JSON‑телом.
Поле Описание
Интеграция Вкл/Выкл – глобальное включение отправки событий.
Отправлять detected_on Если включено, при появлении объекта будет отправлен POST‑запрос.
Отправлять detected_off Если включено, при исчезновении объекта будет отправлен POST‑запрос.
Антидребезг событий (мс) Минимальное время между отправками одного типа события (чтобы избежать лавины уведомлений при быстрых изменениях).
Webhook URL Адрес вашего сервера, куда будут отправляться данные (например, https://your-server.com/endpoint).
Token (Bearer) Опциональный токен для авторизации. Если заполнен, будет добавлен заголовок Authorization: Bearer <токен>.
Формат JSON (отправляется в теле POST‑запроса):
json
{
«event»: «detected_on», // или «detected_off»
«device_id»: «LEDSteps_A1B2C3»,
«device_name»: «LEDSteps-UZ»,
«sensor_mode»: 0, // 0=Normal, 1=Turbo, 2=Turbo_Maximum
«distance_cm»: 45,
«valid»: true,
«detected»: true,
«ts_ms»: 123456789
}
Кнопки:
Сохранить – записать настройки общей интеграции (все поля этого блока и блока Алисы сохраняются вместе).
Тест webhook – отправить тестовое событие (тип detected_off) без изменения реального состояния датчика. Удобно для проверки доступности сервера.
Тест ON – отправить событие detected_on с текущим расстоянием.
Тест OFF – отправить событие detected_off с текущим расстоянием.
2. Яндекс.Алиса (голосовые уведомления)
Этот блок позволяет отправлять уведомления в Яндекс.Алису только при событии «обнаружено» (при переходе из «не обнаружено» в «обнаружено»). Для этого требуется собственный сервер-посредник, который примет запрос от датчика и вызовет API Яндекс.Диалогов. В поле URL указывается адрес вашего сервера.
Поле Описание
Уведомления Алисы Вкл/Выкл – включить/отключить отправку уведомлений в Алису.
Токен (Bearer) Bearer‑токен для авторизации на вашем сервере (или для прямого вызова API Алисы, если настроено).
URL для отправки Адрес, куда будет отправлен POST‑запрос при срабатывании датчика.
Текст голосового сообщения Текст, который будет передан в поле message JSON‑запроса. По умолчанию «Датчик сработал».
Формат JSON, отправляемый на указанный URL:
json
{
«message»: «Датчик сработал»,
«device_id»: «LEDSteps_A1B2C3»,
«device_name»: «LEDSteps-UZ»,
«distance_cm»: 45
}
Кнопки:
Сохранить Алиса – сохраняет настройки обоих блоков (все поля общей интеграции и Алисы).
Тест Алиса – отправляет тестовое уведомление с текущим расстоянием. Полезно для проверки работоспособности сервера.
Особенности работы
Совместная работа: вы можете одновременно использовать общую webhook‑интеграцию и уведомления в Алису. Они работают независимо.
Приоритет: события отправляются сразу после срабатывания датчика (после подтверждения Confirm ON/OFF). Для Алисы отправка происходит только при переходе в состояние «обнаружено».
Антидребезг: для общей интеграции действует настраиваемый антидребезг (задержка между отправками одного типа). Для Алисы антидребезг не применяется, но сообщение отправляется только один раз при появлении объекта.
Сохранить: кнопки «Сохранить» в общем блоке и «Сохранить Алиса» выполняют одно и то же действие – сохраняют все поля вкладки (оба блока).
Пример настройки для Алисы
Создайте простой сервер (например, на Python с Flask) или используйте готовое решение, которое принимает POST‑запросы от датчика и вызывает API Яндекс.Диалогов.
Укажите в поле URL адрес вашего сервера (например, https://my-server.com/alice).
При необходимости заполните Токен (Bearer) – он будет добавлен в заголовок запроса.
Установите желаемый текст сообщения (например, «Внимание, датчик сработал!»).
Нажмите «Сохранить Алиса» или «Сохранить».
Проверьте работу кнопкой «Тест Алиса».
Если сервер настроен корректно, при срабатывании датчика вы услышите голосовое уведомление от Алисы (или другой голосовой помощник, если вы интегрировали его через свой сервер).
Устранение неполадок
Проблема Решение
Тестовые кнопки не работают — Проверьте, что введены корректные URL и токены. В Serial Monitor (подключение по USB) выводятся ошибки соединения.
Алиса не отвечает — Убедитесь, что ваш сервер доступен из интернета и правильно обрабатывает запросы. Проверьте логи сервера.
События не отправляются — Убедитесь, что интеграция включена (Интеграция = Вкл для общего webhook, Уведомления Алисы = Вкл для Алисы). Также проверьте, что датчик находится в зоне действия и порог срабатывания настроен правильно. Сообщения дублируются — Увеличьте Антидребезг событий (мс) для общей интеграции. Для Алисы дублирования не должно быть, так как она отправляется только один раз при переходе.
- Вкладка «Система»
Общие настройки устройства:

Имя устройства – произвольное имя, используется в webhook-запросах.
ID устройства – уникальный идентификатор, генерируется по MAC-адресу (только для чтения).
Кнопки:
Сохранить – применить новое имя.
Перезагрузка – перезапустить устройство.
Сброс – сбросить все настройки (датчик, интеграция, имя, Wi‑Fi) к заводским и перезагрузиться.
- Вкладка «Wi‑Fi»
Настройка сетевого подключения:

AP SSID / AP пароль – данные собственной точки доступа (заданы по умолчанию, можно изменить только в коде).
STA SSID / STA пароль – данные вашего домашнего роутера (Wi‑Fi, к которому нужно подключиться).
Сканировать сети – получить список доступных сетей. При выборе сети автоматически подставятся SSID и BSSID/канал.
Сохранить Wi‑Fi – записать настройки и переключить устройство в режим клиента (STA).
Переподключить STA – повторно попытаться подключиться к сохранённой сети (без изменения данных).
Сброс до AP-only – удалить настройки STA и перезагрузиться в режим точки доступа.
После успешного подключения к роутеру устройство получит IP‑адрес (выводится в Serial Monitor) и перестанет транслировать точку доступа LEDSteps-UZ. Для управления им используйте полученный IP в браузере.
Индикация светодиодов
Светодиод Режим Что означает
LED_WIFI Медленно мигает (1 Гц) Режим точки доступа (AP), ожидание подключения
Быстро мигает (5 Гц) Попытка подключения к роутеру (STA) — Горит постоянно — Успешное подключение к роутеру, AP отключена
Режим 1; LED_Сигнал выхода — Горит Объект обнаружен (расстояние < порога)
Горит (в тесте) Тестовая активация (2 секунды)
Режим 2 (необходимо сделать доработку датчика согласно приложенной инструкции); LED_Сигнал выхода — Кратковременно (1 сек) Импульс при каждом обнаружении (от момента срабатывания)
Горит (в тесте) Тестовая активация (2 секунды)
6. Кнопка управления
Короткое нажатие (< 3 сек) – выводит диагностическую информацию в Serial Monitor (расстояние, состояние обнаружения, статус Wi‑Fi).Длинное нажатие (> 3 сек) – сброс настроек Wi‑Fi (STA) и перезагрузка. После этого устройство гарантированно вернётся в режим точки доступа.
Устранение неполадок
Не видно сети LEDSteps-UZ — Проверьте питание. Длинное нажатие кнопки – сброс настроек STA.
Веб‑страница не открывается. Убедитесь, что в браузере набран http://192.168.4.1, а не https. Проверьте IP телефона (должен быть 192.168.4.x).
Выход SIGNAL не срабатывает. Проверьте подключение к нагрузке. При тесте 2 секунд выход должен включаться.
Не отправляются webhook. Проверьте URL и токен. Нажмите «Тест webhook» – в Serial должна быть диагностика.
LEDSteps – надёжный помощник в автоматизации вашего пространства!