# Security Mesh Node — Инструкция пользователя ## Обзор Security Node — LoRa mesh-устройство, которое следит за датчиками (геркон, PIR движение, температура) и управляет 2 реле. Работает по радиоканалу через MeshCore — без интернета, без Bluetooth, без проводов. Команды и оповещения передаются как текстовые сообщения по mesh-сети. --- ## Быстрый старт 1. Подайте питание (USB или батарея). 2. Подождите ~10 секунд — устройство отправит `poweron`. 3. Отправляйте команды с любого другого узла mesh. Все команды **не чувствительны к регистру**, лишние пробелы в конце игнорируются. **Префикс не обязателен** — работают и `"status"`, и `"Security: status"`. --- ## Команды | Команда | Что делает | Пример ответа | |---------|-----------|---------------| | `help` | Список всех команд | `help:ohrana on,ohrana off,...` | | `ohrana on` | **Включить охрану** — датчики активны, реле 1 замкнуто | `ohrana on ok` | | `ohrana off` | **Выключить охрану** — датчики не активны, реле 1 разомкнуто | `ohrana off ok` | | `relay1 on` | Включить реле 1 (независимо от охраны) | `relay1 on ok` | | `relay1 off` | Выключить реле 1 | `relay1 off ok` | | `relay2 on` | Включить реле 2 | `relay2 on ok` | | `relay2 off` | Выключить реле 2 | `relay2 off ok` | | `relay` | Состояние обоих реле | `relay:1on 2off` | | `status` | Показать состояние устройства | `status:armed temp:+23.5C hall:ok motion:trig bat:4.12V` | | `ver` | Версия прошивки (дата сборки) | `build:Jul 21 2026 15:30:00` | | `scan` | Измерить уровень шума в эфире | `noise:-112dBm` | | `snr` | RSSI и SNR последнего принятого пакета | `rssi:-78dBm snr:+6.5dB` | | `uptime` | Время работы устройства | `uptime:1d 3h 15m` | | `kontrol <мин>` | Автоотправка статуса каждые N мин | `kontrol 60 min ok` | | `kontrol off` | Отключить автоотправку статуса | `kontrol off` | | `reboot` | Перезагрузить устройство | `rebooting` | | `time` | Показать дату и время | `time:22.07.2026 11:00` | | `time s DD.MM.YYYY HH.MM` | Установить дату и время | `time set 22.07.2026 11.00` | --- ## Поля статуса Ответ: `status:armed/off temp:+XX.XC/N/A hall:trig/ok motion:trig/ok bat:X.XXV/USB` | Поле | Значение | |------|----------| | `status:armed` | Охрана включена (датчики активны) | | `status:off` | Охрана выключена | | `temp:+23.5C` | Температура с датчика DS18B20 | | `temp:N/A` | Датчик температуры не подключён | | `hall:ok` | Геркон замкнут (норма) | | `hall:trig` | Геркон разомкнулся (дверь/окно открыли) | | `motion:ok` | Движения нет | | `motion:trig` | Движение обнаружено | | `bat:4.12V` | Напряжение батареи | | `bat:USB` | Питание от USB (нет батареи) | --- ## Оповещения Когда охрана **включена** (`ohrana on`), устройство автоматически отправляет: | Оповещение | Что значит | |------------|-----------| | `alert:hall` | Геркон разомкнулся — дверь/окно открыли | | `alert:motion` | PIR датчик сработал — движение | Одно и то же оповещение не повторится раньше чем через **10 минут** (защита от дребезга). Оповещение сбрасывается автоматически, когда датчик возвращается в нормальное состояние. --- ## Сообщение при запуске Через ~10 секунд после подачи питания устройство отправляет: `poweron Jul 21 2026 15:30:00` Это подтверждает, что устройство включено и работает на текущем канале. --- ## Светодиод (LED на плате) | Режим | Что значит | |-------|-----------| | Не горит | Охрана выключена, нет активности | | Медленно мигает (1 сек) | **Охрана включена** | | 3 быстрых вспышки | Получена команда (любая) | | Часто мигает (100 мс) | **Ошибка радио** — аппаратная проблема | --- ## Реле - **Реле 1** — управляется `ohrana on/off` и `relay1 on/off`. Охрана включена (`ohrana on`): **замкнуто** (NC разомкнуты, NO замкнуты). Охрана выключена (`ohrana off`): **разомкнуто**. - **Реле 2** — независимое, только `relay2 on/off`. Состояние сохраняется при перезагрузке. --- ## Автоотправка статуса (`kontrol`) `kontrol 60` — устройство будет само отправлять `status` каждые 60 минут. `kontrol off` — отключить. Интервал от 1 до 1440 минут (1 минута — 24 часа). ## Качество сигнала (`snr`) `snr` — показывает RSSI (уровень сигнала в dBm) и SNR (соотношение сигнал/шум в dB) последнего принятого пакета. Полезно для оценки качества связи и при настройке антенны. Чем ближе RSSI к 0 и чем выше SNR — тем лучше. ## Синхронизация времени (`time`) `time` — показать текущее время устройства. `time s 22.07.2026 11.00` — установить дату и время. Формат: `time s DD.MM.YYYY HH.MM` Время используется для отметок в сообщениях. После перезагрузки сбрасывается (если нет внешнего RTC). ## Перезагрузка (`reboot`) `reboot` — устройство отправит `rebooting` и перезагрузится. ## Время работы (`uptime`) `uptime` — показывает, сколько времени устройство работает без перезагрузки. Пример: `uptime:1d 3h 15m` (1 день, 3 часа, 15 минут). --- ## Задержка ответа Ответ на любую команду приходит **через 5 секунд**. Само действие (включение реле, смена охраны) выполняется мгновенно, но ответ отправляется с задержкой. Оповещения и `poweron` отправляются без задержки. ## Советы - Если команда не получила ответа: проверьте канал, питание, дальность связи. LED должен мигнуть 3 раза при получении команды — если не мигнул, сообщение не дошло. - Все ответы тоже передаются по mesh — они появятся в ленте сообщений вашего приложения. - `scan` выполняется около 1 секунды (20 замеров RSSI).