Which Beacons Transmit a MAC Address?

A MAC (Media Access Control) address is a hardware identification number that uniquely identifies each device. In the context of Bluetooth, a MAC address is used to identify a specific Bluetooth device, such as a smartphone, headset or a Bluetooth beacon. All beacons transmit a Bluetooth MAC Address which is a 48-bit address usually represented in hexadecimal format like this: 0123456789AB.

All devices such as smartphones can see the incoming MAC addresses that are sent as part of the device discovery stage rather than the main Bluetooth LE advertising payload. iOS is a bit strange and non-standard because it hides detected Bluetooth MAC address from apps, and hence from users, when detecting beacons and other Bluetooth devices.

No such restriction happens on Android or any other device. The rationale is probably that Apple wants you to use their ids, the iBeacon UUID, major and minor or the Peripheral Id rather than the MAC address. Apple also probably think they are protecting privacy in some way. A few beacons and other devices such as sensors and fitness trackers additionally put the MAC address into the advertising payload which circumvents Apple’s restrictions and allows reading of the MAC address by apps.

Does Bluetooth Signal Go Through Walls?

One question that often comes up is whether Bluetooth signals can go through walls. The answer is a bit more nuanced than a simple yes or no.

Bluetooth operates on a 2.4 GHz ISM (Industrial, Scientific, and Medical) radio frequency band. This frequency is also shared by other wireless technologies like Wi-Fi. Bluetooth signals are designed to be robust but are generally short-range, typically extending up to 50 metres. As it uses the same frequency as Wi-Fi which most people have a knowledge of range of, a very rough approximation is to think of Bluetooth as being similar to Wi-Fi.

The material of the wall plays a significant role in how well a Bluetooth signal can pass through it. Materials like drywall, glass and wood are generally more permeable to Bluetooth signals. In contrast, concrete, brick and metal can severely limit or block the signal altogether.

The strength of the Bluetooth signal also matters. Higher-powered Bluetooth devices can transmit signals that are more likely to pass through walls. However, even with a strong signal, the quality may degrade as it passes through obstacles.

The distance between the transmitting and receiving devices will also impact the signal’s ability to pass through walls. The closer the devices are to each other, the more likely it is that the signal will successfully penetrate the wall.

In practical terms, while it’s possible for Bluetooth signals to go through walls, the quality and reliability of the connection can be compromised.

So, does Bluetooth signal go through walls? The answer is yes, but with caveats. The type of wall, the strength of the signal, interference from other devices, and the distance between the connected devices all play a role in determining how well a Bluetooth signal can penetrate walls.

Changing the Beacon Bluetooth Name

Some manufacturer applications permit you to alter the Bluetooth beacon name, whilst others do not. Sometimes this modifies the entire name and other times elements such as the device id or a fixed id are prefixed or suffixed to the name. It depends on the manufacturer. Occasionally, the name may alter but the configuration app and/or phone Bluetooth software can’t discern the modification until the phone is restarted. Often, the phone’s Bluetooth stack doesn’t relay changes in the name.

In instances where the beacon prefixes or suffixes a string, this is typically because the name is being utilised by the configuration app to ascertain something, for instance, compatible beacons able to be connected, within the configuration app.

While we endeavour to inform you through our quick start guides about what’s feasible with name alterations, this frequently becomes outdated as firmware and applications evolve. The optimal method to know is to try it out for yourself.

However, the inconsistency of name-changing functionality across beacon types/versions coupled with the unreliability of seeing name changes in applications means that applications shouldn’t depend on a particular name or the capability to modify a name. We have found it’s preferable to avoid such functionality in applications and utilise the iBeacon or Eddystone ids instead.

Using Bluetooth Metadata to Infer Social Context

Researchers from Idiap Research Institute and EPFL, Switzerland have been looking into the use of smartphone data, include Bluetooth metadata to try to infer social context, for example whether someone is alone or not.

The paper Understanding Social Context from Smartphone Sensing: Generalization Across Countries and Daily Life Moments (pdf) attempts to better understand human behaviour and mental well-being. The paper focuses on the use of passive smartphone sensors, including Bluetooth, to track the social context of individuals over time. In the past, this field of research has been limited by the fact that most studies have only been conducted in one or two countries and often focused on specific contexts such as eating or drinking.

