blue modules ug nov 2013

Bluetooth® Classic BT 3.0 modules
A Comprehensive User Guide
Outline
• Section 1. Blue Modules overview
• Introduction, Certification, Hardware
and Firmware architecture, integration
mode, support tools
• Section 2. Hardware Features
• SPBT2632C2A
• SPBT2632C1A
• STEVAL-SPBTxATVx
• Section 3. Software Features
• SW Architecture, AT Commands and
Configuration Variables
• UART Configuration
• GPIOs Configuration
• Basic Procedures
• SmartCable
• Remote Mode
• Multipoint
• Power Modes
• Security
• Communication with Smart Phones
• COD setting
• Upgrading Firmware
2
Section 1
Blue Modules overview
Blue Modules characteristics (1/3)
SPBT2632C2A.AT2
SPBT2632C1A.AT2
STM32 ARM-Cortex-M3 MCU + STLC2690
Bluetooth IC
STM32 ARM-Cortex-M3 MCU + STLC2690
Bluetooth IC
Class 2, typ output 0dBm
Class 1, typ output 10dBm
Bluetooth 3.0
Bluetooth 3.0
SPP and AT2 command


Antenna and shield


Key features
Core devices
Class
Bluetooth standard
with external LPO (Low Power Oscillator)

16
24
Micro-sized : 11.6 x 13.5 mm
Small : 15 x 27 mm
2.1 ÷ 3.6 V
2.1 ÷ 3.6 V
Voltage regulator


Clock integrated


WLAN coexistence


-40 ÷ 85 ºC
-40 ÷ 85 ºC
Low power mode
Pin count
Form factor
Supply voltage range
Operating temperature
4
Blue Modules characteristics (2/3)
SPBT2632C2A.AT2
SPBT2632C1A.AT2
Key features
High Speed CPU Mode 32 MHz
Average values
ACL data 115 KBaud UART at max throughput (Master)
23 mA
23 mA
ACL data 115 KBaud UART at max throughput (Slave)
27.5 mA
27.5 mA
Connection, no data traffic, Master
9.1 mA
9.1 mA
Connection, no data traffic, Slave
11.2 mA
11.2 mA
Connection 375 ms sniff with LPO (Low Power Oscillator)
490 µA*
490 µA
Page/inquiry scan, without deep sleep
9.5 mA
9.5 mA
Page/inquiry scan, with deep sleep, no LPO
2.7 mA
-
Page/inquiry scan, with deep sleep and LPO
520 µA*
520 µA
Standby, without deep sleep
8.6 mA
8.6 mA
Standby with deep sleep, no LPO
1.7 mA
-
Standby with deep sleep and LPO
70 µA*
60 µA
* With external clock
5
Blue Modules characteristics (3/3)
SPBT2632C2A.AT2
SPBT2632C1A.AT2
Reset (NRST) pin


Boot pin


4 pins for UART interface (TX, RX, CTS, RTS)


6x bottom pins JTAG interface
(JTDI, JTDO, JTMS, JTCK, JTRST, NRST)


7 and LPO input
16
2.1 V
2.1 V
High speed UART


I2C only for Apple code processor interface


50 Ω
50 Ω
-86 dBm
-90 dBm
0 dBm
+10 dBm
Key features
Pin counting
GPIOs
GPIO High Level
Interfaces
RF characteristics
Antenna Load
Sensitivity Level (BER < 0.001 with DH5)
Maximum Output Power (50 Ω load)
6
Blue Modules - Certifications
•
•
Blue Modules are CE and Bluetooth® certified.
Radio type compliant for US, Canada and Japan
SPBT2632C1A.AT2
BQB qualified
design
CE Statement of
opinion*
FCC and IC
Japan Type
Certification
QD ID: B019224
0447ARAM00002
FCC ID:
X3ZBTMOD3
IC: 8828A-MOD3
Work in Progress
Product type: End Product
TGP Version: Core 3.0
Core Spec Version: 3.0
Product Description:
Bluetooth Module, spec V3.0
Measurements in accordance
with:
EN 300 328 V 1.7.1 (2006-10)
EN 301 489-17 V 2.1.1 (2009)
EN 60950-1:2006
+A11:2009+A1:2010
In accordance with FCC part 15, the
SPBT2632C1A.AT2 is listed above
as a modular transmitter device
CE 0051 !
SPBT2632C2A.AT2
QD ID: B019224
Product type: End Product
TGP Version: Core 3.0
Core Spec Version: 3.0
Product Description:
Bluetooth Module, spec V3.0
0448ARAM00003
Measurements n accordance
with :
EN 300 328 V 1.7.1 (2006-10)
EN 301 489-17 V 2.1.1 (2009)
EN 60950-1:2006
+A11:2009+A1:2010
FCC ID:
X3ZBTMOD5
IC: 8828A-MOD4
In accordance with FCC part 15, the
SPBT2632C2A.AT2 is listed above
as a modular transmitter device
CE 0051 !
* Reports available on request
Radio type ID:
006-000095
SPBT2632C2A.AT2 is
certified as Type Approval
in conformity with
Chapter 38-24-1 of Japan
Radio Law
7
Blue Modules hardware architecture
TX Power: +10 dBm.
RX Sensitivity: -90 dBm
Size: 15 x 27 mm
SPBT2632C1A.AT2
TX Power: +0 dBm.
RX Sensitivity: - 86 dBm
Size: 11.6 x 13.5 mm
SPBT2632C2A.AT2
Supply Voltage
Voltage
regulator
µP
Flash
RAM
Antenna
LPO clock
Bandpass
filter
Bluetooth
radio
Crystal
GPIOs
UART
8
Blue Modules firmware architecture
Integrated Firmware
Generic Access Profile (GAP)
 Discovers and connects to other devices
 Security (authentication)
 idle mode procedure: inquiry
 linking, paging, connection
