The document introduces Eddystone, an open Bluetooth low energy (BLE) beacon format developed by Google. It discusses how Eddystone aims to address real-life use cases, support multiple platforms, and ensure security and privacy. It also describes the various Eddystone frame types and how the format supports better context for apps and easier management of beacon fleets for businesses. Finally, it provides examples of how Google products will utilize Eddystone beacons.
2. Just like lighthouses have helped sailors navigate the world for
thousands of years, electronic beacons can be used to provide precise
location and contextual cues within apps to help you navigate the world.
For instance, a beacon can label a bus stop so your phone knows to
have your ticket ready, or a museum app can provide background on
the exhibit you’re standing in front of.
Today, we’re beginning to roll out a new set of features to help
developers build apps using this technology.
This includes a new open format for Bluetooth low energy (BLE)
beacons to communicate with people’s devices, a way for you to add
this meaningful data to your apps and to Google services, as well as a
way to manage your fleet of beacons efficiently.
4. Eddystone: an open BLE beacon format
Working closely with partners in the BLE beacon industry, we’ve learned a
lot about the needs and the limitations of existing beacon technology. So
we set out to build a new class of beacons that addresses real-life use-
cases, cross-platform support, and security.
At the core of what it means to be a BLE beacon is the frame format—i.e.,
a language—that a beacon sends out into the world.
Today, we’re expanding the range of use cases for beacon technology by
publishing a new and open format for BLE beacons that anyone can use:
Eddystone. Eddystone is robust and extensible: It supports multiple frame
types for different use cases, and it supports versioning to make
introducing new functionality easier.
It’s cross-platform, capable of supporting Android, iOS or any platform that
supports BLE beacons. And it’s available on GitHub under the open-source
Apache v2.0 license, for everyone to use and help improve.
5. By design, a beacon is meant to be discoverable by any
nearby Bluetooth Smart device, via its identifier which is
a public signal.
At the same time, privacy and security are really
important, so we built in a feature called Ephemeral
Identifiers (EIDs) which change frequently, and allow
only authorized clients to decode them.
EIDs will enable you to securely do things like find your
luggage once you get off the plane or find your lost
keys. We’ll publish the technical specs of this design
soon.
6. Eddystone for developers: Better context for your
apps
Eddystone offers two key developer benefits: better
semantic context and precise location. To support
these, we’re launching two new APIs.
The Nearby API for Android and iOS makes it easier for
apps to find and communicate with nearby devices and
beacons, such as a specific bus stop or a particular art
exhibit in a museum, providing better context.
And theProximity Beacon API lets developers associate
semantic location (i.e., a place associated with a
lat/long) and related data with beacons, stored in the
cloud. This API will also be used in existing location
APIs, such as the next version of the Places API.
7. www.letsnurture.com
Eddystone for beacon manufacturers: Single hardware for multiple
platforms
Eddystone’s extensible frame formats allow hardware manufacturers to support
multiple mobile platforms and application scenarios with a single piece of
hardware.
An existing BLE beacon can be made Eddystone compliant with a simple
firmware update.
At the core, we built Eddystone as an open and extensible protocol that’s also
interoperable, so we’ll also introduce an Eddystone certification process in the
near future by closely working with hardware manufacturing partners. We
already have a number of partners that have built Eddystone-compliant
beacons.
8. www.letsnurture.com
Eddystone for businesses: Secure and manage your
beacon fleet with ease
As businesses move from validating their beacon-assisted
apps to deploying beacons at scale in places like stadiums
and transit stations, hardware installation and maintenance
can be challenging: which beacons are working, broken,
missing or displaced?
So starting today, beacons that implement
Eddystone’s telemetry frame (Eddystone-TLM) in
combination with the
Proximity Beacon API’s diagnostic endpoint can help
deployers monitor their beacons’ battery health and
displacement—common logistical challenges with low-cost
beacon hardware.
9. www.letsnurture.com
Eddystone for Google products: New, improved user
experiences
We’re also starting to improve Google’s own products and
services with beacons.
Google Maps launched beacon-based transit notifications
in Portland earlier this year, to help people get faster
access to real-time transit schedules for specific stations.
And soon, Google Now will also be able to use this
contextual information to help prioritize the most relevant
cards, like showing you menu items when you’re inside a
restaurant.
10. We all want to make beacons useful even when a mobile app is not
available; to that end, the Physical Web project will be using
Eddystone beacons that broadcast URLs to help people interact
with their surroundings.
Beacons are an important way to deliver better experiences for
users of your apps, whether you choose to use Eddystone with
your own products and services or as part of a broader Google
solution like the Places API or Nearby API.
The ecosystem of app developers and beacon manufacturers is
important in pushing these technologies forward and the best ideas
won’t come from just one company, so we encourage you to
get some Eddystone-supported beacons today from our partners
and begin building!
11. Receiving the message
After the message is sent, the system receives the
message throughonMessageReceived().
Based on the requirements of your game, you can
override this method to update game information such
as player scores, on-screen drawings, or the current
player's turn.
The following code snippet shows how to override this
method to handle received messages:
@Override
public void onMessageReceived(String endpointId,
byte[] payload, boolean isReliable) {
// Implement parsing logic to process message
}
12. Coming Soon
The Nearby Messages API will be available in
Google Play services 7.8.
This site will be updated with the complete API
documentation when the new version is
available.
https://developers.google.com/nearby/