Документация по протоколу SAUK Beacon

Документация по протоколу SAUK Beacon

1. Демонстрация в nRF Connect

Ниже представлены скриншоты из демонстрационного программного обеспечения nRF Connect, показывающие обнаружение и анализ SAUK Beacon:

nRF Connect - Детали SAUK Beacon
Рис. 1: Детали устройства SAUK Beacon в nRF Connect
nRF Connect - Raw данные SAUK Beacon
Рис. 2: Raw данные рекламного пакета в nRF Connect

sauk ble
BLE-маяки SAUK Beacon можно сконфигурировать и протестировать все их функции в бесплатном программном обеспечении SAUK BeaconManager

Ключевая информация из nRF Connect:

Параметр Значение
Device name SAUK-C40308 (Beacon)
MAC address DE:34:9F:63:72:CB
RSSI -68 dBm
Device type LE only
Advertising type Legacy
Flags LE General Discoverable, BREDR Not Supported
Company Reserved ID <0xFFFFFFFF>
UUID ea0cca2a-0101-0100-a1b1-8ce4bc06c19f
Major 1
Minor 2
RSSI at 1m -55 dBm

Ключевая информация по идентификации BLE-маячка и получению дополнительных данных из его памяти:

Есть два способа идентификации BLE-маячков:
  • при активном сканировании,
  • при пассивном сканировании.

Ключевые различия в способах идентификации:
  • При активном сканировании структура рекламы BLE-маячка SAUK возвращает данные производителя (UUID, версию, калибровочное значение RSSI на дистанции 1 метр), а также полное имя устройства в формате по умолчанию "SAUK-серийный номер маячка", а также остаточный уровень заряда батареи и сопроводительную информацию от встроенных сенсоров. Это обусловлено тем, что при активном сканировании маячок BLE возвращает данные, помеченные во внутренней прошивке как передающиеся только по запросу "Scan Response".
  • При пассивном сканировании структура рекламы возвращает только данные производителя.

2. Пример рекламного сообщения SAUK Beacon

Флаги BLE
ID производителя
UUID
Версия ПО
RSSI
Название устройства
Заряд батареи
MAC адрес
Интервал рекламы
Мощность
Данные сенсоров

Описание: Полный пример рекламного сообщения SAUK Beacon в формате RAW DATA с цветовой кодировкой полей.

0x020106 1AFF FFFF 0215 EA0CCA2A01010100A1B18CE4BC06C19F 0001 0002 C9 0D09 5341554B2D43343033303800 1016 4252 00 63 DE349F6372CB 01 00 00

Комментарий 1: Тип маяка 0x02 - Beacon type (iBeacon-compatible type), 0x15 - длина последовательности, с данными производителя UUID + версия + калибровочный RSSI, всего 21 байт.

Комментарий 2: 0x0D - длина имени маяка 13 байт, 0x09 - секция Complete Local Name, в которой транслируется имя маяка.

Комментарий 3: 0x4252 - UUID (16 bit) кастомный проприетарный идентификатор сервиса SAUK, содержащий специфические данные.

3. Структура рекламного сообщения SAUK Beacon

Обобщенный разбор структуры стандартного рекламного сообщения SAUK Beacon:

Длина Тип Данные
0x02 0x01 (BLE Flags) 0x06
0x1A 0xFF (Manufacturer Specific Data) 0xFFFF0215EA0CCA2A01010100A1B18CE4BC06C19F00010002C9
0x0D 0x09 (Complete Local Name) 0x5341554B2D43343033303800
0x10 0x16 (Custom Service Data) 0x42520063DE349F6372CB0101000000

4. Детальный разбор структуры рекламного сообщения

0x020106

Длина: 3 байта

Описание: Сервисные флаги Bluetooth low energy

0xFFFF

Длина: 2 байта

Описание: ID производителя

Возможные значения:

  • По умолчанию установлен 0xFFFF (Beacon)
  • Опционально 0x004C little-endian (Apple Company ID iBeacon)
0xEA0CCA2A01010100A1B18CE4BC06C19F

Длина: 16 байт

Описание: UUID: EA0CCA2A-0101-0100-A1B1-8CE4BC06C19F

Структура UUID:

  • Префикс SAUK: 0xEA0CCA2A
  • Версия схемотехнической реализации Hardware: 0x0101
0x0001

Длина: 2 байта

Описание: Версия программного обеспечения Software Major

0x0002

Длина: 2 байта

Описание: Версия программного обеспечения Software Minor

0xC9

Длина: 1 байт

Описание: Калибровочное значение RSSI на дистанции 1 метр: минус 55 dB (HEX = 0xC9 переводим в DEC = 201, вычитаем 256 => 201 - 256 = -55 dB)

0x5341554B2D43343033303800

Длина: 12 байт

Описание: Название маячка, рассылающего рекламу: SAUK-C40308

Примечания:

  • По умолчанию серийный номер уникален для каждого маячка
  • Название маячка может быть изменено
CUSTOM SERVICE DATA, байт №2. В примере 0x00

Комментарий: Для версий встроенного ПО 1.4 и выше

Длина: 1 байт

Описание набора опций:

  • 0x00 маяк без дополнительных опций,
  • 0x01 маяк с опцией "Сигнализация о вскрытии"

CUSTOM SERVICE DATA, байт №3. В примере 0x63

Длина: 1 байт

Описание: Процент заряда батареи: 99% (0x63 в шестнадцатиричном представлении соответствует 99 в десятичном)

