In several articles, we will outline the necessary steps and tools for creating a Bluetooth Low Energy (BLE) beacon. The BLE beacon project is codenamed “Athena,” and you may see this name mentioned in the article and in the schematics and source code.
All the software tools used for this project are either open-source or available for free. The primary expenses will be on hardware, including development kits, measurement instruments, PCB manufacturing, assembly, and component sourcing. The first article (Part 1) will focus on the hardware, and the second (Part 2) will focus on the software and firmware.
The beacon is designed with the following main features:
- Operating from a single coin cell batter
- Small form factor
- Measuring temperature and humidity
- Firmware update over BLE
- User configuration
The PCB schematic and layout can be found in the following GitHub repo: https://github.com/JasonStoyanov/athena_pcb
What is a BLE Beacon?
A BLE beacon is a small battery-operated device that uses Bluetooth Low Energy as its wireless transmission protocol. BLE is a wireless protocol designed for very low-power operation, making it suitable for battery-operated IoT devices. During regular operation, the BLE beacon broadcasts its message, which can be read by all nearby devices actively scanning. The message contents may vary depending on the beacon type. The beacon we are creating will broadcast temperature and humidity sensor readings.
Building Blocks of the Beacon
The block diagram below shows the basic building blocks of the beacon.

- NRF53 — Microcontroller with support for Bluetooth Low Energy
- BME280 — Temperature and humidity sensor
- Zephyr — Real-time operating system
- Physical User Interface — LED and a button
The Hardware
The philosophy behind our hardware choices is to prioritize using free and open-source tools whenever possible. While the beacon is currently just a prototype, we are working to optimize it for low cost, just as we would if we were creating a consumer device.
Choosing the right MCU
The chosen microcontroller must support very low-power operation, have an integrated RF for running the BLE protocol, and a communication interface for accessing the sensor IC.
The software framework surrounding the MCU is just as crucial as the MCU itself. Opting for an MCU from a manufacturer offering a comprehensive SDK with diverse drivers, communication stacks, and good documentation can substantially reduce development time. We will use Nordic’s NRF53 device, which has a robust open-source SDK based on the Zephyr RTOS.
Sensor IC
The BME280 sensor is a popular choice for measuring humidity and ambient temperature. It was selected for this project because of its availability and robust software support. The Zephyr RTOS includes a driver for BME280, which significantly expedites the prototyping process. This sensor can be used with either SPI or I2C interface.
Please note that there may be differences in the current consumption of I2C and SPI interfaces. It is a matter of debate which interface will consume less energy. The best approach is to consult the MCU datasheet, where the power consumption for both peripherals should be specified, and, of course, to conduct an actual measurement of the power consumption before choosing the interface.
We will use SPI for the beacon, as it does not require additional components, unlike I2C, which needs external pull-up resistors.
User-Interface
The beacon should be small and affordable, so we will only use a single button and an LED. The button will be used to access the beacon’s configuration mode, while the LED will indicate errors and provide feedback on button operations. Even though including the button and LED increases the beacon’s cost, it’s not advisable to rely solely on Bluetooth for user interaction and completely eliminate the physical interface.
Power
The beacon is powered by a 3V coin-cell battery (CR2032). There is no voltage regulator, and the NRF53 MCU and the BME280 are powered directly by the coin cell.
Our goal is to ensure the beacon has a long battery life, so we need to optimize two main aspects:
- Select devices that can operate on the lowest possible voltage
- Minimize the current drain of the battery
The general battery life can be estimated using the following equation:
Battery lifetime (h) = Battery capacity (mAh) / Average current consumption (mA)
It is worth noting that the battery capacity depends on current consumption. The CR2032 is rated at 240mAh, but this is valid for average consumption of 0.5mA. The higher the average consumption, the lower the battery capacity.

Source: High pulse drain impact on CR2032 coin cell battery capacity (Nordic Semiconductor)
We can estimate the average current consumption based on the datasheet information for the ICs we will use. After a prototype is ready, an actual measurement of the average current will be used to calculate the expected battery life more accurately. It’s important to note that peak consumption pulses can additionally degrade the battery lifetime (See High pulse drain impact on CR2032 coin cell battery capacity).
When selecting the ICs for our project, it’s important to consider the minimum voltage level at which they can operate. This is referred to as the Functional End Point (FEP). Our MCU and BME280 sensor’s FEP of 1.8V ensures that the beacon will be operational for the majority of the battery’s life cycle.
RF Antenna
Antennas are crucial components of wireless systems, facilitating the transmission and reception of signals.
There are two approaches when it comes to integrating an antenna for BLE communication into a product:
- Creating a PCB antenna — the antenna is part of the PCB layout
- Using a chip antenna — this is an integrated solution in which the antenna is put in a discrete package and can be used as a regular IC.
Designing and tuning a PCB antenna can be very time-consuming. The chip antenna reduces R&D time, requires less space on the PCB, and can potentially match the performance of a PCB antenna. However, since the chip antenna adds to the cost of the device, it is not suitable in our case, as we are trying to make the beacon as cheap as possible to produce.
Creating a PCB antenna is quite complex. It involves both theoretical knowledge and experimentation until a successful design is achieved. Luckily, many PCB antenna designs have been developed and tested by major companies, and the results are available to customers for free.
We are using the meandered Inverted F Antenna (IFA) designed by Texas Instruments and described in Application Note AN043. It is important to note that in order to achieve the same performance as described in the document, we must match the exact PCB properties — layers, thickness, material, etc.

PCB
For the PCB of the beacon, we have the option to choose between two approaches:
- Fully custom board — The board has to be developed from scratch, including the RF antenna for the BLE.
- A custom board with an off-the-shelf BLE module — In this case, a module containing the MCU with the RF component is purchased from an external supplier (e.g., Fanstel, Ezurio, etc.). We then create our own PCB, but the effort is considerably reduced because the routing of the MCU and the antenna is part of the external module. We can then focus solely on incorporating the specific components we need for our beacon, such as a button, LED, battery holder, etc.
Both approaches are valid, especially for a prototype. A fully custom board can potentially reduce the total cost, but it requires production in large volumes for cost reduction to be realized (the price per MCU depends on the total number bought). For a small number of devices, purchasing an off-the-shelf module may even be cheaper than just buying the MCU IC.
We will design a custom PCB for the BLE beacon. It’s worth noting that while the hardware is being developed and manufactured, work on the firmware can start using the NRF53 development kit and BME280 breakout boards.
The PCB is designed using KiCad v7.0.


The Prototype


Future Improvements
- PCB is to be redesigned with a smaller size and with a 3D-printed enclosure in mind
- Replace the battery holder with a less expensive one better integrated with the enclosure.
Leave A Comment