Напишите BLE gatt characteristi c на Android - статус ошибки 255 - PullRequest
0 голосов
/ 03 августа 2020

Экспериментируя с образцом kotlin программы, пытаясь читать / записывать устройство BLE с каналами из 0-7

При чтении он дает мне следующее значение: (0x06)

onCharacteristicRead(), status=0, value=[uuid='ba7e7814-5b67-43d3-bd80-e72cc83ae801', hexValue=[06]]

но при попытке написать тот же вывод, который он дает мне, он дает мне ошибку GATT 255, вне допустимого диапазона:

CharacteristicWriteOperation{MAC='00:A0:50:E8:78:86', characteristic=[uuid='ba7e7814-5b67-43d3-bd80-e72cc83ae801', hexValue=[30, 36]]}

onCharacteristicWrite(), status=255, value=[uuid='ba7e7814-5b67-43d3-bd80-e72cc83ae801']

1 Ответ

0 голосов
/ 10 августа 2020

Что вы читаете: [0x06]

onCharacteristicRead(), status=0, value=[uuid='ba7e7814-5b67-43d3-bd80-e72cc83ae801', hexValue=[06]]

Что вы написали: [0x30, 0x36] (что может соответствовать строке «06», поскольку шестнадцатеричное значение ASCII для '0' равно 0x30, а для '6' - это 0x36)

CharacteristicWriteOperation{MAC='00:A0:50:E8:78:86', characteristic=[uuid='ba7e7814-5b67-43d3-bd80-e72cc83ae801', hexValue=[30, 36]]}

Вероятно, вы захотите записать шестнадцатеричное значение 0x06, а не строку "06"

Статус 255 - это GATT_OUT_OF_RANGE который означает, что записанное значение находится за пределами диапазона, принятого вашим периферийным устройством .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...