Monitoring regions with only uuid not work

Hi,
if i have:

        let beaconRegion = CLBeaconRegion(
        proximityUUID: NSUUID(UUIDString: "B9407F30-F5F8-466E-AFF9-25556B57FE6D")!,
        identifier: "region monitoring")
        self.beaconManager.startMonitoringForRegion(beaconRegion)

not work, but if i have

        let beaconRegion =CLBeaconRegion(
        proximityUUID: NSUUID(UUIDString: "B9407F30-F5F8-466E-AFF9-25556B57FE6D")!, major: 55555, minor: 11111,
        identifier: "region monitoring")

       self.beaconManager.startMonitoringForRegion(beaconRegion)

it works

Why?

Thanks

I did another test:
if there is a single beacon for uuid,

    proximityUUID: NSUUID(UUIDString: "B9407F30-F5F8-466E-AFF9-25556B57FE6D")!,
    identifier: "region monitoring")
    self.beaconManager.startMonitoringForRegion(beaconRegion)

it works!!!. > 1 beacon with same uuid, does not work.

What happened?

Take a look at this note from our iBeacon tutorial:

Keep in mind: When monitoring a region that spans multiple beacons, there will be a single “enter” event when the first matching beacon is detected; and a single “exit” event when none of the matching beacons can be detected anymore. There’s no way to keep track of “interim” beacons’ “enters” and “exits”—other than creating a single region per each beacon of course.

If you define the region with the UUID, and you have, e.g., 3 beacons with that UUID in range, disabling (are you using Flip to Sleep?) one will still mean you’re in range of 2 more. So there will be no “exit region” event.

Thanks, I kept in mind and I used ‘Flip to sleep’. The problem is that not triggered any enter or exit.
My goal is to monitor > 20 beacons and start ranging within didEnterRegion/didExitRegion events to know its details (major, minor)
Additionally, I am using the estimote’s app templates.
can you help me with another tip or suggestion?

This happen to me too, this methods works great after iOS 11, did you have some solution?