BL654PA Series Long Range Bluetooth Module

Recommended for New Design (RND)

Overview

Building on Laird Connectivity’s expertise with Nordic from the BL654 series comes the most powerful yet - the BL654PA series! It provides OEMs with the maximum design flexibility and performance. A complete multi-protocol embedded wireless offering with exceptional processing capability, all with extended PA / LNA support for even greater range.

Powered by Nordic’s nRF52840 silicon, the small form factor BL654PA modules and DVKs provide for a secure, robust BLE and Cortex-M4F CPU for any OEM’s product design. The BL654 provides you with maximum development flexibility with programming options for a simple, intuitive AT Command Set, as well as Laird Connectivity’s own smartBASIC environment.

  • Bluetooth 5.1 Low Energy (BLE) + NFC
  • Integrated Skyworks Power Amplifier - Up to +18 dBm output
  • Ultra-small footprint - 22 mm x 10 mm x 2.2 mm
  • 2 Mbps and LE Long Range

More power so you can go farther. 

The BL654PA features an onboard power amplifier that doubles the output power to as high as 18 dBm, over twice the power of the original BL654 Series. High output power and LE Long Range mean roughly double the range for your Bluetooth applications. 

  • Utilizes Skyworks part # SKY66112-11
  • Provides + 10dBm more than standard BL654 (part # 451-0001 / 451-00002)
  • Range of external antennas certified
  • Complete power control with onboard smartBASIC FW image
BL654PA

Specifications

Antenna Options
PCB trace antenna or IPEX MHF4 connector
Bluetooth Version
5.1
Certifications
FCC / IC / RCM / KCC / Bluetooth SIG
Chipset
Nordic nRF52840
Chipset (MCU)
Cortex-M4F
Logical Interfaces
46 GPIOs to support 2x UART, 8x ADC, 2x I2C, 4x SPI, 1x QPSI, 2x PDM, 2x I2S, NFC
Power Consumption (Tx)
102.2 mA (@ +18 dBm)
Programming Options
smartBASIC programming language, AT Command Set
Receive Sensitivity
-98.5 dBm to -107 dBm
Transmit Power
+18 dBm (maximum), configurable down to -26 dBm. (+14 dBm in LE CODED PHY mode)
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max) Bulk or Single
453-00020C Embedded Module Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 Internal UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz Bulk - Cut Tape
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max) Bulk or Single
453-00020R Embedded Module Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 Internal UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz Bulk - Tape and Reel
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max) Antenna Options Bulk or Single
453-00021C Embedded Module Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 External UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz IPEX MHF4 Connector Bulk - Cut Tape
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max) Antenna Options Bulk or Single
453-00021R Embedded Module Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 External UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz IPEX MHF4 Connector Bulk - Tape and Reel
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max)
455-00022 Embedded Module, Development Kit Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 Internal UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Frequency Range 2 (Min) Frequency Range 2 (Max) Antenna Options
455-00023 Embedded Module, Development Kit Bluetooth 5.1, Single Mode (BLE), NFC UwTerminalX (Windows/Linux/Mac), Nordic SDK, smartBASIC, AT Commands, Zephyr Hostless Nordic nRF52840 External UART, GPIO, ADC, I2C, SPI, PCM, I2S, NFC, PWM 2402 MHz 2480 MHz 13.56 MHz 13.56 MHz IPEX MHF4 Connector

Photo Gallery

453-00020R

453-00021R

453-00020C

453-00021C

455-00022

455-00023

Certified Antennas

  • mFlexPIFA Antenna

    EFA2400A3S-10MH4L

    mFlexPIFA Flexible Adhesive-Backed PIFA Internal Antenna

    FlexPIFA antenna for metal mounting with minimal detuning. 2.4 GHz and dual-band 2.4/5.5 GHz with 2 dBi of gain. 

    Learn More
  • 2.4 GHz Dipole RF Antenna

    001-0001

    2.4 GHz Dipole WiFi & Bluetooth Antenna
    Learn More
  • FlexPIFA Antenna

    001-0022

    FlexPIFA Flexible Adhesive-Backed PIFA Internal Antenna

    Industry-first, flexible, planar inverted-F antenna for curved surfaces 2.5-3 dBi gain. 2.4 GHz and dual-band 2.4/5.5 GHz. 

    Learn More

Become a Laird Connectivity Customer and Gain Exclusive Access to Our Design Services Team

  • Antenna Scans
  • Antenna selection and placement
  • Custom antenna design
  • Worldwide EMC testing / certifications
  • Embedded RF hardware / firmware design
  • Cloud architecture and integration
  • Mobile application development
  • Product & Industrial Design

Talk to an Expert

Documentation