This paper aims to overcome these limitations by using a new, extensive and multimodal smartphone sensing dataset that includes over 216,000 self-reports from more than 580 participants across five different countries – Mongolia, Italy, Denmark, the UK and Paraguay. The goal is to explore the feasibility of using sensor data to infer whether a person is alone or not and to examine how behavioural and country-level diversity influences this inference.

The sensor data comes from 34 different sensors, divided into continuous and interaction sensing modalities. Continuous sensing includes types of activity, step count, Bluetooth, WiFi, location, cellular, and proximity data, while interaction sensing involves app usage, touch events, screen on/off episodes, and notifications. In terms of Bluetooth, the study used both normal and low-energy Bluetooth capturing data on the number of connected devices and received signal strength indicators (RSSI).

The study’s key findings suggest that sensor features can be used to infer the social context. The research also found that models partially personalised to multi-country and country-specific data achieved similar accuracy levels, typically ranging from 80% to 90%. However, the models did not generalise well to unseen countries regardless of geographic similarity.

View sensor beacons

Reverse Engineering iBeacon and Eddystone Bluetooth GATT Services

For some of our beacons such 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 programmatically the UUID, major and minor, transmit power, advertising period and must rely on the manufacturer’s configuration app. While this of no consequence for the majority of uses that set and forget settings, more ambitious scenarios might want directly access the Bluetooth GATT services to change settings.

Uri Shaked has 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.

Another method is to use a Bluetooth sniffer. This listens in on the Bluetooth communication between two devices. One way of doing this is with Nordic Semiconductor’s Sniffer software on a dongle. There’s a tutorial on JimmyIoT.

It’s usually ill-advised to reverse engineer interfaces to discover undocumented features because the manufacturer can change the implementation thus breaking your solution. However, it’s very rare that firmware is ever updated in beacons and when it is, it’s usually only to fix bugs rather than change the implementation.

Processing on Bluetooth Device or Smartphone?

There’s often a dilemma when creating Bluetooth systems whether to place the processing on the smartphone or on the Bluetooth device.

The efficient and accurate prediction of an individual’s heart rate using wearable devices is crucial for various personal care applications. A new study Energy-efficient Wearable-to-Mobile Offload of Machine Learning Inference for Photoplethysmogram-based Heart-Rate Estimation (pdf) from the Universita di Bologna, Italy, looks into the trade-offs between carrying out heart rate tracking on the device itself or delegating the work to a mobile device.

The research introduces CHRIS, an inference system that uses the interconnectedness between a smartwatch and a smartphone. This system assesses the balance between energy consumption and heart rate tracking error. Depending on the connection status, a user-specified error, energy constraints and an estimate of the input difficulty, CHRIS employs two heart rate prediction algorithms. These are executed on either the smartwatch or the phone.

CHRIS showed the potential to achieve up to 2.03 times energy reduction on the smartwatch by deferring processing off the smartwatch, without a reduction on the tracking accuracy.

Predicting Use of Bluetooth Frequency Bands

There’s new research on predicting the channel access of Bluetooth Low Energy (BLE) devices conducted by a team from Silicon Austria Labs GmbH and Johannes Kepler University in Austria. The team aimed to estimate the channels used by multiple BLE connections by passively listening to the channel, with the goal of predicting future channel access to avoid collisions in other wireless networks.

The hardware setup for this research consisted of six Nordic NRF52840 BLE devices that formed three BLE connection pairs, and one sniffer based on the Ubertooth One. This setup allowed the researchers to actively monitor and analyse the BLE channel.

Channel hopping over time

The researchers demonstrated that by passively listening they could reconstruct channel access algorithms for multiple BLE connections in parallel. This approach can be used in new applications to avoid collisions in wireless networks, particularly in applications with high reliability requirements.

Beacon Setup Tip: Advertising Type

