title: Making READ, WRITE and NOTIFY working on Android BLE (version 21 and above)
body: <p>In my application, I got the <strong>READ</strong> and <strong>WRITE</strong> to work on specific <code>BluetoothGattCharacteristic</code> objects. 
  The <code>BluetoothGattCallback</code> <code>onCharacteristicWrite</code> and <code>onCharacteristicRead</code> are properly called.
  I have then tried to setup the <strong>NOTIFY</strong> option so my Android app gets notified when a specific characteristic on the device changes.
  I have set this up via the following code:</p>
  
  <pre><code>// Local notifications
  mGatt.setCharacteristicNotification(statusTypeCharacteristic, notify);
  
  // Remote notifications
  BluetoothGattDescriptor desc = statusTypeCharacteristic.getDescriptor(UUID.fromString("00002902-0000-1000-8000-00805f9b34fb"));
  
  Log.d("Descriptor", desc.toString());
  
  boolean test;
  test = desc.setValue(BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE);  // return value = true
  test = mGatt.writeDescriptor(desc);  // return value = true
  </code></pre>
  
  <p>When the characteristic changes, the callback: <code>onCharacteristicChanged</code> is being called as expected</p>
  
  <p>However, now all <strong>READ</strong> and <strong>WRITE</strong> operations do not work anymore.
  When I comment the lines dealing with the descriptor, the <strong>READ</strong> and <strong>WRITE</strong> work again.</p>
  
  <p>A part I am very unclear is around the <code>UUID</code> used to get the descriptor. Is it correct? Should I scan instead all descriptors from the characteristic and enable notification on one? How do I know which one to set as I have multiple ones coming back?</p>