Name Part Type Last Updated
Product Brief - BL654PA All Brochure 02-05-20
User Guide - smartBASIC Core Functionality v3.4 All Documentation 06-22-20
Application Note - Using Direct Test Mode with the BL654PA All Application Note 08-29-19
Application Note - Low Power Modes - BL654PA All Application Note 08-29-19
Datasheet - BL654PA All Datasheet 05-07-20
User Guide - BL654PA DVK All Documentation 03-10-20
AS/NZS Certifications - BL654PA All Certification 09-11-19
FCC Certifications - BL654PA All Certification 09-11-19
IC Certifications - BL654PA All Certification 09-11-19
KC Certifications - BL654PA All Certification 09-11-19
Application Note - Nordic SDK-Based Application Development - BL654PA All Application Note 04-09-20
User Guide - BL65x AT Interface Application All Brochure 03-10-20
3D Model - 453-00020 - BL654PA with Internal Antenna All Technical Drawings 03-13-20
3D Model - 453-00021 - BL654PA with IPEX MHF4 Connector All Technical Drawings 03-13-20
BL654PA PCB Footprint (DXF and Altium format) All Technical Drawings 03-13-20
BL654PA SCH Symbol (Altium format) All Technical Drawings 03-13-20
Application Note - Bootloader UART Protocol - BL6xx All Application Note 03-24-20
Datasheet - NFC Flex PCB Antenna All Datasheet 04-07-20
UwFlashX – Serial Firmware Update Utility All Software 04-27-20
UwTerminalX – Serial Terminal Utility All Software 04-27-20
Application Note - Using UART Efficiently to Extend Battery Life (BL65x) All Application Note 06-04-20
Release Notes - BL654/BL654PA v29.4.6.6 All Documentation 06-19-20
BL654/BL654PA smartBASIC Extensions Guide v29.4.6.6 All Documentation 06-19-20
BL654/BL654PA Firmware for Upgrade v29.4.6.6 All Software 06-19-20
PCN_7A-2020 BL654PA Series All Documentation 07-15-20
Application Note - How to Set Up vSP Service - BLxx All Application Note 07-31-20

FAQ

Can a BL65x firmware be updated OTA?

OTA firmware updates are not available for the BL65x modules. While smartBASIC programs (e.g. hello.world.sb) can be uploaded OTA, Laird firmware version (e.g. v28.9.6.0) updates can only be done over JTAG or UART.

Can I write/encode an NFC tag using the BL65x?

The NFC capability of the BL652 is NFC-A Listen Mode, Type 2. It is exposed as a passive interface. Therefore, the BL652 NFC functionality currently allows for read-only (type 2) tags which can be read from an Active NFC reader, such as a smartphone or Arduino-based shield. It is not able to write or encode external tags.

More information on NFC capability on the BL652 can be found in section 7.1, "Near Field Communication (NFC) on page 314 of the BL652 smartBASIC Extensions User Guide

For the BL654, more information can be found in section 6.1 on page 344 of the BL654 smartBASIC Extensions User Guide

Do I have to use the Segger branded debugger to program over the 2-wire SWD interface (JTAG) of the Nordic-based modules?

Yes, any programmer/debugger that supports the SWD 2-wire interface and the Cortex M4F processor should work with the Nordic-based modules. You can find information about the memory map in the nRF5xxxx Product Specification under the Memory and NVMC sections.

How can BL65x module or dongle be used to receive data from a custom service running on another device?

Several Sample Applications are available from the corresponding BL65x-Applications folder on Laird Connectivity's GitHub repository, including an AT Interface sample application.  The AT Interface sample application enables a quick way to configure a smartBASIC BL65x module using the commands available in the AT Interface User Guide to scan, connect, read the GATT table and receive data from the connecting device via the appropriate UUID for the custom service. We recommend referencing the AT Interface Quick Start Guide v1 0.pdf to get started with the AT Interface Application, which walks you through loading the application and a few of the basic commands, including initiating a vSP connection, (vSP is Laird's custom Serial UART application.) A non-vSP connection can be established using AT+LCON  as per page 21 of the AT Interface User Guide.

Alternatively, a custom smartBASIC central application could be developed and loaded to the dongle to connect with the custom service by referencing the Core Functionality smartBASIC and modular Extension User Guides available on the corresponding Product Page for the module, for example:

User Guide - smartBASIC Core Functionality v3.4
BL654 smartBASIC Extensions Guide v29.4.6.0

Please note: the BL654 dongle comes in two variants, smartBASIC variant (451-00003) and Nordic/Zephyr variant (451-00004). If electing to work with the smartBASIC firmware and example applications available on the GitHub repository it will be necessary to purchase the 451-00003 smartBASIC variant, as smartBASIC applications cannot be loaded to the 451-00004 Nordic/Zephyr variant.