Bluetooth beacons are tiny devices that transmit small amounts of data over short distances using Bluetooth Low Energy (BLE) technology. They can operate with different protocols, like iBeacon (developed by Apple), Eddystone (developed by Google), and various sensor beacon protocols.

Despite the fact that it might seem these beacons can advertising multiple protocols simultaneously, it’s not quite the case. What they actually do is advertise these protocols one after the other in a very rapid sequence. This is due to the way Bluetooth works; it’s not technically possible to transmit multiple signals at the exact same moment. Instead, the beacon switches between the different protocols very quickly, which to a casual observer, or a smartphone, might seem simultaneous.

This rapid succession is made possible by BLE’s advertising mechanism. Beacons, in their idle state, continuously broadcast their identity, and potentially other information, in what’s called ‘advertising packets’. When they’re configured to use multiple protocols, they broadcast an iBeacon packet, then an Eddystone packet, then a sensor beacon packet, and so on in a cycle. This is repeated at a very high frequency, many times per second.

However, while this flexibility is advantageous in certain scenarios where various beacon protocols are required, it’s not always necessary and drains the beacon’s battery more quickly. This is because each advertising event consumes energy, and broadcasting in multiple protocols effectively multiplies the number of these events.

Many beacons are set up to advertise multiple protocols by default. If you don’t need this functionality, you can optimise battery life by disabling unnecessary protocols. This is done using a manufacturer-provided app. The exact process can vary between manufacturers and beacon models, but it generally involves connecting to the beacon, accessing its settings and then deselecting the protocols you don’t need.

While multiple-protocol advertising can be useful in certain situations, it’s often more battery efficient to only use the specific protocols you actually need for your application.

Free Bluetooth LE e-Book

Mohammad Afaneh, author of the e-book ‘Intro to Bluetooth Low Energy (BLE)’ has announced an updated version of his book, set to release in July, 2023, to include new features added to the Bluetooth specification.

In the meantime, the current version of the e-book is freely available to download. The e-book to imparts necessary knowledge about Bluetooth LE (BLE) for a beginner to start development in a single weekend. This document provides an introduction to BLE, its technical specifications and how it compares to Bluetooth Classic. It delves into the advantages and limitations of BLE, suitable applications, and the architectural framework.

The e-book explores Bluetooth Services, Characteristics, and profiles related to BLE with a special focus on the Generic Attribute Profile (GATT) and guidelines for creating your own GATT interface. There’s also an introduction to Bluetooth 5 and its features including enhanced speed and range. Additionally, it covers Bluetooth Mesh, discussing node types, provisioning and security considerations.

Pre-order of new version of the e-book is currently available at a discounted rate.

Bluetooth Low Energy Throughput

There’s new research by Institute of Electronics and Computer Science, Universite Grenoble Alpes, France on Bluetooth Low Energy Throughput in Densely Deployed Radio Environment (PDF). It looks into coexistence issues when Bluetooth is used in a crowded 2.4GHz frequency band where other devices such as Classic Bluetooth, WiFi, Zigbee and microwave ovens might also be operating.

The paper starts with a theoretical discussion of the throughput of Bluetooth LE.

Experiments used ten Bluetooth nodes to measure Bluetooth application throughput using various connection parameters and different interference sources. Two WiFi routers were used to evaluate the impact of WiFi on the BLE throughput.

The researchers found:

The more Bluetooth devices are working simultaneously, the more drastically Bluetooth throughput is decreasing… The Bluetooth co-interference causes throughput decrease for longer connection intervals. This behaviour could be explained by collisions in data transfer channel.


The effect of WiFi interference does not depend on the BLE connection interval. In this study, WiFi activity reduced BLE throughput approximately by 30% regardless of the connection interval.

These tests used Bluetooth GATT to form connection between devices. Some applications of Bluetooth LE, such as the use of beacons and AoA direction finding, don’t use GATT other than for initial setup. GATT implies connection between devices while beacons and the sole use of advertising and listening, rather than connection, is a different form of communication not covered by this paper. We have a post on Managing Bluetooth LE Advertising Congestion and Fixing Poor Bluetooth Beacon Radio Signals if you wish to explore this topic in more detail.