You've bought this book, so I'm going to don my super-sleuth hat and say that you've either been tasked with building an iOS app that utilizes iBeacon, or you've got a project in mind that would benefit from proximity-based location. Ignoring my limited powers of deduction, I'd say that's great news. This book will arm you with all the development knowledge you need to build any iBeacon-enabled iPhone and iPad apps. What the book won't give you though is some lovely iBeacon hardware.
Don't worry; you don't actually need any hardware to complete the tutorials in the book. This book includes an accompanying OS X app, which allows your Mac to become any beacon you want. I'll take you through getting it working later in this chapter.
If you're going to build a commercial application, you'll need to make a decision about which beacons to buy. I've been an early adopter of iBeacons and have sampled lots of the most popular beta devices, and so, hopefully, I can give you some insights into the different implementations of iBeacons between vendors.
At the time of writing this book, the process to become an iBeacon vendor was to sign up to the MFi program and gain the specifications for iBeacons. The ones I've sampled personally are motes from Estimote, RedBearLab's RedBear Beacon B1, and ROXIMITY beacons. Many vendors supply their own SDKs with their hardware, and we'll explore some of these SDKs in Chapter 7, Vendor SDKs – Buying and Configuring Beacons, but for now, we'll go through the main differences between the vendors' iBeacon implementations to help you make a more informed choice when it comes to sourcing hardware for your commercial project.
Estimote was set up with $ 3.1 million seed funding in December 2013 and have been well featured in digital press news stories, including the TechCrunch and Wired magazines. Their marketing material boasts that their motes can run up to 2 years on a single watch battery, and their stylish silicon casing means that they work beautifully outside too.
Estimote beacon sensors are already being used by large retailers in Europe, and they're working to build a large network of their sensors in the U.S.
Estimote has opted to provide a richer feature set than most beacons by including accelerometer hardware and temperature sensors. Although these sensors are only accessible when using the Estimote SDK, they do allow for a more creative set of projects to be developed.
Estimote has definitely ridden the crest of the tsunami of iBeacon technology in the press and has some very high-profile customers. At the time of writing this book, the beacons themselves were available as a $ 99 development kit containing three beacons and weren't available for larger volumes as a commercial purchase.
Estimote offers an SDK for managing and interacting with their beacons and has also provided an iOS app available in the App Store, which includes a number of development tutorials and tools such as:
Accelerometer and temperature sensor: Beacons also include an accelerometer and temperature sensor for more imaginative projects to be developed
Beacon management: This tool allows you to check the status of your Estimote beacons including battery life, temperature, and hardware settings, as well as allowing you to configure the beacon's UUID/major/minor broadcast triplet values
They are beautifully designed, and so once released commercially, they have all the elegant aesthetics to feature immediately in any retail- or customer-facing environment
They have good support for both iOS and Android applications using the Estimote SDK
They are not yet commercially available, and you can only buy developer packs
They have sealed silicon units, which means that battery replacement is likely to destroy the unit
They have wait times of up to 6 weeks for developer kit availability
ROXIMITY has taken a completely different approach and made their beacons completely centrally managed. There's no Bluetooth beacon configuration and beacons can be repurposed for multiple apps simultaneously. You can use a single ROXIMITY beacon within an app dedicated to a shopping mall for direction and also for a loyalty app of a retail store within the mall itself because they don't use the UUID/major/minor broadcasting triplet. These values have been removed from you as a developer when using ROXIMITY beacons. Instead, you can work with ROXIMITY beacon identifiers and must use the ROXIMITY SDK; you can't use the Core Location framework.
"The ROXIMITY Beacon hardware and software are designed and built for large-scale deployments. Our beacons are designed for easy installation and zero maintenance."
The ROXIMITY beacons and hardware are most definitely geared up for mobile marketing, and so may not be the best choice for highly customized functionality. However, if your goal is to provide ROXIMITY-based marketing to specialist apps such as sporting venues, shopping malls, or airports, then ROXIMITY beacons and the SDK are probably the most comprehensive beacons to use straight out of the box.
ROXIMITY features are all centrally managed via the online merchant dashboard. By following ROXIMITY's approach to beacon management, you, as a solutions provider, would need to complete the following steps to deploy beacons at your target location:
By following this simple approach, you already have tons of features available without having to write a single line of custom code:
ROXIMITY allows you to send push notifications directly via their merchant dashboard and configure push notifications.
ROXIMITY provides in-depth analytics of visitors.
The ROXIMITY SDK is capable of verifying a device's phone number for a user. Doing so provides additional reachability and location information for that user and an additional means to look up or request that user's location.
The ROXIMITY SDK, when correctly implemented into your app, reports the exact location of your beacons placed in their commercial location. This exact location can also be configured using the ROXIMITY Beacon Explorer app that ROXIMITY offers via the App Store.
Message dialogs can be configured to capture responses when users enter a region via the merchant dashboard.
The ROXIMITY Beacon Explorer app (http://bit.ly/roximity-be) allows you to demonstrate and test your dialogs and settings without having to build the app using their SDK. This is great for testing functionality before you start building your app.
Rapid development with an extensive SDK
Single beacons can be used in multiple apps because they don't rely on the UUID/major/minor broadcasting triplet
They have no hardware configuration requirements (via Bluetooth), meaning beacons can be quickly and easily reused for other purposes, and marketing campaigns can be optimized via a central management platform
No control over the UUID/major/minor broadcasting triplet, and so the ROXIMITY SDK must be used, which means that the iOS SDK can't be used for development
Too much emphasis on proximity marketing means that using ROXIMITY beacons for other purposes is more difficult than simpler beacon implementations
Currently, only very limited analytics are available via the merchant dashboard
RedBearLab adopted a simple, no-nonsense approach in their iBeacon product, the RedBear Beacon B1, and have focused on the hardware, not branding.
Much bigger than both the ROXIMITY and Estimote options, the RedBear Beacon B1 is powered by two AAA batteries, offering five times the battery life of beacons that are powered by a CR2032 coin battery.
RedBearLab don't provide any online management platform for their beacons; however, they do offer over-the-air firmware upgrades, which means that firmware updates can be easily done via their RedBear BeaconTool app available via the App Store (http://bit.ly/RedBear-BT).
The RedBear Beacon B1 also features very simple administration via the BeaconTool app and is very secure compared to other beacons since it has a hardware configuration button, which activates the configuration mode for a short period. Combining this hardware feature with the fact that you can very easily set custom administrator passwords on the beacon means that these devices are far less likely to be hijacked than other vendor beacons. We will discuss the security issues surrounding iBeacons in Chapter 9, iBeacon Security – Understanding the Risks.
Finally, the RedBear Beacon B1 has one unique feature that is both elegant and genius—a power switch. None of the other beacons I've had the pleasure of trialing have this feature, which when developing an app makes perfect sense. A hardware power switch allowing you to turn a beacon on and off makes simulating entering and exiting a beacon region very simple.
Hardware button to switch between configuration and online mode, making it more difficult for unauthorized configuration of the UUID/major/minor broadcasting triplet
Longest battery life and easiest unit to change batteries
Power switch allows easy simulation of entering and existing beacon range
Largest beacon of the three discussed and heavy in comparison when including two AAA batteries.
Aesthetically, this is the least pleasing of the beacons discussed. This means it is not great for consumer-facing commercial deployments.
The three discussed are just some of the most popular beacons that I've had the pleasure of testing and so can share my experiences. If you're buying beacons in bulk, then you might also want to consider using a trade website such as http://www.alibaba.com/. I've had some great beacons and some not so great beacons through this online trading platform, but overall, my experiences have been good. The three beacons we've already discussed range between $ 23 per unit and $ 35 per unit. However, when buying direct from suppliers on Alibaba.com, I've personally bought very good units for as little as $ 4 per unit.
When buying iBeacons from trade websites, my recommendation is that you order a subset first, maybe 5 to 10 units. Most vendors will charge you $ 2 to $ 3 more per unit for this type of transaction and offer you economies of scale for buying more in future.
When buying iBeacons from trade sites, you should also look out for beacons that have conformed to the Made for iPhone program; a key way of identifying these is when they show the iBeacon logo.