Hi,
I have a platform.io project in which I'm trying to setup an iBeacon and it seems to work except the RSSI is 0.
Using different scanner applications I can see the generated iBeacon (right UUID, major, and minor)  but like I mentioned the RSSI is always 0.
I would appreciate any (general) pointers as to what could be the root cause. Also, if anyone has or knows of a working example I could use that.
Note that I also tried to use the NimBLE library with the same issue.
The relevant part of the code:
#include <BLEDevice.h>
#include <BLEServer.h>
#include <BLEBeacon.h>
#include <Ticker.h>
bool is_advertising;
Ticker switchAdertising;
BLEAdvertising *pAdvertising;
void setup_beacon()
{
  BLEDevice::init("BleBrain");
  BLEServer *pServer = BLEDevice::createServer();
  BLEBeacon myBeacon = BLEBeacon();
  myBeacon.setManufacturerId(0x4C00);
  myBeacon.setMajor(beacon.major);
  myBeacon.setMinor(beacon.minor);
  BLEUUID bleUUID = BLEUUID(IBEACON_UUID);
  bleUUID = bleUUID.to128();
  myBeacon.setProximityUUID(BLEUUID(bleUUID.getNative()->uuid.uuid128, 16, true));
  myBeacon.setSignalPower(0xc5);
  BLEAdvertisementData advertisementData;
  advertisementData.setFlags(0x1A);
  advertisementData.setManufacturerData(myBeacon.getData());
  pAdvertising = pServer->getAdvertising();
  pAdvertising->setAdvertisementData(advertisementData);
  pAdvertising->start();
  is_advertising = true;
};
void advertising_switch()
{
  if (is_advertising)
  {
    pAdvertising->stop();
  }  else {
    pAdvertising->start();
  }
};