So, you’ve just heard about beacons and contextual computing and want to jump in? Welcome! Below you’ll find advice to get you on the right track and resources to further help you with developing your beacon-based projects.You’ll learn:
Beacons, stickers, video: what’s the difference?We offer four types of hardware products:
Compared to Proximity Beacons, Location Beacons offer longer battery life and range, more data packets, and GPIO support. Learn which beacon will suit your use case better with our intro to Proximity versus Location. You can see a detailed breakdown of differences on our product comparison page.
Stickers are much smaller, but that also comes with shorter battery life (up to a year) and range. The idea behind stickers is to create nearables: smart objects broadcasting data about their location, motion, and environment. Just attach a sticker to an item (or a pet... or even a person) to turn it into a nearable. You can also search for nearables using Estimote Indoor Location. It’s like Google for the physical world!
Mirror, our video beacon, allows users to interact with any video screen. Content can be based on multiple sources including mobile phones, beacons, and Web APIs. Mirror doesn’t need the user to have an app on their phone --by using Estimote’s other beacon products attached to any object you can transform it to a “smart object” that triggers the nearby screens.
What do I choose?
That’s a tricky one. Think about your use case:
Estimote products usually ship within one week. Note that Mirror is currently in preorder status, and will ship in Q3/Q4 2017. Everything is also available in bulk quantities (contact our Business team directly if this is your goal!)
To order our products, just visit our website: estimote.com
Do Estimote products require an app?
Yes, an app is required to detect beacons and trigger interactions with them. Beacons only broadcast tiny data packets that can contain their IDs, sensor readings, or URL addresses. In any case, it’s the app that has to ‘interpret’ this data and launch specific actions. What these actions are is entirely up to you. If you’re looking for inspiration, you can find a list of almost 100 apps created with Estimote Beacons right here: Apps and projects with Estimote
There are two basic ways for apps to interact with beacons: Monitoring and Ranging. Monitoring allows detecting if there are beacons in range, while Ranging is used to estimate proximity from beacons. To learn more, read: What are region Monitoring and Ranging?
Additionally, you can use the Physical Web/Eddystone standard to broadcast URLs instead of beacon IDs. Android natively supports this as Nearby Notifications and on iOS it's integrated with Chrome. It's important because, on Android, Chrome is the default browser which makes it possible to reach millions of users without building a dedicated app.
To learn more, read: How to enable Physical Web in Chrome?
Do I need to be a developer?
Estimote products—beacons, Mirror, Estimote Cloud, SDK, Indoor Location—are designed with developers in mind. However, there are third party tools that make it possible for non-technical people to create apps with beacons as well.
There are several general purpose CMS platforms you can try, including:
There are also industry-specific ones. For example:
If you need someone to build an app for you, you can find freelance developers, agencies, and software houses for hire on Estimote Forums. Make sure to take a look: Estimote Forums: looking for devs
iBeacon, Eddystone, Nearable: what are these?
Different standards and protocols are common in wireless communication. You’ve probably heard names like UMTS, HSPA, or LTE. They apply to cellular networks, but standard fragmentation exists in Bluetooth beacons, too.
Estimote supports three beacon protocols:
iBeacon is a proprietary protocol from Apple, released in 2013. Support for iBeacon is baked into iOS, as part of the Core Location framework, but Estimote SDK for Android also detects iBeacon. Beacons broadcasting iBeacon protocol transmit their IDs, divided into three parts: UUID, Major, and Minor. Apps read the ID to identify the beacon and estimate proximity based on signal strength.
Eddystone is an open BLE protocol developed by Google. Eddystone-compatible beacons can broadcast three different data packets, called ‘frames’. Eddystone-UID is a standard frame similar to iBeacon, Eddystone-URL allows beacons to transmit URL addresses, and Eddystone-TLM includes telemetry and sensor data.
Nearable is our own protocol developed for Estimote Stickers. We’ve designed it to include sticker’s ID and readings from motion and temperature sensors in a single data packet, to provide apps with more physical world context.
To learn more about protocols, read:
Building my first app
You already know a lot about how beacons work. It’s time to get your hands dirty and start with actual development. Your first step should be signing up for an Estimote Cloud Account that allows you to manage beacons and adjust their settings via Estimote Cloud, apps, and RESTful web API. Also, don’t forget to download the Estimote beacon management app. Now, for the building part. You’ll be doing that with Estimote SDK.
We’ve created resources and built tools to help you get started faster. Estimote Developer Portal is a comprehensive guide to beacon development, regularly updated with new content. Estimote Cloud’s app generator lets you download ready app templates with Estimote SDK and basic functionalities already implemented.
Do I have to use Objective-C/Swift/Java?
At this point, we only provide official support for iOS and Android. You can find Estimote SDK on GitHub. We've put together a list of third-party platforms you can use to integrate Estimote Beacons in your app. Learn how to use our products with Xamarin, PhoneGap, Raspberry Pi, etc.
Going deeper: Indoor Location and Cloud API
Estimote platform offers much more than beacon hardware and SDK for proximity-based interactions. Indoor Location SDK is a separate product for location mapping. Beyond that, it allows for tracking position of users and objects in real time. The Cloud API enables you to easily integrate beacon management into your own backend and apps.
Estimote Indoor Location SDK
With our Indoor Location SDK, you can use beacons to map locations, and stickers to track positions of objects within. You can also integrate it with your own app and see user's positions in Estimote Cloud in real time. Just imagine the possibilities this unlocks for mobile experiences.
Learn about Estimote Indoor Location:
Remember: to test Indoor Location, you need to place at least one UWB Location Beacon on each wall of the location. The minimum number we recommend is 4 (one devkit) to make sure we're getting enough data to accurately compute the position. Triangular rooms are not that common, so they’re not supported. You can also work with Estimote Location Beacons, but this would require 6 of them (two devkits). You can order an Indoor Location set of two devkits on our website.
Right now, Indoor Location SDK is only available on iOS.
Estimote Cloud is a powerful tool allowing you to remotely manage your beacons. Normally, you do it through the web panel: cloud.estimote.com
However, thanks to OAuth support and Cloud API, you can integrate it with your own backend, too. You can gather analytics and manage beacons from the comfort of your own platform. You can also queue changes to beacon’s settings, and thanks to the Cloud API, users of your app will relay the adjustments to beacons when they’re in range.
If you want to start using Cloud API, read:
That’s it… or is it?
We’ve covered the basics, but there’s still a lot to learn! We encourage you to join and become active in our developer community (any questions are usually answered within a day!), access the Knowledge Base, and check out the Developer Portal for more development resources.