Подключение
- Включите приёмник и найдите устройство
LoRa-RS485-<серийный номер>в приложении или BLE-клиенте. - Подключитесь к устройству.
- Для записи характеристик выполните сопряжение с PIN
123456. - Настройки передаются текстом UTF-8. Аппаратный ID читается как восьмизначное hex-число, а снимок датчиков имеет описанный ниже бинарный формат.
До присвоения серийного номера в имени используется младшая часть аппаратного ID. После записи серийного номера новое имя появится после перезапуска.
Стандартная информация об устройстве
Сервис Device Information: 180A.
| Характеристика | UUID | Доступ | Формат |
|---|---|---|---|
| Модель | 2A24 | Чтение | LoRa-MESH-RS485-Receiver |
| Серийный номер | 2A25 | Чтение | 0–65535 |
| Версия ПО | 2A26 | Чтение | Например 1.0.10 |
Сервис настройки
UUID сервиса: 7f510000-91b3-4a6f-9e67-4d4553485253.
| Параметр | UUID | Доступ | Допустимые значения |
|---|---|---|---|
| Серийный номер устройства | 7f510001-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 1–65535, записывается один раз |
| Аппаратный ID | 7f510002-91b3-4a6f-9e67-4d4553485253 | Чтение | 8 hex-символов |
| Количество датчиков | 7f510003-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 1–25 |
| Серийный номер заблокирован | 7f510004-91b3-4a6f-9e67-4d4553485253 | Чтение, уведомление | 0 или 1 |
| Текущие данные датчиков | 7f510005-91b3-4a6f-9e67-4d4553485253 | Чтение | Бинарный снимок v1, до 354 байт |
| Slave ID Modbus | 7f510010-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 1–247 |
| Скорость Modbus | 7f510011-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 9600, 19200, 38400, 115200 |
| Тайм-аут Modbus | 7f510012-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 0–65535 мс |
| Адрес приёмника LoRa | 7f510020-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 1–65535 |
| Канал LoRa | 7f510021-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 0–79 |
| Мощность LoRa | 7f510022-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | −9–+22 dBm |
| PAN ID LoRa | 7f510023-91b3-4a6f-9e67-4d4553485253 | Чтение, защищённая запись, уведомление | 0–65535 |
| Ключ LoRa | 7f510024-91b3-4a6f-9e67-4d4553485253 | Только защищённая запись | 0–65535 |
| Перезагрузка | 7f5100f0-91b3-4a6f-9e67-4d4553485253 | Только защищённая запись | Записать 1 |
| Результат операции | 7f5100ff-91b3-4a6f-9e67-4d4553485253 | Чтение, уведомление | Текстовый код результата |
Количество датчиков, Slave ID и тайм-аут применяются без перезапуска. Скорость Modbus и параметры LoRa сохраняются сразу, но начинают действовать после перезапуска. Ключ LoRa нельзя прочитать через BLE. Серийный номер после успешной записи блокируется; повторная запись возможна только после заводского сброса NVS.
При первом запуске v1.0.10 старый канал 80 автоматически заменяется на 79, а мощность 23–30 dBm — на аппаратный максимум 22 dBm. Остальные параметры LoRa сохраняются.
Текущие данные датчиков
Снимок начинается с четырёх байт: версия формата, настроенное количество датчиков, количество активных датчиков и число записей. Далее для каждого настроенного ID следует запись длиной 14 байт.
| Смещение | Размер | Значение |
|---|---|---|
| 0 | 1 | ID датчика |
| 1 | 1 | Флаги: bit 0 — ответ когда-либо был, bit 1 — активен сейчас |
| 2 | 1 | Тип датчика |
| 3 | 1 | RSSI, знаковое значение |
| 4 | 2 | Ток, мкА, little-endian |
| 6 | 2 | Напряжение, мВ, little-endian |
| 8 | 4 | Возраст последнего ответа, секунды, little-endian |
| 12 | 1 | Состояние датчика |
| 13 | 1 | Код ошибки |
Датчик считается активным, если последний корректный пакет принят не более 120 секунд назад. Android-приложение перечитывает снимок примерно раз в секунду.
Коды результата
После каждой записи прочитайте характеристику результата операции. Значение, начинающееся с OK:, означает успешное сохранение; ERR: указывает на неверный диапазон, заблокированный серийный номер или ошибку сохранения.
| Операция | Пример результата |
|---|---|
Адрес Modbus 41 | OK:slave_saved |
Скорость 115200 | OK:baud_saved_reboot |
| Параметры LoRa | OK:lora_saved_reboot |
| Перезагрузка | OK:rebooting |
| Повторная запись серийного номера | ERR:id_locked |