Reverse Engineering iBeacon and Eddystone Bluetooth GATT Services

For some of our beacons such as the Axaet and Sensoro product ranges the manufacturers haven’t documented their Bluetooth Service Characteristics. This means that while they are ok for scanning/proximity type applications, you can’t write your own app to, for example, change programatically the UUID, major and minor and must rely on the manufacturer’s configuration app or, in the case of the Sensoro beacon, their SDK. While this of no consequence for the majority of uses, more ambitious scenarios might want directly access the Bluetooth GATT services.

Uri Shaked has written a great article on Medium on how to Reverse Engineer a Bluetooth Lightbulb. His method uses the developer logging in Android 4.4 and later to allow inspection of the Bluetooth packets and hence the Bluetooth Services and Characteristics that are being used. This method can equally be used with iBeacon and Eddystone beacons to reverse engineer the Bluetooth GATT information.

White Key Fob Beacon in Stock

We have had a small number of a white version of the Apple MFi certified PC061 key fob beacon come into stock. This beacon supports one of iBeacon, Eddystone-UID, Eddystone-URL at any one time, the mode being changed by quickly double clicking the button. Clicking the button once turns it on and off. It remembers the last used mode.

pc061e_white_smaller

This beacon is waterproof and weighs only 11g. It comes with a special metal tool for opening the case and replacing the battery. The battery should last 6-12 months depending on the advertising rate.

Setting Up Eddystone-URL/Physical Web (with Axaet Beacons)


Important: This web page is provided for historical purposes.

On 25 October 2018, Google announced they are discontinuing Nearby Notifications on Android. This mechanism should no longer be used.

Read about using Beacons for Marketing


We have had several customers trying to set up Eddystone-URL/Physical Web without reading around the subject and understanding how it works (and doesn’t work). This is something you are unlikely to make work without a little research and preparation.

First read our article on Eddystone and the Physical Web to gain a background on how it works.

Before you start, we recommend using a URL shortener. Alternatively, you might choose to use a ready-made solution that includes URL shortening or our free EddystoneCMS.

The next step is to make sure your final, pointed-to URL uses https:// rather than http:// web address otherwise the beacon won’t be detected.

Open the Eddystone management app for iOS or Android.

Turn on the beacon having previously made sure it’s in Eddystone mode (pressing the button twice cycles between iBeacon, Eddystone-UID and Eddystone-URL modes). The beacon stays connectable for only a few minutes after it has been turned on.

You should see this:

eddystone-setup-1

Note it’s in Eddystone URL mode. The beacon points to https://www.axaet.com by default.

Tap on the beacon and you will see this:

eddystone-setup-2

Modify the URL and enter the password (666666):

eddystone-setup-4

In this example we have used a shortened URL http://bzone.click/pc062 that points to https://www.beaconzone.co.uk. Tap Modify.

You will see this:

eddystone-setup-5

The beacon has now reset and turned off. Note the app hasn’t seen the changed URL yet because the beacon is off. Turn it on to allow the app to see the new URL:

eddystone-setup-6

For example, the Android OS you should now show you something like this (make sure Location and Bluetooth are ON):

eddystone-setup-7

Tap on the notification:

eddystone-setup-8

[The extra information is obtained by Android OS from your web site, not from the beacon.]

Alternative Video Walkthrough

Mozilla produced a video when they purchased beacons from us and gave them away at one of their events:

Troubleshooting

Why Doesn’t the Manufacturer’s Configuration App Connect?

Enabling Physical Web in Chrome 49 Release

Troubleshooting Eddystone-URL on Android

Troubleshooting Eddystone-URL on iOS

Physical Web Getting Started Tips

Long Range TON9118 Tested

We have been doing some signal strength and stability tests to help provide data for our consultancy offering.

Last week, we started stocking the extremely long range TON9118 so we thought we’d compare it against our other beacons and some other popular beacons in the market:

TON9118SignalStrength

Smaller bars represent a stronger signal

The beacon certainly delivers what it promises. Incidentally, the next beacon along is the PC62 that also performed well in our signal strength tests and is also one of the best for signal stability (low changes in signal strength over time).