Есть велосипедный замок, который открывается по Bluetooth.Перед началом работы с блокировкой необходимо отправить набор байтов, в ответ на которые устройство должно вернуть ключ.Вот инструкция для составления набора байтов:
Документация для блокировки блокировки страницы 3-5.
На основании данных из таблицы значений, необходимых для получения ключа, получен массив таких значений:
FE 43 11 22 19 8A 60 65 7E 5C 46 41 8B F7 4D.
Я подписываюсь на уведомление и пишу этот комплект.Но после этого я не получаю никаких уведомлений.
rxBleConnection.setupNotification(UUID.fromString(BluetoothModel.NOTIFY))
.doOnSubscribe(disposable -> rxBleConnection.writeCharacteristic(UUID.fromString(BluetoothModel.WRITE), bt)
.subscribe(
characteristicValue -> {
Log.e("BLE++", "RESULT " + Arrays.toString(characteristicValue));
},
throwable -> {
System.out.println();
}))
.flatMap((Function<Observable<byte[]>, Observable<byte[]>>) observable -> observable)
.subscribe(new DisposableObserver<byte[]>() {
@Override
public void onNext(byte[] bytes) {
Log.e("BLE++", "NOTIFY " + Arrays.toString(bytes));
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});