After the nRF8001, Nordic Semiconductor released the nRF51822, which is one of the most popular BLE devices. This integrated solution is attractive to developers due to its small size, and the integration of the Cortex-M0 CPU means that there are many compilers available for development. This post will discuss what great strides we can make with the magic of Bluetooth nRF51822 beacon. Let us get started:
Key features of Bluetooth n51822 beacon
In fact, any developer can use the nRF51822 ibeacon with free tools in a given development environment. For nRF51822 Bluetooth smart beacon kit development, it is generally recommended to use a vendor’s toolchain, such as Keil or IAR. Here are the distinguishing features of Bluetooth n51822 beacon.
2.4 GHz transceiver
- -93 dBm sensitivity Bluetooth low energy
- 250kbps, 1Mbps, 2Mbps supports data rates
- TX power -20 to +4 dBm in 4dB steps
- TX power -30 dBm Whisper mode
- 13 mA peak RX, 10.5 mA peak TX (0 dBm)
- RSSI (1dBm resolution)
ARM® Cortex™-M0 32 bit processor
- 275 μA/MHz running from flash memory
- 150 μA/MHz running from RAM
- Serial Wire Debug(SWD)
S100 series SoftDevice ready
Memory
- 256 kB embedded flash program memory
- 16 kB RAM
Support for non-concurrent multi-protocol operation
- On-air compatibility with nRF24L series
Flexible Power Management
- Supply voltage range 1.8 V to 3.6 V
- 2.5 μs fast wake-up using 16 MHz RCOSC
- 420 nA @ 3 V OFF mode
- 530 nA @ 3 V in OFF mode + 1 region RAM retention
- 2.3 μA @ 3 V ON mode, all blocks IDLE
Other notable values include:
8/9/10 bit ADC – 8 configurable channels
31 General Purpose I/O Pins
Two 16 bit and one 24 bit timers with counter mode
SPI Master
Two-wire Master (12C compatible)
UART (CTS/RTS)
CPU independent Programmable Peripheral Interconnect(PPI)
Quadrature Decoder (QDEC)
AES HW encryption
Real Timer Counter (RTC)
6×6 mm QFN package
The block diagram of Bluetooth nRF51822
Applications of Bluetooth nRF51822
The nRF51822 is wirelessly compatible with Nordic’s nRF24L series of products, and these radios are used in quite a few products. The release of the nRF51822 running IPv6 opens the door for products that control the beacon nRF51822 over the Internet, rather than using Wi-Fi. Below will show the typical use cases of BLE nRF51822 beacon.
– Computer peripherals and I/O devices
This includes keyboard, mouse, multi-touch trackpad, etc.
– Interactive entertainment devices
This includes remote control devices such as 3D glasses, gaming controller, etc.
– Personal area networks
This includes medical devices, health and fitness sensors and monitor devices, key-fobs + wrist watch, etc.
– Remote control toys
The differences between nRF51822 and nRF51802
The nRF51822 is already a mature device and is currently in its third edition. The nRF 51802 is a cost-down version of the nRF51822 in order to meet more consumer needs and nRF 51822 p2p products. There is no difference in the capacity of FLASH RAM between nRF51822-QFAA and nRF51802-QFAA. The difference is:
- The receiving sensitivity of nRF51802 is -91dBm, and that of nRF51822 is -93dBm, whichleads to a difference in the receiving distance.
- Tx Power @ power saving mode nRF51822 is -35dBm, nRF51802 is -30dBm. This leads to different power consumption of the chip’s transmission, and the power consumption of nRF51822 is lower.
- In the case of OdBm @DC/DC power supply: nRF51822 transmits current 9.7mA, nRF51802 transmits current 10mA. The same transmit power consumes different currents, and nRF51822 saves more power.
- The internal wake-up time is different. The nRF51822 wake-up time is 4.4uS, while the nRF51802 wake-up time is 7.7uS.
- In IDLE mode, the current of nRF51822 is 2.6uA, the current of nRF51802 is 3.0uA, the standby current is different.
Why choose Bluetooth nRF51822 beacon
The nRF51822 is a powerful, ultra-low-power, multi-protocol wireless system-on-chip (SoC), ideal for Bluetooth low energy and 2.4GHz ultra-low-power wireless applications. The nRF51822 is built on a 32 bit ARM® Cortex™-M0 CPU with 256kB flash + 16kB RAM. The embedded 2.4GHz transceiver supports Bluetooth Low Energy and 2.4GHz operation, with the 2.4GHz mode being wirelessly compatible with Nordic Semiconductor’s nRF24L series.
The nRF51822 also has a wealth of analog and digital peripherals that allow for interaction through a Programmable Peripherals Interconnect (PPI) system without CPU involvement. A flexible 31-pin GPIO mapping scheme makes it possible to achieve complete design flexibility as well as pin location and function. It supports the S110 Bluetooth Low Energy and 2.4GHz protocol stacks (including Gazell), both of which are freely available in the nRF518 Software Development Kit. The nRF51822 is available in a 6x6mm 48-pin QFN package and a 3.5×3.8mm 64-ball Wafer Level Chip Scale Package (WLCSP).
FAQs about Bluetooth nRF51822 beacon
1. Why can’t the nRF51822 usb dongle be programmed externally?
Please check whether the jumper on the 9-pin single-row pin is on the OUT side. Also, please check whether the connection is correct.
2. nrf51822 AK why KEIL can not download the program?
First, check whether the system is powered normally, and then try to use nRF51 Programming of nRFgo Studio to verify whether there is a problem with the KEIL project settings.
3. On my 32-bit Windows XP computer, error code 2908 occurs when installing nRF51 SDK.
Reinstalling after uninstalling nRF51 SDK may cause 2908 error. Please use Task Manager (Ctrl + Shift + Esc) to end nRF514/8SDK Setup. At this point the SDK should have been installed on the computer.
4. The debugger does not stop at the breakpoint.
Some Keil projects in the SDK have selected Optimization level 3 (-03) and Optimize for time optimization options. At this time, when debugging these applications, some breakpoints may fail.
- Press Alt + F7 to open the Target options dialog
- Choose C/C++
- Select Optimization level 0 from the drop-down list
- Do not select Optimize for time
5. Unable to synchronize with the software during debugging.
Using the SEGGER debugger to set or modify breakpoints to temporarily pause the CPU while the system is running may cause a loss of synchronization. Setting breakpoints while the system is running should be avoided.