Пакет BLE Eddystone — RSSI, передача и расстояние

#bluetooth-lowenergy

#bluetooth с низким энергопотреблением

Вопрос:

Допустим, это пакет….

043e2b020103018749c6edbfd81f0201060303aafe1716aafe 00 d8 8b9cc73c3ae747ef65bc0000000015d20000bf

Как считывать RSSI и TX из пакета eddystone UID? Я понимаю, что первый байт после aafe указывает тип пакета, а следующий байт указывает Tx. Но когда я преобразую его в десятичное число, я получаю 216, что не может быть мощностью, и если я добавлю два, я получу -40. Так что это RSSI или Tx. Если мне нужно получить оба, как я могу это сделать? Как я могу рассчитать расстояние от них?

Кроме того, что это за первые 25 байтов и как их декодировать?

043e2b020103018749c6edbfd81f0201060303aafe1716aafe

Ответ №1:

Просмотр шпаргалки Джоса Райка по Beacon может помочь вам немного расшифровать это:

https://twitter.com/josryke/status/627851131046219776

Вторая полезная вещь, которую нужно знать, это то, что aafe появляется дважды. Число слева — это тип данных.

В спецификации Bluetooth core описывается, как рекламные структуры повторяются с длиной, типом рекламы, рекламными данными

Структура рекламы