AT2 Interpreter (abSerial)
SPP
SDAP
Bluetooth
Protocol Stack
Higher Layers
iAP
GAP
RFCOMM
Service Discovery Profile (SDP)
 Locates/describes services from/to other
devices
SDP
L2CAP
HCI
Bluetooth
Protocol Stack
Lower Layers
Serial Port Profile (SPP)
 Emulates legacy serial communication
 Cable replacement
LMP/LM
Baseband/LC
Supply Voltage
iPod Accessory Protocol (iAP)
 Supports communication with Apple iOS
Bluetooth enabled device*
GPIOs
Antenna
Bandpass
filter
LPO
clock
Voltage
regulator
µP
Bluetooth
Flash
RAM
radio
HCI
Commands
Crystal
UART
Host
9
AT Command Layer
The Blue Modules Firmware integrates a layer of AT-like commands (abSerial) on top of the Bluetooth
stack. They have a very simple syntax and allow Firmware configuration and Bluetooth connection
management
SPBT2632C2A.AT 2 (Class 2 profile, enhanced FW)
SPBT2632C1A.AT 2 (Class 1 profile, enhanced FW)
Blue Modules part number
Key features
AT2 command
Bluetooth version
3.0
Point-to-point communication

Multipoint communication

Remote commands

Sniff mode

Profiles
SPP

iAP

Smart Phone support
Android

iPhone

