Three radios, three jobs
Phones carry several short-range radios, and it is easy to treat them as interchangeable. They are not. Each was designed around a different question:
- Bluetooth LE: who is nearby, and can we exchange some data?
- NFC (Near Field Communication): did the user deliberately bring these two things together?
- UWB (ultra-wideband): exactly how far away is that device, and in which direction?
They also combine. Android’s UWB guide, for example, has apps find the other device with a BLE scan before UWB ranging can start.
Bluetooth LE: discovery and data
Bluetooth Low Energy runs in the 2.4 GHz ISM band. The Bluetooth SIG lists 40 channels, three of them for advertising, and topologies from point-to-point to broadcast and mesh. Devices find each other by advertising and scanning, then connect and exchange data through GATT.
Range is not a single number. The Bluetooth SIG puts the effective range anywhere from more than a kilometre down to less than a metre, depending on the PHY, transmit power, receiver sensitivity and antenna. Either way, the devices do not need to touch.
BLE can also locate things. The SIG lists advertising for presence, direction finding for direction, and RSSI and Channel Sounding for distance. Simple beacons use only the first.
NFC: deliberate taps
NFC is built to work only at very short range. Android’s documentation describes it as a set of short-range wireless technologies, typically requiring a distance of 4 cm or less to initiate a connection. That short range is the point: a connection happens because someone chose to hold a phone to a reader, a tag or another phone.
Android phones with NFC support two main modes. In reader/writer mode the phone reads and writes passive tags and stickers. In card emulation mode the phone acts as an NFC card that an external reader, such as a payment terminal, can talk to. Much of Android’s NFC API is built around NDEF (NFC Data Exchange Format), a standard from the NFC Forum, the industry body that publishes the NFC specifications.
NFC carries small payloads. The NFC Forum’s own examples are paying, riding the train, unlocking a door and pairing devices: single deliberate actions, not a running conversation.
UWB: precise ranging
Ultra-wideband spreads its signal across a very wide slice of spectrum. Android defines it by bandwidth greater than 500 MHz, or more than 20% fractional bandwidth, and describes it as a radio technology focused on precise ranging, measuring location to an accuracy of 10 cm. The FiRa Consortium writes UWB specifications and certifies devices so that they work together.
On Android, one device acts as the controller (initiator) and the other as the controlee (responder). Before ranging can start, the two must find each other and exchange parameters such as addresses, channel and session key. Android leaves that to the app, through a secure out-of-band channel of its choice, and gives Bluetooth LE as the example: discover the peer with a BLE scan, then exchange the parameters over GATT.
Apple’s Nearby Interaction framework works the same way in outline. Apps on devices with a UWB chip share discovery tokens, then iOS reports a peer’s distance and direction while the app is in the foreground; on watchOS it reports distance only. In the background, ranging continues only if the peer is paired and connected over Bluetooth LE, or, from iOS 18.4, if the app starts a Live Activity.
Side by side
| Bluetooth LE | NFC | UWB | |
|---|---|---|---|
| Main job | Discovery and data exchange | Deliberate tap: pay, tag, pair | Precise distance and direction |
| Distance figure in the docs | Range from less than a metre to more than a kilometre, by design and setting (SIG) | Connects at typically 4 cm or less (Android) | Ranging accuracy of 10 cm (Android) |
| Finds the other device itself | Yes, by advertising and scanning | Yes, by being brought into contact | No, apps exchange setup over another channel |
| Ongoing two-way data between apps | Yes, through GATT | Small payloads per tap | Phone APIs report ranging results |
Which one to use
Use BLE when devices need to discover each other and keep exchanging data, such as a phone and a sensor, or two phones. Use NFC when the user’s intent matters more than reach: a tap that proves the phone was right there. Use UWB when the question is exactly where something is, and plan on BLE or another channel to set the session up.
For an app that has to carry messages between phones, BLE is the one of the three built for discovery and ongoing two-way data. NFC needs the phones held together and carries small payloads, and UWB on both platforms is documented as a ranging tool.