Bluetooth LE PHY
PHY is short for physical, as in the physical layer. This is the bottom layer of the BLE stack and is responsible for actually transmitting and receiving information over the air via radio waves. BLE transmits on the 2.4GHz band, and this band is a license-free band that is essentially free to use for short-range applications. It is also the only license-free band that is the same in every country.
- 1 Megabit PHY, commonly referred to as 1M PHY, has been the de facto Bluetooth PHY up to this point. The name refers to the bit rate that this PHY is capable of. This is the PHY that was discussed in detail in the previous section. Support for this PHY is mandatory to maintain backward compatibility with all non-5.0 devices.
- Coded PHY is a new PHY configuration introduced in Bluetooth 5.0. The purpose of this configuration is to increase the maximum range without increasing transmit power. This sounds contradictory at first glance, but it makes more sense when framed in terms of the BER. Namely, increased range can be thought of as a side effect of reduced error rate. Coded PHY provides enhanced bit error detection and correction, allowing further range while staying within the maximum BER. This is achieved at a cost to data rate, as it increases the number of symbols per bit (with possible values of either 2 or 8).
- 2 Megabit PHY (2M PHY) is also a new PHY configuration introduced in Bluetooth 5.0. The purpose of this configuration is to increase the symbol rate at the PHY layer. Specifically, it achieves a symbol rate of 2 Megasymbols per second, where each symbol corresponds to a single bit. This allows a user to double the number of bits sent over the air during a given period, or conversely reduce energy consumption for a given amount of data by halving the necessary transmit time.
- Coded 2M PHY is the mix of the Coded and 2M PHYs. Support for Coded and 2M PHY only exists within 5.0, and even then support is optional.
If an application that uses the Bluetooth Framework runs on Windows 11 or a newer OS, it can read the current Bluetooth LE connection PHY. The Bluetooth Framework includes sample applications that show how to get information about currently used connection PHY. If your application acts as a GATT client (central), refer to the GattClient sample application. If your application acts as a GATT server (peripheral), take a look at the GattServer sample application. Should you have any questions, please do not hesitate to contact us.