10
Integration Modes
Connect the Blue Modules with your favorite host processor via the UART interface
Bluetooth Dongle
PC
AT
commands
Reference Design
SPBT2x32Cxx
UART
USB/Serial Bridge
Embedded System
Host
(i.e. STM32F)
Peripherals
AT
commands
UART
SPBT2x32Cxx
STEVAL-SPBTxATV3
11
Support tools
Order codes
Order code
Evaluation boards
Other tools
Description
SPBT2632C2A.AT2
Bluetooth V3.0, Class2, antenna, AT2 command Firmware
SPBT2632C1A.AT2
Bluetooth V3.0, Class1, antenna, AT2 command Firmware
Order code
Description
STEVAL-SPBT3ATV3
USB dongle, evaluation board for SPBT2632C2A.AT2
STEVAL-SPBT4ATV3
USB dongle, evaluation board for SPBT2632C1A.AT2
Technical Documentation
Promotional Documentation
Technical support
Datasheets
Marketing presentation on www.st.com
Application note
Product briefcase on MyST
Contact us @
[email protected]
AT command user manual
12
Section 2
Hardware Features
SPBT2632C2A
Hardware Features
SPBT2632C2A Hardware Features
• Bluetooth 3.0 Compliant
• Integrated Chip Antenna
• Max Output Power transmission:
• 0 dBm
• Small form factor:
• 11.5 x 13.5 mm
• External Communication
interfaces:
• UART
• 7 GPIO
• LPO
• 3.3V single supply voltage,
integrated voltage regulator
• Integrated 26 MHz quartz oscillator
• Operating temperature range:
• -40º ~ +85 ºC
Voltage Supplier
15
BOOT
Voltage Regulator
Balun
STLC2690
(BT Controller)
UART
STM32F103
(BT Host)
26 MHz
Oscillator
GND
LPO
RESET
UART
7 GPIO
SPBT2632C2A Pinout
STM32F103
(package BGA64)
10.50
STLC2690
(package WFBGA48)
7 Configurable
GPIOs
I2C (Alt config for MFI only)
UART Interface
I2C (MFI only)
16
SPBT2632C2A Characterization Figures
Parameter
Conditions
Min
Typ
Max
Unit
Supply Voltage, Vin
---
+2.1
+2.5
+3.6
V
Operating Temperature Range
---
-40
---
+85
°C
Signal Pin Voltage
---
---
+2.1
---
V
Radio Rec. Sensitivity Level
BER < 0.001 with DH5
---
-86
---
dBm
Radio Transmitter Output Power
50 Ω Load
---
0
---
dBm
Power Consumption. High Speed CPU Mode: 32 MHz
Average
Unit
ACL data 115 KBaud UART at Max throughput (Master)
23
mA
ACL data 115 KBaud UART at Max throughput (Slave)
27.5
mA
Connection, no data traffic, Master
9.1
mA
Connection, no data traffic, Slave
11.2
mA
Connection 375 ms sniff (external LPO required)
490
µA
Standby, (page/inquiry scan), without deep sleep
8.6 (9.5)
mA
Standby, (page/inquiry scan), with deep sleep, no external LPO
1.7 (2.7)
mA
Standby, (page/inquiry scan), with deep sleep, with external LPO
70 (520)
µA
17
SPBT2632C2A Characterization
with External Low Power Oscillator (1/2)
• LPO: Low Power Oscillator
(32.768kHz External clock, Tolerance: ±150ppm)
• LPO is connected to the CPU and Radio IC.
• LPO standard of Radio IC (VDD = 1.8V) is:
• Duty cycle: min 40%, max 60%
• Low level Input Voltage (VIL): Min = 0, Max = 0.5V
• High level Input Voltage (VIH): Min = 1.2V, Max = 1.8V
• On the other hand, CPU STM32F103 (VDD = 2.1V) is:
• Duty cycle: Min 30%, Max 70%
• Low level Input Voltage (VIL): Min = VSS, Max = 0.3 VDD
• High level Input Voltage (VIH): Min = 0.7VDD, Max = VDD
18
SPBT2632C2A Characterization
with External Low Power Oscillator (2/2)
• CPU power supply is supplied from the 2.1V LDO in the module.
Therefore, 0.7 * VDD = 0.7 * 2.1 = 1.47 V (VIH Min) next, VIH is dominated by
the MCU side.
• Specification of LPO that satisfies the standards of both:
• Duty cycle: Min 40%, Max 60%
• Low level Input Voltage (VIL): Min = 0, Max = 0.5V
• High level Input Voltage (VIH): Min = 1.47V, Max = 1.8V
• LPO operation check method:
Put to Sniff mode, connected by state without communication for 10 minutes
(Sniff mode), if it is maintained, it becomes the LPO judgment OK
19
SPBT2632C1A
Hardware Features
SPBT2632C1A Hardware Features
Voltage Supplier
• Bluetooth 3.0 Compliant
• Integrated Chip Antenna
• Max Output Power transmission:
• +10 dBm
• Small form factor:
• 15 x 27 mm
• External Communication interfaces:
• UART
• 16 Configurable GPIOs
• 3.3V single supply voltage, integrated
voltage regulator
• Integrated 26 MHz and 32 kHz
quartz oscillators
• Operating temperature range:
• -40º ~ +85 ºC
21
BOOT
Voltage Regulator
Balun
STLC2690
(BT Controller)
32 kHz
Oscillator
UART
STM32
(BT Host)
26 MHz
Oscillator
GND
RESET
UART
16 GPIO
SPBT2632C1A Pinout
STM32F103
(package BGA64)
UART Interface
I2C (MFI only)
Shield
16 Configurable GPIOs
22
SPBT2632C1A Characterization Figures
Parameter
Conditions
Min
Typ
Max
Unit
Supply Voltage, Vin
---
+2.1
+2.5
+3.6
V
Operating Temperature Range
---
-40
---
+85
°C
Signal Pin Voltage
---
---
+2.1
---
V
Radio Rec. Sensitivity Level
BER < 0.001 with DH5
---
-90
---
dBm
Radio Transmitter Output Power
50 Ω Load
---
---
+10
dBm
Power Consumption. High Speed CPU Mode: 32 MHz
Average
Unit
ACL data 115KBaud UART at max throughput (Master)
23
mA
ACL data 115KBaud UART at max throughput (Slave)
27.5
mA
Connection, no data traffic, Master
9.1
mA
Connection, no data traffic, Slave
11.2
mA
Connection 375 ms sniff
490
µA
Standby, (page/inquiry scan), without deep sleep
8.6 (9.5)
mA
Standby, (page/inquiry scan), with deep sleep, with external LPO
70 (520)
µA
23
STEVAL-SPBTxATV
Hardware Features
STEVAL-SPBTxATV3
• Plug&Play Solution
Example: STEVAL-SPBT3ATV3
• Reference designs and evaluation boards
• Evaluation tool of the integrated abSerial AT-like commands
layer (abSerial)
• Power Supplied via the USB interface
• Compact and Small form factor
• LEDS connected to GPIO for testing purposes
• UART/USB bridge from Silicon Lab requires to install the
correspondent driver on your PC
SPBT2632C2A.AT2
HyperTerminal or similar
HyperTerminal or similar
abSerial
Commands/Events
VCOM
HOST A
HOST B
abSerial
Commands/Events
VCOM
Refer to the related Application Notes to get started with schematics and basic procedures
25
STEVAL-SPBT3ATV3
26
JTAG
STEVAL-SPBT3ATV3
LedPower
Reset
USB
bridge
SPBT2632C2A
SPBT2632C2A Reference Design
STEVAL-SPBT3ATV3 BOM, Gerber and Schematic
available on the ST website.
See detailed information and schematic in the
LedGPIO1
Boot
Application Note: AN4127
«Demonstration board for Bluetooth® module
class 2 SBT2632C2A.AT2»
LedGPIO4
26
STEVAL-SPBT4ATV3
27
JTAG
STEVAL-SPBT4ATV3
LedGPIO1
Reset
LedGPIO4
USB
bridge
SPBT2632C1A Reference Design
STEVAL-SPBT4ATV3 BOM, Gerber and Schematic
available on the ST website.
See detailed information and schematic in the
Application Note: AN4128
«Demonstration board for Bluetooth® module
class 1 SBT2632C1A.AT2»
LedPower
Boot
SPBT2632C1A
27
Section 3
Software Features
Software Architecture, AT Commands
and Configuration Variables
Modes of Operation
•
The Firmware supports Multiple Modes of
Operation:
• Command Mode
• Bypass Mode
• Remote Mode
• Sniff Mode
• Deep Sleep Mode
• Multipoint/Broadcast Mode
•
Commands and Responses are handled only
while the application is in Command Mode
•
In Bypass Mode the data stream is transferred
directly from the UART and the Bluetooth SPP
•
In Remote Mode a node can be remotely
configured (only in AT2)
•
Sniff Mode is a low power consumption operation
mode (only in AT2)
•
Deep Sleep Mode is a low power consumption
status mode
•
Multipoint/Broadcast Mode manages connections
between a master and multiple slaves
Host
Flow of:
Commands/
Responses/
DataStream
Connection via the
UART interface
AT2 Interpreter
SPP
SDAP
iAP*
GAP
RFCOMM
SDP
L2CAP
LMP/LM
Baseband/LC
30
Operation Flow
31
Configure
Startup/Reset
Module is connected
Module is not connected
Bonding
Device
Discovery
StandBy
CommandMode/
Deep Sleep
Mode
Connect with
Remote Device
Smart
Cable
Disconnect
Sniff Mode
Remote Mode
Active
ByPassMode/
ByPass
Escape from
Bypass Mode
Multipoint
Broadcast
Mode
Active
CommandMode/
Configure
Data Transfer Mode
- SPP Profile Usage -
31
AT2 Commands
Category
List of Commands
Reset
Reset
Device Information
BtcVersion
Build
DefaultLocalName
LocalName
GetBdAddress
Version
GPIO Use
GPIOConfig
GPIORead
GPIOWrite
Serial Configuration
ChangeBaud
ChangeDefaultBaud
HostEvent
StreamingSerial
Mode management
Device Discovery
Escape Seq. ^#^$^%
Remote Commands Seq.
@#@$@%
Bypass
Category
List of Commands
Bonding
Bond
DisableBond
EnableBond
EraseBondTable
ShowDev
Connection
SPP(Dis)Connect
LinkDisconnect
SmartCableSetup
DeleteSmartCable
IAP(Dis)Connect
RoleSwitch
PassKeyAccept
ReadClock
Configuration
Config
Cptest
Page/Inquiry timing
UpdateInquiryScan
UpdatePageScan
SleepModes
(Exit)Sniff
Discovery
The list and syntax of AT2 Commands are described in the User Manual UM1547
32
AT(2) Configuration Variables
Category
List of Variables
Device
Informations
BuildVersion
BD_ADDR
DeviceName
COD
UART
Configuration
Streaming Serial
UartBaudRate
UartParity
UartDataBits
UartStopBits
UartTimeout
HostEvents
Hardware
Configuration
CpuMHz
HciBaudRate
SPIEnable
SPIMode
I2CEnable
UseExtLPO
HSE_MHz *
Category
List of Variables
Security
PIN
BondingAllowed
EnableEncryption
DefaultSecurity
DefaultAuthentication
MITMEvent
Power
Modes
AutoSniff
AutoSniffTimeout
AutoSniffInterval
HostShallowSleepEnable
HostDeepSleepEnable
GPIO_HostKeepAwake
GPIO_HostWakeup
AllowSniff
Mode
Category
List of Variables
Radio
UseSmallPackets
EnableAFH
EnablePowerControl
QoS_latency
PageScan
InquiryScan
Smartphones
EnableIAP
IAPAppID
iAPPProtocolStrMain
iAPProtocolStrAlt
CPI2CMode
SPP128UUID
AltCPGPIO
Smartphone
hidden
variables
AccName
AccManufacturer
AccModelNumber
AccSerialNumber
Others
ATReply
MPMode
RmtEscapeSequence
The complete list for AT2 Configuration Variables and their default values are described in the User Manual UM1547
33
UART Configuration
UART Configuration
35
The module allows to connect an external Host Processor via the UART interface
•
•
RXD
TXD
RTS
RXD
CTS
RTS
TXD
Bluetooth Module
Host
•
CTS
Four signals are provided with the UART interface.
The TXD and RXD are used for data while the CTS and
RTS pins are used for the Hardware flow control
The baud rate is configurable in the 1200-921600 range of values.
It can be changed by using the correspondent variables or at commands
Default serial port configuration is 115200/8/n/1. The correspondent variables can be used to
change the UART parameters
To enable the use of the flow control the streamingserial variable/command can be used
35
GPIO Configuration
GPIOs Configuration
37
• The integrated Firmware configures the GPIOs as in the following table.
• Active Status Probe (MCU RUN): always on when the radio is in active mode; Blinking when
the radio is in deep sleep mode
• Connection Status Probe: always on when the module is connected
GPIO1
GPIO2
GPIO3
GPIO4
GPIO5:GPIO7 GPIO8:GPIO16
SPBT2632C2A
Output/
Connection
Status Probe
Input/
Pulled-down
BOOT
Input/
Pulled-down
Output/
Active Status
Probe
Input/
Pulled-down
(MFI chip on 5,6)
---
SPBT2632C1A
Output/
Connection
Status Probe
Input/
Pulled-down
BOOT
Input/
Pulled-down
Output/
Active Status
Probe
Input/
Pulled-down
Input/
Pulled-up
•
•
GPIOs can be reconfigured with the following commands
•
AT+AB gpioconfig [GPIO pin] [I/O]
•
AT+AB gpioRead [GPIO pin]
•
AT+AB gpioWrite [GPIO pin] [1/0]
Special Use. In the modules SPBT2632C1A the GPIO11 and GPIO12 can be also
reconfigured as I2C clock and I2C data for integration of an MFI coprocessor
37
Basic Procedures
Device Discovery Procedure
Device 0
Host
Device 1
39
Device n
Module
Setup
Command Mode - Not Connected
AT+AB Discovery
AT-AB InqPending
Inquiry Response 1
Inquiry Response n
AT-AB DiscoveryPending n
Page Dev1
Page Success
Name Req Procedure
Up to 10 devices
Disconnect
Disconnect
AT-AB Device “BDAddr1” “Name1”
Name Req is repeated for Device 2
39
Device Discovery Allowed
40
• Var35 InquiryScan = True (module Discoverable)
• Var35 InquiryScan = False (module Non-discoverable)
Var35
InquiryScan
True (default)
False
AT Command:UpdateInquiryScan 0¹
Discoverable
(Visible in the device
discovery of the host)
AT Command:UpdateInquiryScan 2¹
Non-discoverable
(Not visible in the device
discovery of the host)
¹ Please refer to User Manual for AT command details
4040
Bonding Procedure
41
• Bonding is used for device pairing. The bonding effect is the generation of an encryption LinkKey
• By default, modules are configured with bonding allowed, meaning the device is always allowed to accept bonding
request
Device B
Device A
Device A
Device B
Host
Module
Module
Host
AT+AB Bond BDAddrB pin
Bonding
AT-AB BondPending
BDAddrB
AT-AB BondPending
BDAddrA
Store LinkKey
AT-AB BondOk BDAddrB
Store LinkKey
AT-AB BondOk BDAddrA
41
Bonding Allowed
• Var33 BondingAllowed = True (automatically allow Bond)
• Var33 BondingAllowed = False (Bond not allowed)
Var33
BondingAllowed
True (default)
False
AT Command:DisableBond¹
Bluetooth pairing
(Bond) allowed
Pairing (Bond) from the new
Bluetooth Device is not allowed.
AT Command:EnableBond¹
It is possible SPP/iAP Connect for
devices already stored into the
bonding table.
¹ Please refer to User Manual for AT command details
42
Connection with a Remote Device
Procedure
Device B
Device A
Device A
Host
43
Device B
Module
Module
Host
Setup
Setup
Command Mode- Not Connected
Command Mode- Not Connected
AT+AB SPPConnect BDAddrB
SPP Connection Established
ByPass Mode - Connected
ByPass Mode - Connected
AT-AB ConnectionUp
AT-AB ConnectionUp
AT-AB – BypassMode -
AT-AB – BypassMode Data Exchange
43
Connection Allowed
44
• Var34 PageScan = True (module Connectable)
• Var34 PageScan = False (module Non-connectable)
Var34
PageScan
True (default)
False
AT Command:UpdatePageScan 0¹
Connectable
(connection is allowed)
AT Command:UpdatePageScan 1¹
Non Connectable
(connection isn’t allowed)
¹ Please refer to User Manual for AT command details
44
Escape from Bypass Mode Procedure
45
• Once a connection has been established between host and remote device, the host
can put the abSerial interface back into command mode by using the Escape
Sequence. Once back in command mode, new commands can be issued.
Host
Module
ByPass Mode - Connected
Data Exchange
^#^$^%
2 seconds
Escape Sequence
must be followed
by 1000 ms of no
data
Command Mode- Connected
AT-AB -CommandMode
45
Disconnect with a Remote Device Procedure
Device B
Device A
Device A
Host
Device B
Module
Module
ByPass Mode - Connected
^#^$^%
46
Host B
ByPass Mode - Connected
Data Exchange
Command Mode- Connected
AT-AB -CommandModeAT+AB SPPDisconnect
SPP Connection Down
Not Connected
AT-AB SPPConnectionClosed
AT-AB ConnectionDown
Command Mode- Not Connected
AT-AB ConnectionDown
46
SmartCable
SmartCable
Remote Companion Device
BDAddress: 12345678
48
AT+AB smartcablesetup 12345678 10 100
Allows this device to automatically connect
with the remote companion
at the startup with no user interaction
• The Smart Cable feature establishes an SPP link to the designed remote
device automatically and at the startup time
• Replace the need for AT connection commands
• If a link is disconnected, The Smart cable feature will automatically reconnect the
link without user interaction
• Enabled with the command
• AT+AB SmartCableSetup [bd address] [attempts] [interval]
• The Bdaddress of the designed remote device is saved in the NV memory
• The feature is active after a reset
• Attempts and Interval define the paging options of the companion device
• AT+AB DeleteSmartCable command removes the Smart Cable settings
48
Remote Mode
Remote Mode
• A remote device can be controlled and configured by a BlueTooth link
• This function is tipically used to remotely configure UART or GPIOS of a Remote Device
• The Remote Mode Feature is enabled starting from the AT2 version of the firmware
To enable a remote node to be remotely
controlled the following variable must be set
RmtEscapeSequence = true
Device A
Host
Device B
Module
Module
Host B
Bypass Mode - Connected
Bypass Mode - Connected
Data Exchange
@#@$@%
AT-AB Remote Mode
Remote Configuration
AT+AB bypass
AT-AB Bypass Mode
AT-AB Bypass Mode
50
Multipoint
Broadcast and Multipoint Use Modes (1/2)
52
AT2 enables multipoint or broadcast connection modes to handle connections between a master and
multiple slaves
• To select a connection mode the configuration variable MPMode must be used
MPMode Variable
•
MPMode = 0 (Def.)
Point To Point
MPMode = 1
Multipoint
MPMode = 2
Broadcast
Use Multipoint when a message needs to be sent to multiple slaves uniquely identified by an ID. When
a message is sent by a slave to the master, it is also uniquely identified by the ID of the sender. An
header defined by the protocol described in the following table is used with each packet of data
Dest/Source Node
•
Use Mode
Length
Data
1 byte
3 bytes
Up to 315 bytes
Node Id from 0 to 9, 1
ASCII decimal digit
3 ASCII decimal digit from
001 to 315
Up to 315 bytes
Use Broadcast when a message needs to be broadcasted to multiple slaves.
52
AT2: Broadcast and Multipoint
Use Modes (2/2)
Multipoint
3
Broadcast
3
slave
5 – SppDisconnect 0
slave
Slave1
Slave1
MPMode=0
1- ID0 
Master
MPMode=0
1- ID0  Master
master
6 – SppDisconnect 0
master
1 - Sppconnect Slave1Addr
1 - Sppconnect Slave1Addr
slave
0005slave
5
Master
Master
MPMode=1
1- Node ID 0  Slave1
2-Node ID 1  Slave2
53
4
0006master
2 -Sppconnect Slave2Addr
master
MPMode=2
1- Node ID 0 
Slave1
2-Node ID 1  Slave2
5
slave
2 -Sppconnect Slave2Addr
Slave2
master
Slave2
MPMode=0
2- ID1  Master
MPMode=0
2- ID1  Master
4
slave
53
Power Modes
Power Modes
55
• Active Mode
• Standard mode operation
• Sniff Mode
• Sniffing is a process of listening for specific types of commands that occur periodically. The sniff mode is used
to reduce the power consumption of the device as the receiver can be put into standby between sniff cycles
• Requiring the use of an LPO, sleep mode is supported only by the modules SPBT2632C2A.AT2 and
SPBT2632C1A.AT2
• Sniff mode requires to set few dedicated configuration variables. It can be remotely activated with commands or
can be automatically activated at the connection time.
• Deep Sleep Mode
• The Deep Sleep Mode temporarily halt’s the BT controller chip’s operation by stopping the 26 MHz main crystal
• Deep Sleep is activated by setting related configuration variables
• Scheduled CPU activity, timers, remote link activity, and GPIO wakeup will resume active mode
55
Power Modes Setup
The use of DSM and Sniff are enabled via the following set of Configuration Variables
and Commands
Variable/Command
Impacted
Power
Mode
Use
HostDeepSleepEnable
DSM/Sniff
Enables deep sleep mode. Mandatory for DSM. Advised for the Sniff
Mode.
GPIO_HostWakeUp
DSM
GPIO register used to wake-up the module after it enters deep sleep
mode. A setting of none means that this function is disabled.
GPIO_HostKeepAwake
DSM
GPIO register used to prevent the module from entering deep sleep
mode. A setting of none means that this function is disabled.
AllowSniff
Sniff
Enables Sniff Mode
AutoSniff
Sniff
Enables automatic Sniff Mode
AutoSniffTimeout
Sniff
The inactivity timeout in seconds. After this time passed, Starts
AutoSniff
AutoSniffInterval
Sniff
Sniff Slot interval applied AutoSniff
UseExtLPO
DSM/Sniff
A 32.768kHz low power oscillator needs to be connected to enable
Sniff Mode
AT+AB sniff [BDAddress] [Sniff Int]
Sniff
Used to switch a remote device from active mode to sniff mode
AT+AB exit sniff [BDAddress]
Sniff
Used to switch a remote device from sniff mode to active mode
56
Deep Sleep WakeUp
57
• GPIO WakeUP. abSerial supports the GPIO-based Deep Sleep Wakeup
• For example, the following variable configuration set GPIO3 to be used with this purpose.
AT+AB config GPIO_HostWakeUp = 3
AT+AB config GPIO_HostKeepAwake = 3
AT+AB config HostDeepSleepEnable = true
• The DSM will be enabled as long as the GPIO3 is maintained low.
• Radio WakeUp. When DSM is activated the module is still able to accept a
connection request from a remote device.
• If a connection request is received the module goes awake and return to
sleep when the connection is closed
57
Sniff mode
58
• To enter in Sniff mode Deep sleep variable must be configured as per
following table
• For example, the following variable configuration set GPIO3 to be used with this purpose.
AT+AB config GPIO_HostWakeUp = 3
AT+AB config GPIO_HostKeepAwake = 3
AT+AB config HostDeepSleepEnable = true
• The DSM will be enabled as long as the GPIO3 is maintained low
• To enter in sniff mode, once deep sleep mode is active, the variable allowsniff
must be true
• The sniff can be automatic or enabled via AT command
1.
Automatic: the variable autosniff is set true
2.
Manual: the module is set into sniff mode using the command AT+AB sniff [Bdaddress of the
device to be placed into Sniff Mode]
58
Power Mode Figures
ACTIVE MODE
Configuration Summary
• HostDeepSleepEnable = false
• GPIO_HostKeepAwake = none
• GPIO_HostWakeup = none
• AllowSniff = false
30 mA (TX)
13mA (RX)
9.6 mA (Standby)
DEEP SLEEP MODE
30 mA (TX)
Configuration Summary
• HostDeepSleepEnable = true
13mA (RX)
• GPIO_HostKeepAwake = 3
• GPIO_HostWakeup = 3
0.05 mA (Standby)
• AllowSniff = false
(If ExtLPO is used)
SNIFF MODE
Configuration Summary
• HostDeepSleepEnable = true
• GPIO_HostKeepAwake = 3
• GPIO_HostWakeup = 3
• AllowSniff = true
• UseExtLPO=true
Connected
AT+AB
Sppdisconnect
(from the master)
AT+AB Sppconnect
(from the master)
Connected
30 mA (TX)
13 mA (RX)
AT+AB
Sppdisconnect
(from the master(
AT+AB
Sppconnect
(from the master)
AT+AB Sniff
(from the
master)
Connected
Sniff
AT+AB ExitSniff
(from the master)
10 mA
(Sniff TX)
0.05 mA
(Sniff RX/Standby)
The values refer to an SPBT2632C1A.AT2; Slave Mode; CPU Speed: 32MHz; LPO Enabled
59
Security
Security
61
• To maintain security, Bluetooth devices can use keys to verify the identify of
other devices (Pairing/Authentication) and to modify data to make the data
private (Encryption)
• Blue Modules implement the Bluetooth 2.1 security features for the
Authentication and the Encryption
• When Paired with companion devices, Blue Modules support:
• Legacy Pairing with 2.0 or earlier Bluetooth versions
• Secure Simple Pairing with 2.1 or newer Bluetooth versions
61
Security
•
62
Security features in Blue Modules are managed with a set of configuration variables
•
AlwaysBonding (boolean) to establish device connectability
•
PIN: PIN used when pairing is required by a companion device (only for comunication
with 2.0 or earlier deprecated Bluetooth devices )
•
DefaultSecurity: Establishes the security level i.e. the authentication level with a
companion device.
•
Possible Values:
•
1- No Security;
•
2/3 - Legacy Security for 2.0/earlier Bluetooth devices (deprecated)
•
4 - SSP enabled. This value also supports legacy pairing with Bluetooth
2.0/earlier
•
Encryption: (Boolean) Establishes if an encryption key is used
•
DefaultAuthentication: establishes which level of SSP authentication is enabled.
•
Possible Values:
•
4. SSP Just Works (no MITM protection)
•
5. SSP pairing modes (with MITM protection setting the variable
MITMEvent true)
62
AT2 Default Security Configuration
Variable Name
Variable Number
Default Value
63
Note
BondingAllowed
Var33
True
Device is always connectable
Pin
Var06
1234
Used only when connection is with 2.0 devices or
earlier
DefaultSecurity
Var40
4
SSP enabled
DefaultAuthentication
Var41
5
MITM protection by asking for a confirmation
message during pairing
MIMTEvent
Var55
False
Sends paring passkey to the main UART
EnableEncryption
Var39
True
Encryption Key is used
63
Communication with Smart Phones
Communication with Smart Phones
• AT2 supports communication with Smart
Phone, i.e. Android and Apple devices
AT2 implements both the MFI
protocol and the iAP profile
• MFI is a licensing program from Apple, to
develop electronic accessories that connect to
iPod, iPhone, and iPad
• Apple Accessory devices must utilize an iPod
Authentication Co-processor (CP)
• Blue Modules are MFI ready and fully
integrate the IAP protocol
• The MFI Apple Co-processor connected via
the I2C pins
MFI
Apple
Coprocessor
I2Cdata
I2Cclk
Buy the chipset
from Apple
SPBT2632CxA.AT2
• Supporting Apple iPhone and other iOS
Bluetooth data oriented connections requires a
proprietary profile called iAP
Set the CPI2CMode
Variable of the module
v2.0B chip Renesas SO8
v2.0C chip Infineon USON8
CPI2CMode= 2 for v2.0B
3 for v2.0C
65
Configuration for communication
with iAP Devices
Commands/Configuration Variables
66
Use/Default Value
AT2 Configuration
COD
240404
EnableEncryption
true
DefaultSecurity
4
EnableIAP
true
Application Customization
iAPAppID
A1B2C3D4E5
iAPProtocolStrmain
Com.AmpedRFTech.Demo
iAPProtocolStrAlt
Com.AmpedRFTech.ProtocolAlt
CPI2CMode
3 (MFI Coprocessor v2.0c)
AccName
Amped-Test
AccManufacturer
Amped RF
AccModelNumber
Test-Model
AccSerialNumber
Amp’ed Up!
iAP Commands
AT+AB IAPConnect [BDAddress]
To connect a remote device with the IAP profile
AT+AB IAPDisconnect
To disconnect from a IAP session
66
Communication Speed
67
• SPP Connect
• Actual value up to 500Kbps
• iAP Connect
• Max speed ​ theoretically possible:
• iPhone4/iPad2:
• iPhone4S/iPad3:
• iPhone5/iPad4(mini):
up to 100Kbps
up to 250Kbps
up to 250Kbps
• Actual value (BTM  Apple):
• iPad3:
• iPad1:
up to 150Kbps
up to 90Kbps
67
CoD setting
CoD setting
69
• CoD (Class of Device) is set by default 240404 corresponding to headset device
• The CoD can be changed using the AT command
• AT+AB config var30= [CoD]
• CoD value list can be retrieved at SIG website:
https://www.bluetooth.org/en-us/specification/assigned-numbers/baseband
69
Upgrading Firmware
Upgrading Firmware Procedure
71
i.e. PC
UART
New Version
Source
Device
BTM
RF
USB/Serial
New abSerial Firmware Version
available from ST (.bin file)
i.e. PC
USB/Serial
peripherals
New Version
Source
Device
HOST
(Micro)
UART
BTM
RF
peripherals
The Firmware on the Bluetooth nodes can be upgraded for bug fixing or for taking advantage of the introduction of
new features. The Firmware upgrading is enabled via the UART interface of the module.
71
Firmware Upgrading Procedure
72
Different options are possible to upgrade the Firmware from the host
via the UART
• The recommend procedure is using the AT command
• AT+AB InvalidateApplication
• And follow instruction on next slide
• Alternative procedures
• Using the Flash Bootloader (based on the Y-Modem protocol) of the STM32
• The Flash Bootloader is activated in two different ways:
• Acting on the GPIO2 pin of the module
• Using a special-purpose at-command
• It can be used/tested by using the Y-Modem transmitter function integrated in the
Hyperterminal or other terminal tool
72
Upgrading with the Flash Loader –
AT command
73
STEVAL-SPBT3ATV3
STEVAL-SPBT4ATV3
• User FLOW Description:
• Insert the dongle in a USB slot of the PC
• Open an HyperTerminal (115200:8:none:1:none)
• Send the command “AT+AB InvalidateApplication
(it deletes the abSerial application currently running on the module)
• The module enters the boot state presenting the Main menu choices
• Select option 1 (download application image)
• Use the Y-modem function integrated in the HyperTerminal and select the file to download
• The process Terminates with “Programming Completed Successfully!”
• Reset the module
73
Upgrading with the Flash Loader - GPIO2
74
STEVAL-SPBT3ATV3
• User FLOW Description
STEVAL-SPBT4ATV3
• Put the GPIO2 to 0 (use a jumper between the dongle PADs, for STEVAL-SPBT3ATV3 PAD4 and 9, for
STEVAL-SPBT4ATV3 PAD5 and 13) for details refer to module application note
• Insert the dongle in a slot
• Open an HyperTerminal on the PC (115200:8:none:1)
• Reset the module
• The module enters in the boot state and three different Main menu choices are presented
• In 5 seconds select option 1 (download application image) otherwise the module automatically enters the option
2 (execute application)
• Use the Y-modem function integrated in the HyperTerminal by selecting the image file to download
• The process terminates with “Programming Completed Successfully!”
• Remove the jumper
• Reset the module
74
Thank you