Склеивание с BluetoothLeGatt - PullRequest
0 голосов
/ 10 июня 2019

Модифицирую BluetoothLeGatt для звучания маяка Jaalee.Я могу подключиться к маяку, но не могу связать, чтобы написать характеристику звучания маяка.С NRF Connect и BLE Scanner я могу написать характеристику пароля для связи и записать характеристику для звука.Уверен, что моя проблема с моим модифицированным BluetoothLeGatt заключается в том, что он не записывает пароль, 0x666666, в маяк, так как я могу заставить звучать маяк с измененным BluetoothLeGatt, если я впервые соединяюсь с NFR connect или BLE сканером.

Я пробовал разные формы пароля, fff, 666666.

   // service sound
public void onClickWrite(View v){
    if(mBluetoothLeService != null) {
        mBluetoothLeService.writeCustomCharacteristic(0x02);
    }
}
// service login
public void onClickLogin(View v){
    if(mBluetoothLeService != null) {
        mBluetoothLeService.LoginCustomCharacteristic(0x666666);
    }
}
// activity sound
public void writeCustomCharacteristic(int value) {
    if (mBluetoothAdapter == null || mBluetoothGatt == null) {
        Log.w(TAG, "BluetoothAdapter not initialized");
        return;
    }
    /*check if the service is available on the device*/
    BluetoothGattService mCustomService = mBluetoothGatt.getService(UUID.fromString("00001802-0000-1000-8000-00805f9b34fb"));
    if(mCustomService == null){
        Log.w(TAG, "Custom BLE Service not found");
        return;
    }
    /*get the read characteristic from the service*/
    BluetoothGattCharacteristic mWriteCharacteristic = mCustomService.getCharacteristic(UUID.fromString("00002a06-0000-1000-8000-00805f9b34fb"));
    mWriteCharacteristic.setValue(value,android.bluetooth.BluetoothGattCharacteristic.FORMAT_UINT8,0);
    if(mBluetoothGatt.writeCharacteristic(mWriteCharacteristic) == false){
        Log.w(TAG, "Failed to write characteristic");
    }
}        
// activity login 
public void LoginCustomCharacteristic(int value) {
    if (mBluetoothAdapter == null || mBluetoothGatt == null) {
        Log.w(TAG, "BluetoothAdapter not initialized");
        return;
    }
    /*check if the service is available on the device*/
    BluetoothGattService mCustomService = mBluetoothGatt.getService(UUID.fromString("0000fff0-0000-1000-8000-00805f9b34fb"));
    if(mCustomService == null){
        Log.w(TAG, "Custom BLE Service not found");
        return;
    }
/*get the read characteristic from the service*/
BluetoothGattCharacteristic mWriteCharacteristic = mCustomService.getCharacteristic(UUID.fromString("0000fff1-0000-1000-8000-00805f9b34fb"));    
mWriteCharacteristic.setValue(value,android.bluetooth.BluetoothGattCharacteristic.FORMAT_UINT8,0);

    if(mBluetoothGatt.writeCharacteristic(mWriteCharacteristic) == false){
        Log.w(TAG, "Failed to write characteristic");
    } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...