Arduino BLE library questions (scan, advertise, RSSI, address)

good morning everyones,
I am working with "Arduino Uno Wifi Rev 2" and "MKR 1010" with ARduinoBLE libraries.
My question is related to functionality of the libraries according to my project,
or standard function wit BLE libraries.

I am working with last libraries and firmware available from IDE (check result: PASSED)

  • Firmware versione installed: 1.3.0
  • WifiNINA 1.5.0
  • ArduinoBLE 1.1.2

I want to detect distance with RSSI from multiple devices scanning each others together..

  1. first, the best things would be to scan and advertise simultaneously for all devices.
    I guess not possibile, in effect making like following on setup:

BLE.setEventHandler(BLEDiscovered, bleCentralDiscoverHandler);
BLE.scanForName(device_name, true);
BLE.poll();
BLE.setLocalName(device_name);
BLE.setConnectable(false);
BLE.setAdvertisingInterval(160);
BLE.advertise();

lunching scan (central) and advertise (periferal) simultaneously, it will not work good as expected.
I Tried the intrucions above on 2 devices just for test: the two devices are able to scan each others for fews seconds, then modules stop. What happen on the modules?
Anyway I solved changing states consecutively:
1- first scanning
2- then stop scanning, start advertising
3- then stop advertising, restart scanning...
4- etc...
like that it works fine.
Just to know some further comments or suggestion.

  1. for RSSI value i had made several consideration and statistics. I would like to have some comments about:

I got RSSI value from device in advertising, my question on stability from device to device:
Already know about difficulty and precision due to environment or obstacles etc.. but apart from this,
Every board of the same type ("Arduino Uno Wifi Rev 2") or ("MKR 1010") transmit power at the same level?
It can be adjusted from software or it is adjusted via libraries function e.g. with BLE.begin() )?
It seems no function for that and automatically set, and this is a key point, if every board must be calibrated or power transmission is more or less the same.
Examples, if i will bought next year the same boards different lot production, transmission power will be
same from hordware setup or it is due to software initialization from ArduinoLE libraries?

  1. bluetooth address:
    i found on different arduino wifi i can set BLE local name. In my application local name for all devices are same and i scan for single local name with multiple device, and i can detect different device relating to address. NiNa ublox modules i think has different address for each boards i guess, Like MAC address. I am right?

thanks for your support

and last point:

  1. about advertise time setAdvertisingInterval().
    this is settable time interval on units of 0.625ms , default is 160 units = 100ms
    it is possibile to set also shorter interval and minimum recommended ?
    i know power consumption will be greather, but reducing the advertising time can be usefull.

Thanks