Name of devices not available in the device list

I'm developing an application to read data from an ESP32S3 Zero. I'm using the NimBLEDevice library. As you can see in the image, when I display the device list, the name of my device doesn't appear , others appear. This would be essential for me, as I'll have several similar devices with different names in the same area, and I need to differentiate them by name, since the MAC address isn't useful. I'm using the BluetoothLE extension 20240822.
If I connect using the MAC address, I connect correctly and read the data without issue, and I can display it in a text field.


With this other application the Name can be seen defined so I understand that it is a problem in the smartphone application.

I would appreciate any help on how to get the names of all the devices.

What about if you fill the listpicker elements with :
image
(not tested, just and idea..).
Of course I suppose that in your ESP32 code you have given a meaningful name to the BT server, like:

#include <BluetoothSerial.h>
BluetoothSerial SerialBT;
SerialBT.begin("TRIPMaster"); // name to be shown in the devices list

Hoping it can help.

The result is an empty list. I understand little about BLE, but I assume it should be previously connected to a specific device.
Regarding the name in the NimBLEDevice library, it's used a little differently:
NimBLEDevice::init("V:01"); in my case. As you can see, it corresponds to the value read in the second image. Also it is not Bluetooth serial but BLE
Thanks for your comments.

Dear @Miguel_Angel_Torra_R,
yes I understand that it's not the classic BT in your ESP32, but it was just to say that you should find a "name" in your devices list, if you have set a name in the ESP32 code. Anyway, you have perfectly understodd what I meant :hugs:

"The result is an empty list". This isn't exactly what your picture shows: the list of available devices is full of devices, but the "names" aren't displayed, as you said in your first post. To this purpose (and since you have a BLE) I suggested you to show the AdvertiserNames in the list picker elements: did you try this hypotesis ? (I'mnot a guru in BLE, but it worths a try...).
And, please verify you're using the latest version of the extension, here:

https://community.appinventor.mit.edu/uploads/short-url/ylaGF5c9aUfubvf3UJTjdsVvSf6.aix

as per:

You could also take a look here:

Best wishes !!!

EDIT: pelase don't forget to allow the geoloc permission, at system level, to your app, otherwise the BT is not allowed to work (thanks to Google's restrictions)

EDIT II:
the annexed files are an example that I tested (Android 9, Lenovo PAD 8", ESP32Dev module) some time ago. Maybe they could help...
ESP32_BLE.ino (4.4 KB)

BLE_Test.aia (254.8 KB)

EDIT III:
in GutHub:

Hi, thanks again. I'm continuing to investigate, and I see that once connected to the device, if I request the device name, I get an error because it's an empty element and doesn't contain any text. However, if I read the corresponding position, the name is readable.

I also see that all the feature lists are defined as unknown. I think this is the problem, but I'm not sure why.

Greetings

Dear @Miguel_Angel_Torra_R,
I'm awfully sorry but, as I've said, I'm not a BLE guru :disappointed_relieved:
Probably other PU's (or even @ewpatton ) can tell you more...
Best wishes.

PS: but have you tried my .aia ? I see that it seems that the error message is related to an "unknown characteristic". What happens if you change the characteristic UUID ?

No, I believe that the problem is centered in the general characteristics of access which is a generic service and by which the UUIDs are its own known. The UUID of the service accesses the data is not necessary, it will work correctly.