LittleBob
@LittleBob

Как правильно отправить команду на устройство по BluetoothLowEnergy?

Я успешно подключаюсь к устройству и получаю характеристику для записи, которые соответствуют uuid'ам в API
В API есть вот такой пример команды:
64be78627ef50757113845.png
Пробовал отправлять всяко по-разному, но получается какая-то ахинея. Основной вариант такой:
characteristic.writeType = BluetoothGattCharacteristic.WRITE_TYPE_DEFAULT
characteristic.setValue(byteArrayOf(0x50, 0x4c, 0x01, 0x10))
bluetoothGatt?.writeCharacteristic(characteristic)

Но, никакого ответа я не получаю. Точнее, срабатывает callBack "onCharacteristicWrite", а status: Int в нём соответствует длине массива байт, который я отправил.
Совершенно не понимаю в чём проблема, но основная теория - я как-то неправильно отправляю запрос. Но вся инфа по этому поводу, которая у меня есть - на скрине.
(Подключение успешно, сервис и характеристику, которой доступно чтение и запись тоже получаю успешно)*
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ответы на вопрос 1
402d
@402d
начинал с бейсика на УКНЦ в 1988
Имхо минимальный пакет 6 байт. Попробуй два зеро байта длины нагрузки добавить к запросу статуса. И ахз как там код команды идёт. Не прокатит младший, старший, то поменяй местами
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы