BT900 Series Bluetooth Module

Recommended for New Design (RND)

Overview

NEW: Upgrade firmware from your host microcontroller!

SMALL. SMART. SIMPLE. Laird's BT900 modules reduce the engineering burden and design risk of integrating Bluetooth and Bluetooth Low Energy into any OEM device. The BT900s tiny form factor, optimized power schemes and smartBASIC language provide a secure, stable Bluetooth environment for any embedded design. Let Laird's innovative BT900 series and decades of expertise in Bluetooth module design speed your product to market. Available in BT900-SA and BT900-SC variants.

Download the NEW UwTerminalX as well as the two companion applications: MultiDeviceLoader and TermNotify.

Specifications

Bluetooth Version
4.0 - Dual-Mode
Chipset
CSR 8811
BLE Connections
5
BT Connections
7
Central Role
Yes
Certifications
FCC, IC, CE, Getiki, SIG
Data Rate
Up to 3 Mbp
Dimension (Height - mm)
2.5 mm
Dimension (Length - mm)
19 mm
Dimension (Width - mm)
12.5 mm
Frequency
2.4
Frequency Range (Max)
2.480 MHz
Frequency Range (Min)
2.402 MHz
Input Power
1.8 – 3.6V
Logical Interfaces
UART, GPIO, I2C, SPI, ADC, PWM OR FREQ output
Operating Systems Supported
Windows, Android and iOS
Operating Temp - Max (°C)
85 °C
Operating Temp - Min (°C)
-40 °C
Peripheral Role
Yes
Processor On Board
Cortex M3
Receive Sensitivity
-90 dBm
Stack On Board
Yes
Transmit Power
8 dBm
Wi-Fi Coexistence
3 wire CSR schemes supported (Unity-3 for classic, Unity-3e for BLE)
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Antenna Options Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-SA Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz Integrated Antenna or Externial dipole with uFL FCC/IC/CE/MIC SMT 2.5 mm 19 mm 12.5 mm Windows, Android and iOS applications UART Firmware Upgrade
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-SA-03 Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz FCC/IC/CE/MIC SMT 2.5 mm 19 mm 12.5 mm Windows, Android and iOS applications UART Firmware Upgrade
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Antenna Options Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-SC Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) smartBASIC Hostless QCA (CSR) 8811 External Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz u.FL Connector or SMA FCC/IC/CE/MIC SMT 2.5 mm 19 mm 12.5 mm Windows, Android and iOS applications UART Firmware Upgrade
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Antenna Options Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-SC-03 Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) smartBASIC Hostless QCA (CSR) 8811 External Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz u.FL Connector FCC/IC/CE/MIC SMT 2.5 mm 19 mm 12.5 mm Windows, Android and iOS applications UART Firmware Upgrade
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-US Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz FCC, IC, CE USB Pluggable 11 mm 50.74 mm 18.39 mm Windows, Windows Embedded, Mac OSX, Linux Android
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Compliance Connector Dimension (Height - mm) Dimension (Length - mm) Dimension (Width - mm) Operating Systems Supported
BT900-US-03 Embedded Module Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz FCC, IC, CE USB Pluggable 11 mm 50.74 mm 18.39 mm Windows, Windows Embedded, Mac OSX, Linux Android
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Development Kit Contents
DVK-BT900-SA Development Kit Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz Development board and free software tools
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Development Kit Contents
DVK-BT900-SA-03 Development Kit Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hostless QCA (CSR) 8811 Internal Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz Development board and free software tools
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Development Kit Contents
DVK-BT900-SC Development Kit Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hostless QCA (CSR) 8811 External Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz Development board and free software tools
Product Type Technology OS/Software System Architecture Chipset (Wireless) Antenna Type Logical Interfaces Frequency Range (Min) Frequency Range (Max) Development Kit Contents
DVK-BT900-SC-03 Development Kit Bluetooth 4.0, Dual Mode (Classic + BLE) AT Commands, smartBASIC Hosted QCA (CSR) 8811 External Serial, GPIO, I2C, SPI, ADC 2402 MHz 2480 MHz Development board and free software tools

Photo Gallery

BT900-US

Certified Antennas

  • Nano Blue Series - Bluetooth Internal

    MAF94045

    NanoBlue Series Bluetooth Internal Antenna

    2.4 GHz planar antenna with 2 dBi of Gain and an integrated ground plane for ease of integration.

    Learn More
  • WRR Series - WiFi/Bluetooth

    MAF94019

    WRR Series WiFi & Bluetooth Antenna
    Learn More
  • WCR Series - WiFi/Bluetooth

    MAF94017

    WCR Series WiFi & Bluetooth Antenna
    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
