The question “How many connections can an iBeacon support?” comes up quite a bit and usually results in some confusion. This post aims to remove any confusion and shed light on the answer(s).
There are, in fact, three answers to the above question: zero connections, one connection, or more than one connection. To understand why these are possible answers let’s dive into a bit more detail.
The iBeacon specification from Apple, officially named the Apple Proximity Beacon Specification, states that iBeacons must be non-connectable devices. A non-connectable device cannot accept any connections. This means that technically an iBeacon supports zero connections.
In practice though, it is useful for iBeacons to be connectable as it lets you re-configure your beacon. You may want to change its iBeacon characteristics (major/minor/UUID), change the advertising interval, or adjust the power level at which it operates. Without it being connectable you’d have to find a different way to re-configure it.
Estimote beacons, for example, are connectable iBeacon devices. They are iBeacon specification compliant except for the part about being non-connectable. Estimote isn’t the only manufacturer to do this. By doing this, they break the specification. But they also become more useful devices.
All of the iBeacon manufacturers that I’m currently aware of will only support one connection. This means that when you connect to your iBeacon to re-configure it nobody else can connect to it or even see that it’s there, just you. Once you’ve disconnected from the beacon then others will be able to see it again.
Supporting a single connection is not a restriction of an iBeacon or the underlying Bluetooth Low Energy (aka Bluetooth Smart) technology. In fact, it’s a restriction on the chipset that is being used. These chipsets are usually very resource-constrained (not a lot of memory, CPU power, etc) and many only come with out-of-the-box support for a single connection.
This can be confusing since a fully-compliant iBeacon device shouldn’t support connections (being non-connectable devices after all). If you were to look at Estimote’s home page you’ll see they are “certified iBeacons”. This makes it even more confusing since they are doing the opposite of what the iBeacon specification says by being connectable.
In summary, the question “How many connections can an iBeacon support?” depends entirely on if it’s fully iBeacon specification compliant (in which case it supports 0 connections), if it’s partially iBeacon specification compliant (in which case it likely supports 1 connection), or if it’s partially iBeacon specification compliant with a beefy chipset (in which case it may support more than 1 connection).
You may be wondering how iBeacon devices that aren’t fully specification compliant even continue to work. We’ll look at that in a follow-up post.