
Eddystone and Physical Web: Beacon Evolution

My name is Alex, I'm an Android developer at Touch Instinct. Google recently invited me to the jury for the BaumanHack hackathon. I prepared a report on the specifics of Eddystone and the Physical Web; I share the main points.
iBeacon
It all started with Apple and the iBeacon beacons announced in 2013. Beacons are devices that support Bluetooth Low Energy technology. Their task is very simple - periodically send a data packet (advertisement packet).
We are interested in the following parts of this package:
- The identifier of the beacon, which consists of three parts:
- UUID - 16 bytes, this can be the ID of your company, chain of stores, etc.
- Major - 2 bytes, ID of the city in which your network is located
- Minor - 2 bytes, for example, the coordinates of a particular store
- TX Power - 1 byte, the reference value of the signal power. Represents the signal strength at a distance of one meter from the lighthouse. Measured in dBm. You can determine the distance from the beacon to the phone by this value using trilateration, for example.
You can specify any value for UUID, major and minor. For example, UUID is a shopping center, major is a store in a shopping center, minor is a department in a store. More information about iBeacon Bluetooth profile can be found here .
Disadvantages of iBeacon Beacons:
- Need to install the application
- Support only on iOS (Android - only when using third-party libraries, for example, Android beacon library)
Eddystone
In July this year, Google announced its own open format for beacons. For developers, the plus is that the technology is compatible with both Android and iOS.
And Google came up with three packages instead of one:
- Eddystone-UID . This is the same identifier - an analogue of iBeacon (UUID, major, minor). Consists of 2 parts: Namespace ID (10 bytes), Instance ID (6 bytes).
- Eddystone-URL. Now beacons translate URLs up to 18 bytes. The URL shorteners will help us solve the problem of long urls. For example, a service from google.gl . From this address touchin.ru/portfolio/squawk you can get a short version of goo.gl/PidTf3 . This is the main innovation, I will explain why a little later.
- Eddystone-TLM (Telemetry) . The following beacon data is available:
- charge level
- the number of packets sent since connecting to the power source
- Beacon activity time from the moment of connection to the power source
- temperature
Here you can read the specification.
Common disadvantages of lighthouses:
- Signal transmission distance - up to 50 meters in an open field. Indoor - less, since the walls affect the propagation of the signal.
- The user must constantly keep Bluetooth low energy on on the smartphone, since it consumes very little power.
- One of the manufacturers of lighthouses Estimote claims that the battery lasts three years with default settings. It is necessary to periodically monitor the beacons for the presence of non-working ones, which can be a problem with a huge beacon park.
Physical web
Why is the new type of package - Eddystone-URL so important? Because now it is the engine of the Physical Web. To understand what problem the Physical Web is trying to solve, let's recall the QR code.

This was the first attempt to connect the Web and the real world, and it even partially failed.
Let's look at this situation. We are walking through an unfamiliar area and want to know what is interesting nearby. Even if the QR code is within walking distance, it is difficult to find. Sometimes it is physically impossible to see (for example, it is around the corner). Well, if you see it, you need to approach it, open a pre-installed application, point it, get the URL (in most cases) and follow the link.
Too many gestures. We are lazy.
What PhysicalWeb offers us is on-demand interaction.

There is a PhysicalWeb application. With it, you can see all the URLs around you. You just need to get the phone out of your pocket and see what is nearby. In the store opposite the New Year's sale, the musician has his own website in the transition, the car is being sold near you, and they are renting an apartment around the corner. Mass information on request.
Here is a good video to dive into the topic.
For all this to come into our lives, the application must be part of not only Android, but also other mobile operating systems.
Let's consider scenarios of interaction with the Physical Web and examples of use in real life.
Classic web

Imagine that you are standing at a bus stop and do not know either the schedule or the number of the bus you need. Transport applications can save the situation, but it is not supported in all cities. But at the bus stop you can hide the beacon, which translates the URL with the necessary information.
Cloud passthrough

Suppose you drive up to a gas station. Usually you go to a gas station, stand in line, pay and refuel. You can also use the Physical Web here. A gas station broadcasts a URL where you can set the right amount of liters and pay for gas on the same page. After that, through sockets, the server will connect to the column and the refueling process will begin. There is a similar scenario for paying for parking:
Web bluetooth
In the video, you see a turtle that you can interact with directly using the JavaScript Bluetooth API. This is an open standard that is still under development.
Conclusion
Physical Web looks pretty promising, so turn on Bluetooth and make this world a bit more interactive.
All with the coming NG!