diff --git a/INSTRUCTION.md b/INSTRUCTION.md index 5697d1b..e192871 100644 --- a/INSTRUCTION.md +++ b/INSTRUCTION.md @@ -116,7 +116,10 @@ All commands are processed in `onGroupDataRecv()`: | `status` | report state | `status:armed/off temp:±X.XC hall:trig/ok motion:trig/ok bat:X.XXV/USB` | | `ver` | build date | `build:Mon DD YYYY HH:MM:SS` | | `scan` | noise floor | `noise:-XXXdBm` | -| `canal ` | change channel and reboot | `canal test 5674 ok` | +| `uptime` | device uptime | `uptime:1d 3h 15m` | +| `kontrol ` | auto-status every N min | `kontrol 60 min ok` | +| `kontrol off` | disable auto-status | `kontrol off` | +| `reboot` | reboot device | `rebooting` | ### Response Delay @@ -124,6 +127,12 @@ All command responses are sent with a **5-second delay** (non-blocking, via `def The action (relay toggle, armed state change) happens immediately — only the reply text is deferred. Alerts (`alert:hall`, `alert:motion`) and startup (`poweron`) are sent immediately without delay. +### Special Commands + +- **`reboot`** — sends `rebooting` immediately (not deferred), blinks LED 5 times, then `NVIC_SystemReset()`. +- **`uptime`** — calculates uptime from `g_boot_time` (set at boot). Format: `uptime:1d 3h 15m` (days/hours/minutes). +- **`kontrol `** — sets `g_auto_status_interval = min * 60000`. In `loop()`, when `millis() - g_last_auto_status >= interval`, sends status. Range: 1–1440 minutes. + ### Auto-Sent Messages - **Startup:** `poweron Mon DD YYYY HH:MM:SS` — sent 10s after boot. - **Hall alert:** `alert:hall` — when armed and reed opens. diff --git a/README.md b/README.md index bc0fc25..b73624d 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,10 @@ LoRa mesh-устройство охраны на базе nRF52840 (ProMicro) и | `status` | Состояние устройства (включая bat) | | `ver` | Версия прошивки | | `scan` | Уровень шума в эфире | -| `canal ` | Сменить канал и перезагрузиться | +| `uptime` | Время работы | +| `kontrol ` | Автоотправка статуса каждые N мин | +| `kontrol off` | Отключить автоотправку | +| `reboot` | Перезагрузить устройство | | `help` | Список команд | ## Релизы diff --git a/USER_MANUAL.md b/USER_MANUAL.md index 9a50a2a..e27f4a8 100644 --- a/USER_MANUAL.md +++ b/USER_MANUAL.md @@ -34,7 +34,10 @@ Security Node — LoRa mesh-устройство, которое следит з | `status` | Показать состояние устройства | `status:armed temp:+23.5C hall:ok motion:trig bat:4.12V` | | `ver` | Версия прошивки (дата сборки) | `build:Jul 21 2026 15:30:00` | | `scan` | Измерить уровень шума в эфире | `noise:-112dBm` | -| `canal <имя> <пароль>` | Сменить канал и перезагрузиться | `canal test 5674 ok` | +| `uptime` | Время работы устройства | `uptime:1d 3h 15m` | +| `kontrol <мин>` | Автоотправка статуса каждые N мин | `kontrol 60 min ok` | +| `kontrol off` | Отключить автоотправку статуса | `kontrol off` | +| `reboot` | Перезагрузить устройство | `rebooting` | --- @@ -102,6 +105,20 @@ Security Node — LoRa mesh-устройство, которое следит з --- +## Автоотправка статуса (`kontrol`) + +`kontrol 60` — устройство будет само отправлять `status` каждые 60 минут. +`kontrol off` — отключить. Интервал от 1 до 1440 минут (1 минута — 24 часа). + +## Перезагрузка (`reboot`) + +`reboot` — устройство отправит `rebooting` и перезагрузится. + +## Время работы (`uptime`) + +`uptime` — показывает, сколько времени устройство работает без перезагрузки. +Пример: `uptime:1d 3h 15m` (1 день, 3 часа, 15 минут). + ## Смена канала (`canal`) По умолчанию канал формируется из пароля `"1234"`.