title: writing to GATT descriptor produces write not permitted error
body: <p>I'm using java TinyB to connect to a <a href="https://github.com/DI-GROUP/TimeFlip.Docs/blob/master/Hardware/BLE_device_commutication_protocol_v3.0_en.md" rel="nofollow noreferrer">TimeFlip</a> device with Bluetooth LE.</p>
  <p>When trying to write to the Descriptor of the Facet Characteristic to recieve notifications I always get the error:</p>
  <p>Exception in thread &quot;main&quot; tinyb.BluetoothException: GDBus.Error:org.bluez.Error.NotPermitted: Write not permitted</p>
  <p>But when I write to the same Descriptor using gatttool it works and i get the notifications.</p>
  <pre><code>        BluetoothGattService timeFlipService = device.find(&quot;f1196f50-71a4-11e6-bdf4-0800200c9a66&quot;, Duration.ofSeconds(5));
          BluetoothGattCharacteristic facets = timeFlipService.find(&quot;f1196f52-71a4-11e6-bdf4-0800200c9a66&quot;, Duration.ofSeconds(5));
          BluetoothGattDescriptor facetsConfig = facets.find(&quot;00002902-0000-1000-8000-00805f9b34fb&quot;, Duration.ofSeconds(5));  // like this ==&gt; always null, custom method works???
  
          if(!login(timeFlipService)) {log.error(&quot;login to TimeFlip failed&quot;);}
  
          try{
              byte[] enableNotifications = {0x01, 0x00};
              facetsConfig.writeValue(enableNotifications);           //when facesConfig assigned with custom method throws write not permitted error
              facets.enableValueNotifications(new FacetNotification());
          }
          catch(NullPointerException e){
              log.error(&quot;NullPointerException in &quot; + (facets == null ? &quot;facet characteristic&quot; : &quot;facet descriptor&quot;));
          }
          catch(BluetoothException b){
              log.error(b.getMessage());
          }
      }
  </code></pre>
  <p>The mentioned &quot;custom method&quot; just gets all Descriptor from a characteristic and returns the one matching a given uuid, as the find() method times out every time.</p>