UwTerminalX Quick Reference Guide All Application Note 02/28/2019
Laird OTA.zip All Software 01/17/2019
Application Note - BT900 SPP Throughput Analysis.pdf All Application Note 01/17/2019
Android Application – Laird Toolkit-Batch Functionality v1 2.pdf All Instructional 01/17/2019
Product Brief - BT900.pdf All Documentation 01/17/2019
UwTerminalX – Serial Terminal Utility All Software 04/27/2020
Bluetooth SIG Qualification- Test Report - BT900.pdf All Certification 01/17/2019
Bluetooth Development Kit Terminal Download.zip All Software 01/17/2019
Application Note - smartBASIC for BLE Modules.pdf All Application Note 01/17/2019
Firmware Version 9.1.12.0.zip All Software 01/17/2019
Quick Start Guide - BT900 Serial Functionality.pdf All Instructional 01/17/2019
Walkthrough - Beacons for smartBASIC (BL600 and BT900).pdf All Documentation 01/17/2019
BT900 IC Certifications All Certification 06/06/2019
Serial Application Notes for iOS.pdf All Application Note 01/17/2019
Laird Batch.zip All Software 01/17/2019
Application Note - BT900 vSP and SPP Server.pdf All Application Note 01/17/2019
Android Application – Laird Toolkit-Blood Pressure Functionality v1 2.pdf All Instructional 01/17/2019
Datasheet - BT900 v1.13 All Datasheet 03/05/2019
EU Declaration of Conformity - BT900.pdf All Certification 01/17/2019
BT900 3D Models 0.zip All Software 01/17/2019
Batch Application Notes for iOS.pdf All Application Note 01/17/2019
BT900-V9.1.10.0.zip All Software 01/17/2019
Quick Start Guide - BT900 in Serial Port Profile with Android Devices.pdf All Instructional 01/17/2019
User Guide - BT900 smartBASIC Extensions Manual - v9.1.10.0.pdf All Documentation 01/17/2019
BT900 MIC Certifications All Certification 06/06/2019
Application Note - Using VSP with smartBASIC.pdf All Application Note 01/17/2019
Laird Serial.zip All Software 01/17/2019
Application Note - Upgrading the BT900 Firmware over UART.pdf All Application Note 01/17/2019
Android Application – Laird Toolkit-Heart Rate Functionality v1 2.pdf All Instructional 01/17/2019
CS-RN-BT900-v9 1 12 8.pdf All Documentation 02/04/2019
Radio Equipment Directive (RED) Updates - May 2017 All Certification 10/30/2020
Application Note - Guidelines for Replacing Antennas v1.0 All Application Note 01/17/2019
OTA Application Notes for iOS.pdf All Application Note 01/17/2019
laird toolkit source code v4.18.1.13.zip All Software 01/17/2019
Application Note - BT900 Real Time Clock smartBASIC Sample App.pdf All Application Note 01/17/2019
Quick Start Guide - BT900 in Serial Port Profile with a PC.pdf All Instructional 01/17/2019
User Guide - BT900 smartBASIC Extensions Manual - v9 1 12 0.pdf All Documentation 02/04/2019
Product Change Notification - BT900 (PCN 10B-2019) All Documentation 01/25/2020
Upgrading Firmware from your Host Microcontroller All Application Note 02/28/2019
Laird Library v.0.18.1.1.zip All Software 01/17/2019
Application Note - Using SPI Interface in smartBASIC with DotStar.pdf All Application Note 01/17/2019
Android Application – Laird Toolkit-Proximity Functionality v1 2.pdf All Instructional 01/17/2019
User Guide - smartBASIC Core Functionality v3.4 All Documentation 06/22/2020
RoHS 3 - Bluetooth All Certification 11/10/2020
BT900 CE Certifications All Certification 06/06/2019
Application Note - Multiple Concurrent SPP and vSP Connections with Command Manager.pdf All Application Note 01/17/2019
Schematics - BT900 Development Kit.pdf All Software 01/17/2019
Application Note - BT900 with smartZ Sample Application.pdf All Application Note 01/17/2019
Quick Start Guide - Health Thermometer Sensor Service.pdf All Instructional 01/17/2019
User Guide - BT900 Development Kit.pdf All Documentation 01/17/2019
UwFlashX – Serial Firmware Update Utility All Software 04/27/2020
How to Set Up vSP and SPP - BT900 v1 1.pdf All Application Note 02/04/2019
Heart Rate BLE Demo v5.18.1.0.zip All Software 01/17/2019
Application Note - smartBASIC App Download Protocol over UART.pdf All Application Note 01/17/2019
Firmware Version 9.1.12.8.zip All Software 01/17/2019
Quick Start Guide - BT900 OTA Functionality.pdf All Instructional 01/17/2019
Release Notes - BT900 Firmware v9.1.10.0.pdf All Documentation 01/17/2019
BT900 FCC Certifications All Certification 06/06/2019
BT900 FW v9.1.10.18.zip BT900-US Software 01/17/2019
FCC - DTS Grant - BT900-US.pdf BT900-US Certification 01/17/2019
Product Brief - BT900-US.pdf BT900-US Brochure 03/01/2019
IC - RSS-210 Bluetooth EDR Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
EN 300 328 2.4G BT EDR V2.1.1 - BT900-US.pdf BT900-US Certification 02/04/2019
Application Note - BT900-US Autorun Recovery.pdf BT900-US Application Note 01/17/2019
FCC - Part 2.1093 RF Exposure Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
BT900-US Declaration of Conformity - 2017.pdf BT900-US Certification 01/17/2019
IC - RSS-210 Grant - BT900-US.pdf BT900-US Certification 01/17/2019
CE - EN 62311 - RF Exposure - BT900-SA,BT900-SC (Feb 2016).pdf BT900-US Certification 01/17/2019
Application Note - BT900-US Installation.pdf BT900-US Application Note 01/17/2019
FCC - Part 15.247 Bluetooth EDR Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
CE - EN 301 489 Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
EN 300 328 2.4G BT LE V2.1.1 - BT900-US.pdf BT900-US Certification 02/04/2019
Application Note - SPP Connection to Apple OS X with the BT900-US.pdf BT900-US Application Note 01/17/2019
FCC - Part 15.247 Bluetooth LE Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
CE - EN 62311 2008 RF Exposure Test Report - BT900-US.pdf BT900-US Certification 02/04/2019
FCC - DSS Grant - BT900-US.pdf BT900-US Certification 01/17/2019
Datasheet - BT900-US.pdf BT900-US Datasheet 03/05/2019
FCC - Part 15B ICES Test Report - BT900-US.pdf BT900-US Certification 01/17/2019
Draft EN 301 489 - BT900-US.pdf BT900-US Certification 01/17/2019