0xDE349F6372CB

Длина: 6 байт

Описание: MAC адрес, в ходе эксплуатации изменен быть не может

0x01

Длина: 1 байт

Описание: Интервал выхода рекламы в эфир: 1 (250 мс)

Возможные значения:

Значение Интервал
06 10000 мс
05 5000 мс
04 2000 мс
03 1000 мс
02 750 мс
01 250 мс
00 100 мс
0x00

Длина: 1 байт

Описание: Коэффициент, характеризующий излучаемую мощность: 0 (для текущей версии константа, не настраивается)

0x060000

Длина: 3 байта

Описание: Резервный параметр - данные от встроенных сенсоров

5. Конфигурирование маячка через BLE-подключение

После выполнения подключения Connect между клиентом и маячком стартует таймаут 60 секунд. После окончания таймаута соединение будет автоматически разорвано с целью экономии энергии встроенной батарейки и с целью сброса соединений неактуальных клиентов.

Поведение светодиодной индикации

  • Короткая вспышка LED BLUE — при подключении клиента к маячку (connected).
  • Короткая вспышка LED GREEN — успешное обновление данных в памяти. Происходит при изменении:
    • смена пароля
  • Короткая вспышка LED GREEN и сразу LED BLUE — успешное обновление данных с перезапуском рекламы. Происходит при изменении:
    • изменение названия маячка,
    • изменение интервала рекламных сообщений,
    • изменение опорного значения RSSI для расчёта дальности,
    • изменение мощности излучения,
    • изменение версий Software major/minor,
    • GUID (UUID),
    • Изменение типа маячка Beacon | iBeacon.

Протокол настройки параметров

BLE Scanner - Конфигурирование SAUK Beacon
Рис. 3: Пример программного обеспечения BLE Scanner

Реализован байтовый вариант посылок от клиента к маячку — отправляется массив в виде байт. Например, проверка пароля: F300F306112233445566.

Общий формат команды:

F3 XX F3 LL DDDD...

Где XX - байт с номером команды, LL - длина информативной части (данных), DDDD... информативная часть (данные)

0x00 — Проверка пароля

F300F306XXXXXXXXXXXX, где X — HEX-символы (например, 000000000000 или 112233445566).

Длина команды: 10 байт. Длина пароля — 6 байт.

0x01 — Установка нового пароля

F301F306XXXXXXXXXXXX

Новый пароль должен быть задан только после авторизации командой 0x00 не позднее чем через 60 секунд. После таймаута флаг авторизации сбрасывается.

0x02 — Изменение UUID

F302F310XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Длина команды: 20 байт. Новый UUID — 16 байт.

0x03 — Изменение Software major

F303F302XXXX, например, версия 4278 → 10B6 (HEX).

Длина команды: 6 байт.

0x04 — Изменение Software minor

F304F302XXXX, например, 5527 → 1597.

Длина команды: 6 байт.

0x05 — Изменение названия маяка

F305F30CXXXXXXXXXXXXXXXXXXXXXXXX, например, 5341554B2D626C6500000000SAUK-ble.

Если все 12 байт = 000000000000000000000000, то выполняется фабричный сброс:

  • название → дефолтное (например, SAUK-6ADB4F),
  • пароль → 000000000000,
  • Software major/minor → заводские,
  • UUID → заводской.

0x06 — Мощность TX трансляции рекламы

F306F301XX, где:

XXМощность излучения
00-20 dBm
01-12 dBm
02-8 dBm
03-4 dBm
040 dBm
05+4 dBm

Длина команды: 5 байт.

0x07 — Изменение интервала рекламы

F307F301XX, где:

XXИнтервал
00100 мс
01250 мс
02750 мс
031000 мс
042000 мс
055000 мс
0610000 мс

Длина команды: 5 байт.

0x08 — Калибровочное значение RSSI на 1 м

Для вычисления удалённости маяка от шлюза.

0x17 — Управление периферией

F317F3XXXX:

  • 0100 — LED GREEN на 1 сек,
  • 0101 — LED RED на 1 сек,
  • 0102 — LED BLUE на 1 сек.

0x2F — Переключение типа маячка Beacon | iBeacon | Eddystone

F32FF301XX:

  • 00 — Beacon 0xFFFF,
  • 01 — iBeacon 0x4C00 или 0x004C в зависимости от порядка следования байт на клиенте,
  • 02 — Eddystone (в разработке).

Команды в разработке: 0x09 (изменение MAC).

Примечания

Формат данных: Все данные представлены в шестнадцатеричном формате (HEX).

Порядок байт: Для ID производителя Apple используется формат little-endian (0x004C).

Уникальность: MAC-адрес устройства не может быть изменен в ходе эксплуатации.

Изменяемые параметры: Название маячка может быть изменено, в отличие от MAC-адреса.

Совместимость: SAUK Beacon совместим со стандартными BLE сканерами, такими как nRF Connect, и может быть обнаружен любым устройством с поддержкой Bluetooth Low Energy.

Документация по протоколу SAUK Beacon © 2025

Россия, г. Москва, 
г. Зеленоград, проезд 4922, дом 4, строение 2. Технопарк "ЭЛМА". 
Подробнее...
SAUK© 2020 – 2026. Все тексты и изображения, представленные на сайте, являются интеллектуальной собственностью SAUK. Могут быть использованы только по письменному согласию SAUK. SAUK® является зарегистрированным торговым знаком.

Товары

Корзина пуста

Итого

Заказ