update docs: relay3/4 pins, inverted logic, all relays independent
This commit is contained in:
@@ -106,13 +106,17 @@ All commands are processed in `onGroupDataRecv()`:
|
|||||||
| Command | Action | Response |
|
| Command | Action | Response |
|
||||||
|---------|--------|----------|
|
|---------|--------|----------|
|
||||||
| `help` | list commands | `help:...` |
|
| `help` | list commands | `help:...` |
|
||||||
| `ohrana on` | arm, relay1 ON | `ohrana on ok` |
|
| `ohrana on` | arm | `ohrana on ok` |
|
||||||
| `ohrana off` | disarm, relay1 OFF | `ohrana off ok` |
|
| `ohrana off` | disarm | `ohrana off ok` |
|
||||||
| `relay1 on` | relay1 ON (direct) | `relay1 on ok` |
|
| `relay1 on` | relay1 ON (HIGH) | `relay1 on ok` |
|
||||||
| `relay1 off` | relay1 OFF (direct) | `relay1 off ok` |
|
| `relay1 off` | relay1 OFF (LOW) | `relay1 off ok` |
|
||||||
| `relay2 on` | relay2 ON | `relay2 on ok` |
|
| `relay2 on` | relay2 ON (HIGH) | `relay2 on ok` |
|
||||||
| `relay2 off` | relay2 OFF | `relay2 off ok` |
|
| `relay2 off` | relay2 OFF (LOW) | `relay2 off ok` |
|
||||||
| `relay` | state of both relays | `relay:1on 2off` |
|
| `relay3 on` | relay3 ON (HIGH) | `relay3 on ok` |
|
||||||
|
| `relay3 off` | relay3 OFF (LOW) | `relay3 off ok` |
|
||||||
|
| `relay4 on` | relay4 ON (HIGH) | `relay4 on ok` |
|
||||||
|
| `relay4 off` | relay4 OFF (LOW) | `relay4 off ok` |
|
||||||
|
| `relay` | state of all relays | `relay:1on 2off 3on 4off` |
|
||||||
| `status` | report state | `status:armed/off temp:±X.XC hall:trig/ok motion:trig/ok bat:X.XXV/USB` |
|
| `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` |
|
| `ver` | build date | `build:Mon DD YYYY HH:MM:SS` |
|
||||||
| `scan` | noise floor | `noise:-XXXdBm` |
|
| `scan` | noise floor | `noise:-XXXdBm` |
|
||||||
@@ -230,7 +234,7 @@ The LED blink (3 fast flashes) is the first thing in `onGroupDataRecv`. If LED d
|
|||||||
|
|
||||||
### Config persistent storage
|
### Config persistent storage
|
||||||
- `InternalFS` (LittleFS) on nRF52 internal flash.
|
- `InternalFS` (LittleFS) on nRF52 internal flash.
|
||||||
- `SecurityConfig`: armed + relay2 state saved as binary struct.
|
- `SecurityConfig`: armed + relay1/2/3/4 state saved as binary struct.
|
||||||
- File: `/security.cfg`, magic `0x53454355`.
|
- File: `/security.cfg`, magic `0x53454355`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ LoRa mesh-устройство охраны на базе nRF52840 (ProMicro) и
|
|||||||
|
|
||||||
## Возможности
|
## Возможности
|
||||||
|
|
||||||
- Управление двумя реле (охрана + независимое)
|
- Управление четырьмя реле
|
||||||
- Датчик Холла (геркон) — оповещение об открытии двери/окна
|
- Датчик Холла (геркон) — оповещение об открытии двери/окна
|
||||||
- PIR датчик движения
|
- PIR датчик движения
|
||||||
- DS18B20 температура
|
- DS18B20 температура
|
||||||
@@ -27,7 +27,9 @@ LoRa mesh-устройство охраны на базе nRF52840 (ProMicro) и
|
|||||||
| `ohrana off` | Выключить охрану |
|
| `ohrana off` | Выключить охрану |
|
||||||
| `relay1 on/off` | Управление реле 1 |
|
| `relay1 on/off` | Управление реле 1 |
|
||||||
| `relay2 on/off` | Управление реле 2 |
|
| `relay2 on/off` | Управление реле 2 |
|
||||||
| `relay` | Состояние обоих реле |
|
| `relay3 on/off` | Управление реле 3 |
|
||||||
|
| `relay4 on/off` | Управление реле 4 |
|
||||||
|
| `relay` | Состояние всех реле |
|
||||||
| `status` | Состояние устройства (включая bat) |
|
| `status` | Состояние устройства (включая bat) |
|
||||||
| `ver` | Версия прошивки |
|
| `ver` | Версия прошивки |
|
||||||
| `scan` | Уровень шума в эфире |
|
| `scan` | Уровень шума в эфире |
|
||||||
|
|||||||
@@ -24,13 +24,17 @@ Security Node — LoRa mesh-устройство, которое следит з
|
|||||||
| Команда | Что делает | Пример ответа |
|
| Команда | Что делает | Пример ответа |
|
||||||
|---------|-----------|---------------|
|
|---------|-----------|---------------|
|
||||||
| `help` | Список всех команд | `help:ohrana on,ohrana off,...` |
|
| `help` | Список всех команд | `help:ohrana on,ohrana off,...` |
|
||||||
| `ohrana on` | **Включить охрану** — датчики активны, реле 1 замкнуто | `ohrana on ok` |
|
| `ohrana on` | **Включить охрану** — датчики активны | `ohrana on ok` |
|
||||||
| `ohrana off` | **Выключить охрану** — датчики не активны, реле 1 разомкнуто | `ohrana off ok` |
|
| `ohrana off` | **Выключить охрану** — датчики не активны | `ohrana off ok` |
|
||||||
| `relay1 on` | Включить реле 1 (независимо от охраны) | `relay1 on ok` |
|
| `relay1 on` | Включить реле 1 | `relay1 on ok` |
|
||||||
| `relay1 off` | Выключить реле 1 | `relay1 off ok` |
|
| `relay1 off` | Выключить реле 1 | `relay1 off ok` |
|
||||||
| `relay2 on` | Включить реле 2 | `relay2 on ok` |
|
| `relay2 on` | Включить реле 2 | `relay2 on ok` |
|
||||||
| `relay2 off` | Выключить реле 2 | `relay2 off ok` |
|
| `relay2 off` | Выключить реле 2 | `relay2 off ok` |
|
||||||
| `relay` | Состояние обоих реле | `relay:1on 2off` |
|
| `relay3 on` | Включить реле 3 | `relay3 on ok` |
|
||||||
|
| `relay3 off` | Выключить реле 3 | `relay3 off ok` |
|
||||||
|
| `relay4 on` | Включить реле 4 | `relay4 on ok` |
|
||||||
|
| `relay4 off` | Выключить реле 4 | `relay4 off ok` |
|
||||||
|
| `relay` | Состояние всех реле | `relay:1on 2off 3on 4off` |
|
||||||
| `status` | Показать состояние устройства | `status:armed temp:+23.5C hall:ok motion:trig bat:4.12V` |
|
| `status` | Показать состояние устройства | `status:armed temp:+23.5C hall:ok motion:trig bat:4.12V` |
|
||||||
| `ver` | Версия прошивки (дата сборки) | `build:Jul 21 2026 15:30:00` |
|
| `ver` | Версия прошивки (дата сборки) | `build:Jul 21 2026 15:30:00` |
|
||||||
| `scan` | Измерить уровень шума в эфире | `noise:-112dBm` |
|
| `scan` | Измерить уровень шума в эфире | `noise:-112dBm` |
|
||||||
@@ -99,12 +103,13 @@ Security Node — LoRa mesh-устройство, которое следит з
|
|||||||
|
|
||||||
## Реле
|
## Реле
|
||||||
|
|
||||||
- **Реле 1** — управляется `ohrana on/off` и `relay1 on/off`.
|
Все реле независимы, состояние каждого сохраняется при перезагрузке.
|
||||||
Охрана включена (`ohrana on`): **замкнуто** (NC разомкнуты, NO замкнуты).
|
Логика: ON = высокий уровень (HIGH), OFF = низкий (LOW).
|
||||||
Охрана выключена (`ohrana off`): **разомкнуто**.
|
|
||||||
|
|
||||||
- **Реле 2** — независимое, только `relay2 on/off`.
|
- **Реле 1** (P0.20) — `relay1 on/off`
|
||||||
Состояние сохраняется при перезагрузке.
|
- **Реле 2** (P0.22) — `relay2 on/off`
|
||||||
|
- **Реле 3** (P0.24) — `relay3 on/off`
|
||||||
|
- **Реле 4** (P1.00) — `relay4 on/off`
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
40
WIRING.md
40
WIRING.md
@@ -11,8 +11,10 @@
|
|||||||
| 0 | **P0.08** | Геркон (reed switch) |
|
| 0 | **P0.08** | Геркон (reed switch) |
|
||||||
| 1 | **P0.06** | PIR датчик движения |
|
| 1 | **P0.06** | PIR датчик движения |
|
||||||
| 2 | **P0.17** | DS18B20 температура |
|
| 2 | **P0.17** | DS18B20 температура |
|
||||||
| 3 | **P0.20** | Реле 1 (охрана) |
|
| 3 | **P0.20** | Реле 1 |
|
||||||
| 4 | **P0.22** | Реле 2 |
|
| 4 | **P0.22** | Реле 2 |
|
||||||
|
| 5 | **P0.24** | Реле 3 |
|
||||||
|
| 6 | **P1.00** | Реле 4 |
|
||||||
| 10 | **P0.09** | SX1262 RST |
|
| 10 | **P0.09** | SX1262 RST |
|
||||||
| 11 | **P0.10** | SX1262 DIO1 |
|
| 11 | **P0.10** | SX1262 DIO1 |
|
||||||
| 12 | **P1.11** | SX1262 SCK |
|
| 12 | **P1.11** | SX1262 SCK |
|
||||||
@@ -89,7 +91,9 @@ P0.17 ────┤
|
|||||||
|
|
||||||
## Реле
|
## Реле
|
||||||
|
|
||||||
### Реле 1 (охрана) — P0.20
|
Логика: ON = HIGH, OFF = LOW.
|
||||||
|
|
||||||
|
### Реле 1 — P0.20
|
||||||
|
|
||||||
```
|
```
|
||||||
P0.20 ── IN1 релейного модуля
|
P0.20 ── IN1 релейного модуля
|
||||||
@@ -100,7 +104,7 @@ GND ── GND
|
|||||||
IN1 ── P0.20
|
IN1 ── P0.20
|
||||||
```
|
```
|
||||||
|
|
||||||
> Реле 1 управляется `ohrana on/off` и `relay1 on/off`.
|
> Реле 1 управляется `relay1 on/off`. Состояние сохраняется.
|
||||||
|
|
||||||
### Реле 2 — P0.22
|
### Реле 2 — P0.22
|
||||||
|
|
||||||
@@ -113,7 +117,33 @@ GND ── GND
|
|||||||
IN2 ── P0.22
|
IN2 ── P0.22
|
||||||
```
|
```
|
||||||
|
|
||||||
> Реле 2 управляется только `relay2 on/off`. Состояние сохраняется.
|
> Реле 2 управляется `relay2 on/off`. Состояние сохраняется.
|
||||||
|
|
||||||
|
### Реле 3 — P0.24
|
||||||
|
|
||||||
|
```
|
||||||
|
P0.24 ── IN3 релейного модуля
|
||||||
|
|
||||||
|
Релейный модуль:
|
||||||
|
VCC ── 5V
|
||||||
|
GND ── GND
|
||||||
|
IN3 ── P0.24
|
||||||
|
```
|
||||||
|
|
||||||
|
> Реле 3 управляется `relay3 on/off`. Состояние сохраняется.
|
||||||
|
|
||||||
|
### Реле 4 — P1.00
|
||||||
|
|
||||||
|
```
|
||||||
|
P1.00 ── IN4 релейного модуля
|
||||||
|
|
||||||
|
Релейный модуль:
|
||||||
|
VCC ── 5V
|
||||||
|
GND ── GND
|
||||||
|
IN4 ── P1.00
|
||||||
|
```
|
||||||
|
|
||||||
|
> Реле 4 управляется `relay4 on/off`. Состояние сохраняется.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -141,6 +171,8 @@ IN2 ── P0.22
|
|||||||
│ │ │
|
│ │ │
|
||||||
Геркон ──┤ P0.08│ P0.20 ─── Реле 1 │
|
Геркон ──┤ P0.08│ P0.20 ─── Реле 1 │
|
||||||
│ │ P0.22 ─── Реле 2 │
|
│ │ P0.22 ─── Реле 2 │
|
||||||
|
│ │ P0.24 ─── Реле 3 │
|
||||||
|
│ │ P1.00 ─── Реле 4 │
|
||||||
PIR ────┤ P0.06│ │
|
PIR ────┤ P0.06│ │
|
||||||
│ │ P0.15 ─── LED статуса│
|
│ │ P0.15 ─── LED статуса│
|
||||||
DS18B20 ───┤ P0.17│ │
|
DS18B20 ───┤ P0.17│ │
|
||||||
|
|||||||
Reference in New Issue
Block a user