FAQ

How do I set Master role for SPP in classic BT on the BT900?

The Master is the device that initiates the connection as per the classic BT inquiry and paging process. There is no option to configure Master/Slave roles in smartBASIC. However, if the BT900 initiates the connection using the BtcSppConnect(BTA$) command then it can be assumed that it has taken the Master role. The BT900 will have performed the inquiry/page, and the remote device will have performed the inquiry/page scan.

I'm getting different SPP throughput between TX and RX. Is there any setting to improve the RX?

By adjusting the FrameSize and Receive Credit in  BTCSPPSETPARAMS API, the throughput will be improved, Detail application note: Application Note - BT900 SPP Throughput Analysis.pdf

 

Is it safe to run a Laird Connectivity Bluetooth module through a PCBA wash cycle?

In general, cleaning the populated modules is strongly discouraged. Residuals under the module cannot be easily removed with any cleaning process. 

  • Cleaning with water can lead to capillary effects where water is absorbed into the gap between the host board and the module. The combination of soldering flux residuals and encapsulated water could lead to short circuits between neighboring pads. Water could also damage any stickers or labels.
  • Cleaning with alcohol or a similar organic solvent will likely flood soldering flux residuals into the RF shield, which is not accessible for post-washing inspection. The solvent could also damage any stickers or labels.
  • Ultrasonic cleaning could damage the module permanently.

However, if water washing is required you will need to use deionized water. We do not recommend chemical cleaning and cannot guarantee it will not damage the modules. If you MUST clean PCB with chemicals it is recommended that you test on one board and then confirm the module still works after the process, prior to adding it to production, while understanding the above affects washing the populated PCBs can have on the 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

Why am I asked to enter legacy pairing code when I am pairing the BT900 with another BT 2.1 or later device? Shouldn't it be simple secure pairing (SPP)?

It is because the “pairing mode” has not been enabled in the smartBASIC application. Please search for “PAIRABLE_ON_STARTUP”, and modify the value to 1 in the sample smartBASIC application.