Improving the Customer Experience with iBeacon Technology

2 August 2017 by Preetam Jadakar No comments

For the uninitiated, iBeacon is a communication protocol developed by Apple on top of Bluetooth Smart technology. It allows developers to create mobile apps aware of location context provided by beacons. And opens up a plethora of opportunities for businesses to improve the customer experience.

How does it work?

Leveraging Bluetooth Low Energy (BLE), a device with iBeacon technology (beacon), can be used to establish a region around an object.This allows an iOS device to determine when it has entered or left the region, along with the proximity. There are both hardware and software components to consider when using iBeacon technology.

Any compatible iOS device could act as an iBeacon. The list currently includes the following devices:

iPhone 4s or later
3rd generation iPad or later
iPad Mini or later
5th generation iPod touch or later

Beacons only broadcast their iBeacon ID. For the sake of energy efficiency, Bluetooth Smart Device requires data packets to be small. So you cannot put any additional content in there. Hence, the beacon is only a trigger. It’s the app that handles content and notifications.

While there are many beacon manufacturers available in the market, popular amongst them is Estimote Beacons.

Tracking My Dog using a Beacon

So I got hold of one of those, and thought let’s create an app which will help us in region tracking. So I’ve picked up a real problem that I face everyday. When I leave my dog outside or in the backyard for some time, he wanders away. So I used beacon to track the dog within a certain radius/geofence. Now the Beacon is a collar for my dog and my iOS device acts as the iBeacon. Once the dog crosses a certain area (backyard in this case), I would get an alert. So it’s time for me to run and get him back!

iBeacon entirely depends on CoreLocation framework of iOS. First of all, we need to set the Beacon for tracking so that iOS device can listen for this beacon only. Here’s how to do it –

    self.beaconManager.startMonitoring(for: CLBeaconRegion( proximityUUID: UUID(uuidString: “xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx”)!, major: xxxxx, minor: xxxxx, identifier: “monitored region”))

Here, beacon’s UUID, major and minor are provided by the manufacturer and we can change these values with a bit of help from the manufacturer.

Estimote has provided some key delegates which notify us on Enter/Exit.

  //MARK: Beacon Manager Delegates

    func beaconManager(_ manager: Any, didEnter region: CLBeaconRegion) {

        let notification = UILocalNotification()

        notification.soundName = “orion-19609.caf”

        notification.alertBody = “Remmy is nearby. No Worry!”



    func beaconManager(_ manager: Any, didExitRegion region: CLBeaconRegion) {

        let notification = UILocalNotification()

        notification.soundName = “Danger Alarm.caf”

        notification.alertBody = “Remmy is running out. Catch him!”



    func beaconManager(_ manager: Any, didFailWithError error: Error) {

        let notification = UILocalNotification()

        notification.alertBody = “(error.localizedDescription)”



So, I have set two different sound alerts for Exit/Enter events. Voila!

The Advantages of iBeacon Technology

The best part of using beacons is the battery life is around 2 years. What’s more, for the iOS device, your app doesn’t need to be in foreground or background mode. The device always listens to BLE signals.

The frequency of the iBeacon transmission depends on the configuration and can be altered using device specific methods. Also, both the rate and the transmit power have an effect on the iBeacon’s battery life.

Of late, you have Android hardware manufacturers coming up with iBeacon support. Especially, Android 4.3+ devices with BluetoothLE can see surrounding beacons and Android 5.0+ devices can act as iBeacon device.

Finally, here’s a video to demonstrate iBeacon use cases and how retail stores can leverage this technology to improve the customer experience.

Give us shout if you would like some iOS development for your apps or products. Because at Idyllic, we are always up for a good challenge!

Preetam Jadakar

Follow me on Twitter

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe To Our Blog

Get access to proven marketing ideas, latest trends and best practices.

Next up home


Lets build cool stuff

Share your contact information & we will get in touch!

I want (Tell us more about your dream project)