How do I set parity on the BL65x?

Setting parity is not possible using smartBASIC on the BL652 and BL654. However, setting parity is supported when working with the Nordic SDK. Therefore, if parity setting is required, the module will have to be programmed using the Nordic SDK and the Nordic examples instead of Laird's smartBASIC examples.

Please refer to the Using the DVK-BL652 and Nordic SDK v14.0.0 with Eclipse & GCC or the Using the BL654 and Nordic SDK v16.0.0 with Eclipse and GCC  application note for assistance in setting up the BL652-DVK or BL654-DVK using the Nordic SDK. Please note that Nordic examples work with the external crystal as the clock source. The DVK-BL652 uses the internal RC Oscillator as the clock source, therefore if you will not be fitting the low frequency external crystal please be sure to modify the Nordic examples as explained in the above application note. You may also wish to refer to the BL652 Dev Kit User Guide or the BL654-DVK User Guide & Quick Start Guide

I've loaded a Nordic SDK application to the BL654PA and it isn't transmitting anything, why is that?

There is a Skyworks 66112-11 front-end module external to the nRF52840 and control over PA (TX) and LNA (RX) must be included in your application. Please see Application Note - Nordic SDK-Based Application Development - BL654PA for more details on how to utilize the Nordic soft device to control the PA and LNA of the Skyworks front-end module.

What is the easiest way to change the advertised Device Name in a smartBASIC Application?

Changing the advertised device name is accomplished using three different functions prior to calling the BleAdvertStart () function.

First, the BleGapSvcInit () function is used to change the device name from the default, Laird [BL600 | BT900], to the desired device name.
Next, the BleAdvRptInit () funtion must be called to create and initialize the advert report with the new device name.
Finally, the BleAdvRptsCommit () function must be called to commit the changes.

Below is an example of a simplified smartBASIC app which changes the default device name to "My Device":
 

//******************************************************************************
// Laird Connectivity
// Rikki Horrigan
//******************************************************************************

//******************************************************************************
//Definitions
//******************************************************************************

//******************************************************************************
//Global Variable Definitions
//******************************************************************************
dim rc     //result code
dim nameWritable
dim nAppearance
dim nMinConnInterval
dim nMaxConnInterval
dim nSupervisionTout
dim nSlaveLatency

//******************************************************************************
// Initialize Global Variable
//******************************************************************************
nameWritable = 0 //The device name will not be writable by peer.
nAppearance = 1091 //Device will apear as Walking sensor on hip (org.bluetooth.characteristic.gap.appearance.)
nMinConnInterval = 500000 // must be smaller than nMaxConnInterval.
nMaxConnInterval = 1000000 //must be larger than nMinConnInterval
nSupervisionTout = 4000000 //Range is between 100000 to 32000000 microseconds (rounded to the nearest 10000 microseconds)
nSlaveLatency = 0 //value must be smaller than (nSupervisionTimeout/nMaxConnInterval)-1

//******************************************************************************
//Functions & Subroutines
//******************************************************************************

//ERROR HANDLER
SUB assertRC(rc, line)
  IF rc != 0 THEN
    PRINT "\nError on line ";line;", code: ";INTEGER.H'rc
  ENDIF
ENDSUB

// Change Device Name

FUNCTION OnStartup()
print "Default Device Name: "; BleGetDeviceName$ ();"\n"
dim deviceName$ //declare variable for DEVICENAME
deviceName$= "My Device" //Set new DEVICENAME
rc = BleGapSvcInit (deviceName$, nameWritable, nAppearance, nMinConnInterval, nMaxConnInterval, nSupervisionTout, nSlaveLatency )
print "\n New Device Name: "; BleGetDeviceName$ (); "\n"

//Create and Initializing the Advert Report (not advertised until BLEADVRPTSCOMMIT is called)
dim adRpt$ //advert report
adRpt$ = ""
rc = BleAdvRptInit(adRpt$, 2, 0, 16)

//Commit the advert report
dim scRpt$ //scan report
scRpt$ = ""
rc = BleAdvRptsCommit(adRpt$,scRpt$)

//Start Advertising
dim addr$
addr$ = ""
rc = BleAdvertStart(0,addr$,100,0,0)

ENDFUNC 1 // Remain in WAITEVENT
//******************************************************************************
//Handler Definitions
//******************************************************************************

//******************************************************************************
//OnEvent Statements
//******************************************************************************

//******************************************************************************
//Equivalent to Main() in C
//******************************************************************************
rc = OnStartup()

Waitevent