OpenBluetoothToolbox / SimpleBLE

SimpleBLE - the all-in-one Bluetooth library for MacOS, iOS, Windows, Linux and Android.
https://www.simpleble.org
Other
655 stars 110 forks source link

Server device name not always displayed when scanning. (Name length problem) #271

Open Kevin-Dimmer opened 10 months ago

Kevin-Dimmer commented 10 months ago

Hi

SimpleBLE seems to handle the server device name inconsistently.

e.g. Using example_notify_c.exe on the PC Using device info & battery services on the server. Top found device: 12345678901234567890 [68:27:19:e9:cc:00] (The 20 byte long name is displayed correctly)

As above but added a private service and 2 characteristics Top found device: [68:27:19:e9:cc:00] (Finds the MAC address but the name is not displayed at all)

Reduce the name length to 8 bytes Top found device: 12345678 [68:27:19:e9:cc:00] (and the library displays the name again)

I can't seem to pin down exactly what the max name length is, but as my example shows simpleBLE does seem to handle it inconsistently. simpleBLE reports it ok when I don't have the private Service defined, and every other scanner I test (Android & PC) also reports the longer name ok when the private service is defined.

Background, I am using an embedded Microchip RN4020 BLE module, and their documentation says the name field can be no longer than 20 bytes. PC is a dell running WIN 11. This feels like memory overlap or corruption as the longer name isn't even shown truncated.

Thanks for a great solution to BLE interfacing.

kdewald commented 1 month ago

This might be a caching issue, I'll look into it in our next development cycle.