# BLEdescriptor readValue() gives an error indicating UUID of characteristic not the descriptor

**URL:** <https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725>\
**Category:** Developers\
**Tags:** ble\
**Created:** [February 26, 2026, 4:31pm UTC](https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725 "2026-02-26T16:31:56Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Martin\_Verbeek](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/martin_verbeek/32/10641_2.png) [@Martin\_Verbeek](https://community.homey.app/u/Martin_Verbeek)\
**Post date:** [February 26, 2026, 4:31pm UTC](https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725/1 "2026-02-26T16:31:56Z")

</div>

I need to read a value using a BLE Descriptor (readValue). But it returns a not found condition in an app, but it does not in the devtools. I know devtools is using another API.

Anyone used this [BleDescriptor - Homey Apps SDK v3](https://apps-sdk-v3.developer.homey.app/BleDescriptor.html#readValue) call in an app and got a result?

Code snippet of the used code… it finds the BLEDescriptor, then the readValue gives an error

**Descriptor Not Found: 0000004f0000100080000026bb765291** which is the UUID of the BLEcharacteristic, not the UUID of the BLEdescriptor.

```auto
        const characteristicInstanceIdUuid = BLEUtils.uuidToNobleUuid(BLEConstants.CharacteristicInstanceIdUuid);

        try {
            if (!this.peripheral.isConnected) await this.peripheral.connect();
            const descriptors = await characteristic.discoverDescriptors();
            const descriptor = descriptors.find((d) => {
                return d.uuid === characteristicInstanceIdUuid;
            });

            this.homey.log('Found IID descriptor for', descriptors.length, descriptor);
            const data = await descriptor.readValue();
            this.homey.log('Read IID', data.readUInt16LE(0));

            return data.readUInt16LE(0);
        } catch (err) {
            this.homey.error('Error getting IID', err);
            throw err;
        }

```

---

<div class="post-metadata">

**Author:** ![smarthomesven](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/smarthomesven/32/79712_2.png) [@smarthomesven](https://community.homey.app/u/smarthomesven)\
**Post date:** [February 26, 2026, 5:58pm UTC](https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725/2 "2026-02-26T17:58:40Z")

</div>

That seems almost identical to this issue that I reported:

> [@BLE characteristic subscribeToNotifications() method not working](https://community.homey.app/t/ble-characteristic-subscribetonotifications-method-not-working/147958):
>
> I’m building an app for iTAG keyfinders. I built a test snippet to check if everything works, but subscribing to notifications failed. I then asked Claude to check my code for issues, but after many attempts it still didn’t work. The error message: Error: Cannot read property 'characteristics' of undefined at Remote Process at HomeyClient.emit (/opt/homey-client/system/manager/ManagerApps/AppProcess/node\_modules/@athombv/homey-apps-sdk-v3/lib/HomeyClient.js:1:312) at Object.emit (/o…

But in that case it was “Characteristic not found” instead of “Descriptor not found”

---

<div class="post-metadata">

**Author:** ![Martin\_Verbeek](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/martin_verbeek/32/10641_2.png) [@Martin\_Verbeek](https://community.homey.app/u/Martin_Verbeek)\
**Post date:** [February 26, 2026, 6:26pm UTC](https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725/4 "2026-02-26T18:26:24Z")

</div>

Well… i will need subscribetonotifications as well after this works… it works in the WebAPI that is running devtools, so it can be made to work if Athom repairs the code…

---

<div class="post-metadata">

**Author:** ![smarthomesven](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/smarthomesven/32/79712_2.png) [@smarthomesven](https://community.homey.app/u/smarthomesven)\
**Post date:** [February 26, 2026, 8:28pm UTC](https://community.homey.app/t/bledescriptor-readvalue-gives-an-error-indicating-uuid-of-characteristic-not-the-descriptor/151725/5 "2026-02-26T20:28:17Z")

</div>

Yes, same with me. Works in Developer Tools but not when calling it from the Homey app
