The BTM410 and BTM411 Bluetooth
needs of developers who wish to add robust, short range Bluetooth data connectivity to their products. They
are based on the market leading Cambridge Silicon Radio BC04 chipset, providing exceptionally low power
consumption with outstanding range. They support the latest Bluetooth® Version 2.1 Specifi cation, providing
the important advantage of Secure Simple Pairing, which improves security and enhances the ease of use for
end customers.
With physical sizes as small as 12.5 x 18.0mm and best of class, low-power operation, these modules are the ideal
choice for applications where designers need both performance and minimum size. For maximum fl exibility in
systems integration, the modules are designed to support a separate power supply for I/O.
To aid product development and integration, Laird Technologies has integrated a complete Bluetooth protocol
stack within the modules, including support for the Bluetooth Serial Port Profi le. The modules are fully qualifi ed as
Bluetooth End Products, allowing designers to integrate them within their own products with no further Bluetooth
Qualifi cation. They can then list and promote their products on the Bluetooth website free of charge.
Future releases include support for the Bluetooth Health Device Profi le, making this module the ideal choice for
manufacturers who are developing Continua Health Alliance
compliant devices.
A comprehensive AT command interface is included, which simplifi es fi rmware integration. Combined with a low
cost developers kit, this ensures that the choice of Laird Technologies Bluetooth modules guarantees the fastest
route to market.
FEATURES AND BENEFITS
• Bluetooth® v2.1+EDR
• Adaptive Frequency Hopping to cope with interference
from other wireless devices
• Secure Simple Pairing support
• External or internal antenna options
• Comprehensive AT interface for simple programming
®
• Bluetooth
• Compact size
• Class 2 output – 4dBm
• Low power operation
• UART interface
• Multi-point support
• PCM and SCO for external codec
• GPIO lines under AT control
• Support for Serial Port Profi le
• Support for Health Device Profi le (Q3 ‘09)
• Wi-Fi co-existence
END Product Qualifi ed
®
modules from Laird Technologies have been designed to meet the
Bluetooth
Transmit ClassClass 2
Frequency2.402 – 2.480 GHz
Channels
Max Transmit Power
Min Transmit Power
Receive Sensitivity
RangeUp to 50 metres free space
Data Transfer RateUp to 300 kbps
External Antenna50 Ohm matched SMT pad – BTM410
Integrated Antenna (option)+0dBi multilayer ceramic – BTM411 (provisional)
Serial Interface
Baud Rate
Bits8
ParityOdd, even, none
Stop bits1 or 2
Default Serial parameters9600,n,8,1
LevelsSet by VDD_USB input
Modem ControlDTR, DSR, DCD, RI, RTS, CTS
I/O8 general purpose I/O pins
Support3 PCM Channels @ 64kbps
SCO ChannelsSupport SCO and eSCO
PCM Interface
Bluetooth StackV2.1 compliant. Fully integrated.
Profi les
Firmware UpgradeAvailable over UART
Connection Modes
®
Version 2.1+EDR
79 channels Frequency Hopping
Adaptive Frequency Hopping
+4 dBm at antenna pad – BTM410
+4 dBmi from integrated antenna – BTM411 (provisional)
-27 dBm at antenna pad – BTM410
-27 dBmi from integrated antenna – BTM411
(provisional)
-84dBm
RS-232 bi-directional for commands and data
16550 compatible
Confi gurable from 1,200 to 921,600bps Non-standard
baud rates supported
Confi gurable as master or slave
8 bit A-law
8 bit μ-law
13 bit linear
PCM Clock available when in slave mode
Point to point (cable replacement)
Multipoint – max 3 slaves
www.lairdtech.com
5
Laird Technologies
Page 6
BTM410/411
Bluetooth® AT Data Module
SPECIFICATIONS
CATEGORIESFEATUREIMPLEMENTATION
Command Interface
Current Consumption
Supply Voltage
Coexistence / Compatibility
Connections
Physical
Environmental
Approvals
Miscellaneous
Development Tools
AT Instructions set
Multipoint SoftwareSupports multiple connections
Data TransferTypically 32mA
Low Power Sniff ModeLess than 2.5mA
Supply3.0V – 3.3V DC
I/O1.7V – 3.3V DC (independent of Supply)
USB & UART1.7V – 3.6V DC (independent of Supply)
WLAN (802.11)
Interface Surface Mount Pads
External Antenna (BTM410)Pad for 50 Ohm antenna
Dimensions
Weight3 grams
Operating Temperature -30°C to +70°C
Storage Temperature-40°C to +85°C
BluetoothQualifi ed as an END product
FCC
CE & R&TTEMeets CE and R&TTE requirements
Lead freeLead-free and RoHS compliant
Warranty12 Months
Development Kit
Comprehensive control of connection and module operation
S Registers for non-volatile storage of parameters
2-wire and 3-wire hardware coexistence
schemes supported
Development board and software tools
DVK-BTM410 Dev Kit with BTM410 module fi tted
DVK-BTM411 Dev Kit with BTM411 module fi tted
www.lairdtech.com
6
Laird Technologies
Page 7
BTM410/411
Bluetooth® AT Data Module
SPECIFICATIONS
PINSIGNALDESCRIPTION
1Unused
2GND
3UART_CTSClear to Send I/PVUSB
4UART_RXDReceive data I/PVUSB
5UART_RTSRequest to Send O/PVUSB
6UART_TXDTransmit data O/PVUSB
7GND
8SPI_CSBSPI bus chip select I/PVIO
9SPI_MISOSPI bus serial O/PVIO
10SPI_MOSISPI bus serial I/PVIO
11SPI_CLKSPI bus clock I/PVIO
12VDD_USBUSB & UART supply voltage
13VDD_IOI/O supply voltage
14VDD_INMain supply voltage
15GND
16PCM_INPCM clock I/PVIO
17PCM_SYNCPCM sync I/PVIO
18PCM_CLKPCM clock I/PVIO
19PCM_OUTPCM Data O/PVIO
20RESETModule reset I/PSee note 2
21GPIO5I/O for hostVIO
22GPIO3 / UART_DCDI/O for hostVIO
23GND
24Unused
25Unused
26Unused
27Unused
28GND
29ANT (BTM410)Antenna connection (50 ohm matched)
30GND
31Unused
32Unused
33Unused
34Unused
35Unused
36Unused
37Unused
38Unused
39Unused
40Unused
41GND
42GPIO2 / UART_RII/O for hostVIO
43GPIO9 /UART_ DTRI/O for hostVIO
44GPIO10 / UART_DSRI/O for hostVIO
45GND
46D-Not used for AT module variantsVUSB
47D+Not used for AT module variantsVUSB
48GPIO7I/O for hostVIO
49GPIO6I/O for hostVIO
50GPIO4I/O for hostVIO
VOLTAGE
SPECIFICATION
www.lairdtech.com
7
Note: 1. Unused pins may have internal connections and must not be connected.
2. Reset input is active low. Input is pulled up to VDD_IN via 22k. Minimum reset pulse width is 5ms.
This document describes the protocol used to control and confi gure the BT Data Bluetooth device.
The protocol is similar to the industry standard Hayes AT protocol used in telephony modems which is
appropriate for cable replacement scenarios, as both types of devices are connection oriented. The telephony
commands have been extended to make the device perform the two core actions of a Bluetooth device, which
is make/break a connection and Inquiry. Many other AT commands are also provided to perform
ancillary functions, such as, pairing, trusted device database management and S Register maintenance.
Just like telephony modems, the device powers up in an unconnected state and will only respond via
the serial interface. In this state the device will not even respond to Bluetooth Inquiries. Then, just like
controlling a modem, the host can issue AT commands which map to various Bluetooth activities. The
command set is extensive enough to allow a host to make connections which are authenticated and/or
encrypted or not authenticated and/or encrypted or any combination of these. Commands can be saved,
so that on a subsequent power up the device is discoverable or automatically connects.
The device has a serial interface which can be confi gured for baud rates from 1200 up to 921600 (default
setting is 9600) and an RF communications end point. The latter has a concept of connected and unconnected
modes and the former will have a concept of command and data modes. This leads to the matrix of states
shown below.
RF UNCONNECTEDRF CONNECTED
Local Command ModeOKOK
Remote Command ModeILLEGALOK
Data ModeILLEGALOK
The combinations, ‘Data and RF Unconnected Mode’ and ‘Remote Command and RF Unconnected Mode’
do not make sense and will be ignored.
Navigation between these states is done using the AT commands which are described in detail in
subsequent sections.
www.lairdtech.com
9
Laird Technologies
Page 10
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
AT COMMAND SET
Assumptions
The CSR (Cambridge Silicon Radio) Bluecore chipset in Laird Technologies devices is memory resource limited.
Therefore it is NOT proposed that there be full implementation of the AT protocol as seen in modems. The
claim made for this device is that it will have a protocol similar to an AT modem. In fact, the protocol is similar
enough so that existing source code written for modems, can be used with very little modifi cation with a Laird
Technologies device.
Therefore the following assumptions are made:
1. All commands are terminated by the carriage return character 0x0D, which is represented by the
string <cr> in descriptions below this cannot be changed.
2. All responses from the device have carriage return and linefeed characters preceding and
appending the response. These dual character sequences have the values 0x0D and 0x0A respectively
and shall be represented by the string <cr,lf>.
3. All Bluetooth addresses are represented by a fi xed 12 digit hexadecimal string, case insensitive.
4. All Bluetooth Device Class codes are represented by a fi xed 6 digit hexadecimal string, case insensitive.
Commands
This section describes all available AT commands. Many commands require mandatory parameters and some
take optional parameters. These parameters are either integer values, strings, Bluetooth addresses or device
classes. The following convention is used when describing the various AT commands.
<bd_addr>A 12 character Bluetooth address consisting of ASCII characters ‘0’ to ‘9’, ‘A’ to ‘F’ and ‘a’ to ‘f’.
<devclass>A 6 character Bluetooth device class consisting of ASCII characters ‘0’ to ‘9’, ‘A’ to ‘F’ and ‘a’ to ‘f’.
NA positive integer value.
MAn integer value which could be positive or negative, which can be entered as a decimal value or
in hexadecimal if preceded by the ‘$’ character. E.g. the value 1234 can also be entered as $4D2
<string>A string delimited by double quotes. E.g. “Hello World”. The “ character MUST be supplied as delimiters.
<uuid>A 4 character UUID number consisting of ASCII characters ‘0’ to ‘9’, ‘A’ to ‘F’ and ‘a’ to ‘f’.
1. ^^^ {Enter Local Command Mode}
When in data and connected mode, the host can force the device into a command and connected
mode so that AT Commands can be issued to the device. The character in this escape sequence is
specifi ed in the S2 register, so can be changed. In addition, the escape sequence guard time is
specifi ed by S Register 12. By default the guard time is set to 100 milliseconds. Please refer to Section 5: Dropping Connections for more related information.
In modems this escape sequence is usually “+++”. “^^^” is specifi ed to avoid confusion when the module is providing access to a modem.
Response: <cr,lf>OK<cr,lf>
2. !!! {Enter Remote Command Mode}
When in data and connected mode, the host can force the remote device into a command and
connected mode so that AT Commands can be issued to the device remotely. The escape sequence
guard time is specifi ed by S Register 12 and is the same as per the ^^^ escape sequence. By default the guard time is set to 100 milliseconds. The remote device issues ATO as normal to return to data
mode. (Refer to step 12)
For this command to be effective S Register 536 must be set to 1.
Response: <cr,lf>OK<cr,lf>
www.lairdtech.com
10
Laird Technologies
Page 11
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
3. AT
Used to check the module is available.
Response: <cr,lf>OK<cr,lf>
4. ATA {Answer Call}
Accept an incoming connection, which is indicated by the unsolicited string
<cr,lf>RING 123456789012<cr,lf> every second. 123456789012 is the Bluetooth address of the
connecting device.
Make a connection to device with Bluetooth address <bd_addr> and SPP profi le <uuid>. The <uuid> is an optional parameter which specifi es the UUID of the profi le server to attach to, and if not supplied then the default UUID from S Register 101 is used. As this is a device which utilises the RFCOMM
layer as described in the Bluetooth specifi cation, it necessarily implies that only profi les based on RFCOMM can be accessed.
If <U> is not specifi ed, then authentication is as per register 500, otherwise the connection will
be authenticated.
If <Y> is not specifi ed, then encryption is as per register 501, otherwise the connection will have
encryption enabled.
The timeout is specifi ed by S register 505.
Response: <cr,lf>CONNECT 123456789012<cr,lf>
Or <cr,lf>NO CARRIER<cr,lf>
Due to a known issue in the Bluetooth RFCOMM stack, it is not possible to make more than 65525
outgoing connections in a single power up session. Therefore if that number is exceeded, then the
connection attempt will fail with the following response:-
Response: <cr,lf>CALL LIMIT
Or <cr,lf>NO CARRIER<cr,lf>
In that case, issuing an ATZ to reset the device will reset the count to 0 and more connections
are possible.
The following RFCOMM based UUIDs are defi ned in the Bluetooth Specifi cation:-
www.lairdtech.com
11
PROFILE NAMEUUID
Serial Port0x1101
LAN Access Using PPP0x1102
Dialup Networking0x1103
IrMC Sync0x1104
OBEX Object Push0x1105
OBEX File Transfer0x1106
IrMC Sync Command0x1107
Headset0x1108
Cordless Telephony0x1109
Intercom0x1110
Fax0x1111
Audio Gateway0x1112
WAP0x1113
WAP_CLIENT0x1114
Laird Technologies
Page 12
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
6. ATD<U><Y>L {Remake Connection}
Make a connection with the same device and service as that specifi ed in the most recent ATD command. The <UY> modifi ers are optional. An error will be returned if the ‘L’ modifi er is
specifi ed AND a Bluetooth address.
If both ‘L’ and ‘R’ modifi ers are specifi ed then an error will be returned.
Response: <cr,lf>CONNECT 123456789012 AE<cr,lf>
Or <cr,lf>NO CARRIER<cr,lf>
7. ATD<U><Y>R {Make Connection to peer specifi ed in AT+BTR}
Make a SPP connection with the device address specifi ed in the most recent AT+BTR command. The service is as specifi ed in S Register 101. The <UY> modifi ers are optional. An error will be returned if the ‘R’ modifi er is specifi ed AND a Bluetooth address.
If both ‘R’ and ‘L’ modifi ers are specifi ed then an error will be returned.
Response: <cr,lf>CONNECT 123456789012 AE<cr,lf>
Or <cr,lf>NO CARRIER<cr,lf>
8. ATEn {Enable/Disable Echo}
This command enables or disables the echo of characters to the screen. A valid parameter value will
be written to S Register 506.
E0Disable echo.
E1Enable echo.
All other values of n will generate an error.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
9. ATH {Drop Connection}
Drop an existing connection or reject an incoming connection indicated by unsolicited
RING messages.
Response: <cr,lf>NO CARRIER<cr,lf>
10. ATIn {Information}
This will return the following information about the Laird Technologies device.
I0The product name/variant.
I1The CSR fi rmware build number.
I2The Laird Technologies fi rmware build number. For internal use only.
I3The Laird Technologies fi rmware revision.
I4A 12 digit hexadecimal number corresponding to the Bluetooth address of the device.
I5The manufacturer of this device.
I6The maximum size of trusted device database.
I7The manufacturer of the Bluetooth chipset.
I8The chipset format.
I90 if not in a connect state and 1 if in a connect state.
www.lairdtech.com
12
Laird Technologies
Page 13
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
I11The reason why a “NO CARRIER” resulted in the most recent attempt at making an outgoing connection.
Where the response values are as follows:
0 = No prior connection
1 = Connection timeout
2 = Connection attempt cancelled
3 = Normal disconnection
4 = Peer device has refused connection
5 = Service profi le <uuid> requested not available on remote device
6 = Connection has failed
32 = ATH was entered
33 = Incoming connection aborted because too many rings
34 = Unexpected incoming connection
35 = Invalid address
36 = DSR is not asserted
37 = Call limit of 65531 connections has been reached
38 = Pairing in progress
39 = No link key
40 = Invalid link key
255 = Unknown Reason
I12The last ERROR response number.
I13The Sniff status is returned as follows:-
Response: <cr,lf>a:b,c,d,e<cr,lf>OK<cr,lf>
Where ‘a’ = 0 when not online and 1 when online and Sniff has been enabled, ‘b’ is the Sniff Attempt
parameter, ‘c’ is the Sniff timeout parameter, ‘d’ is the minimum sniff interval and ‘e’ is the maximum
sniff interval. All parameters ‘b’, ’c’, ’d’ and ‘e’ are given as Bluetooth slots which are 625 microseconds
long converted from values of S Registers 561, 562, 563 and 564 respectively.
I14The current boot mode (Only for fi rmware 1.18.0 and newer)
I15The maximum length of an AT command, including the terminating carriage return
(only for fi rmware 1.6.10 and newer)
I16The size of AT command input buffer
I20Returns the number of bytes pending to be sent in the rf buffer when a connection is up.
I33Version number of Multipoint application (Note: ATI is provided for compatibility in multipoint mode,
other AT commands are not available).
I42State information. Where the response values are as follows:
13 = NotOpen
14 = OpenIdle
15 = Ringing
16 = OnlineCommand
172 to 177 = waiting for connectable and/or discoverable where the lowest signifi cant digit equates to
the value stored in S Register 512 or 555.
Note when n=16, ATI9 will return 1.
I101The RSSI value in dBm. If a connection does NOT exist then a value of -32786 is returned. A value of 0
means the RSSI is within the golden range this is quite a large band, therefore RSSI is not always a useful
indicator. Use ATI111 instead which returns the bit error rate.
I111Returns LinkQual which in the CSR chipset is defi ned as BER (bit error rate). This returns a value which
is the number of bits in error out of 1 million. Hence a value of 0 is best, and larger values are worse.
As the value approaches 1000 (BER = 0.1%) it is an indication that the link is very bad and a large
number of Bluetooth packets are being lost.
www.lairdtech.com
13
Laird Technologies
Page 14
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
For recognised values of n. All other values of n will generate an error.
Response: <cr,lf>As Appropriate<cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
11. ATO {Enter Data Mode} (letter ‘o’)
Return to data mode. Assume that the module is in data mode after OK is received. Responds with an
error if there is no Bluetooth connection.
Response: <cr,lf> CONNECT 123456789012<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
12. ATSn=m {Set S Register}
As with modems, the Bluetooth module employs a concept of registers which are used to store
parameters, such as escape sequence character, inquiry delay time etc, as listed in detail below.
The value part ‘m’ can be entered as decimal or hexadecimal. A hexadecimal value is specifi ed via a ‘$’ leading character. For example $1234 is a hexadecimal number.
When S register values are changed, the changes are not stored in non-volatile memory UNTIL the
AT&W command is used. Note that AT&W does not affect S registers 520 to 525 or 1000 to 1010
as they are updated in non-volatile memory when the command is received.
REGISTER DEFAULT RANGECOMMENT
S01-1..15Number of RING indication before automatically answering an incoming
connection. A value of 0 disables autoanswer. If -1, then autoanswer on
one RING and do NOT send RING/CONNECT response to the host. This
emulates a serial cable replacement situation.
Setting values >= 0, resets S Register 504 to 0 and <0 forces 504 to 1.
If S0 <> 0 and S100 <> 0 then S0 must be < S100. If a value is entered
which violates this rule, then ERROR 29 is sent in response.
If S504 =1 then this register will return -1, regardless of the actual value
stored in non-volatile memory.
S20x5E0x20..0x7EEscape sequence character. It is not ‘+’ by default as a Bluetooth serial link
can be used to connect to a mobile phone which exposes an AT command set,
which will in turn use ‘+’ as default. So if both used ‘+’ there will be confusion.
0x5e is the character ‘^’.
S1210040..5000Escape sequence guard time in milliseconds, with a granularity of 20ms.
New values are rounded down to the nearest 20ms multiple
S100150..15Number of RING indications before an auto disconnection is initiated. A value
of 0 disables this feature.
If S0 <> 0 and S100 <> 0 then S0 must be < S100. If a value is entered which
violates this rule, then ERROR 29 is sent in response.
S101$1101 0..$ffffUUID of default SPP based profi le when not specifi ed explicitly in the
ATD command.
S10211Defi nes a set of bits masks for enabling profi le servers. Values can be ORed.
1 is the default and only value allowed for this module which enables Serial
Port Profi le
S10311..7Boot Mode on cold boot.
S126?0 .. 0xFFFFPrimer for changing to Multipoint mode
S127?0 .. 0xFFFF0x100 for At mode
0x200 for Multipoint mode
Other values are reserved
S50000..1Authentication for outgoing connections. Set to 1 to Enable Authentication.
S50100..1Encryption for outgoing connections. Set to 1 to Enable Encryption.
S50200..1Authentication for incoming connections. Set to 1 to Enable Authentication.
S50300..1Encryption for incoming connections. Set to 1 to Enable Encryption.
www.lairdtech.com
14
Laird Technologies
Page 15
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
www.lairdtech.com
15
REGISTER DEFAULT RANGECOMMENT
S50400..1Setting to 1 will force S0 to -1 and will suppress messages arising from
connections or pairing. E.g. CONNECT, NO CARRIER, RING, PAIR etc.
Suppressing connection based messaged allows the device to be
confi gured in cable replacement mode.
S505102..120Minimum delay before abandoning connection attempt as a master.
Referenced by ATD. In units of seconds. See S Registers 530 and 543 also.
Please note that as disconnection time can vary, this register only guarantees
the minimum delay. Note that for invalid addresses specifi ed in the ATD
command, the “NO CARRIER” response will be immediate. See S register
560 for specifying disconnect max timeout.
S50610..1Enable/Disable echoes. The ATEn command also affects this.
S50700..2When set to 0, a connection can be dropped using ^^^ escape sequence
only and the state of DSR line is ignored.
When set to 1 a connection can be dropped using EITHER the ^^^ escape
sequence OR the DSR handshaking line. When set to 2, a connection can
only dropped using a deassertion of DSR. Mode 2 provides for the highest
data transfer rate.
If the status of the DSR line is to be conveyed to the remote device as a low
bandwidth signal then this register MUST be set to 0, otherwise a deassertion
of DSR will be seen as a request to drop the Bluetooth connection.
This register affects S Register 536 – see details of 536
For the Go blue Activator variant this can only be set to 0.
S50864010..2550Page Scan Interval in milliseconds. Minimum is 11.25ms so 10/11ms
will give 11.25ms.
S50932010..2550Page Scan Window in milliseconds. Minimum is 11.25ms so 10/11ms
will give 11.25ms.
S51064010..2550Inquiry Scan Interval in milliseconds. Minimum is 11.25ms so 10/11ms
will give 11.25ms.
S51132010..2550Inquiry Scan Window in milliseconds. Minimum is 11.25ms so 10/11ms
will give 11.25ms.
S51210..7Specify power up state.
When set to 0, AT+BTO is required to open the device for Bluetooth activity.
When set to 1, it proceeds to a state as if AT+BTO was entered.
When set to 2, it will be discoverable only, similar to issuing AT+BTQ.
When set to 3, it will be connectable but not discoverable e.g. AT+BTG
When set to 4, it will be connectable and discoverable e.g. AT+BTP.
When set to 5, it will be like 2, but all UART RX traffi c is discarded in absence
of a connection while DSR is asserted. If DSR is not asserted, then it behaves
exactly as per mode 2.
When set to 6, it will be like 3, but all UART RX traffi c is discarded in absence
of a connection while DSR is asserted. If DSR is not asserted, then it behaves
exactly as per mode 3.
When set to 7, it will be like 4, but all UART RX traffi c is discarded in absence
of a connection while DSR is asserted. If DSR is not asserted, then it behaves
exactly as per mode 4.
Note that by implication, a change to this can only be seen after a power
cycle AND if AT&W is actioned prior to the power cycle.
If S Reg 554 is non-zero and this register is between 2 and 7 inclusive, then
the value of S554 specifi es the time in seconds that the device will remain in
the specifi ed mode after power up. On timeout, the device will fall back to
the mode specifi ed in S Register 555.
S512 continued….
In some fi rmware builds, S Registers 565 to 569 inclusive are visible, which
allows the start-up mode to depend on the state of RI line (Setting S Reg 565
forces the RI pin to be confi gured as an input). For this feature to be active,
SReg 565 should be set to 1. In that case, on start-up, if RI is asserted, then
the start-up mode is defi ned by S Reg 566 and if deasserted then S Reg 567.
S51310..1Pairing Authentication, 1 = Enable
S514101..60Pairing Timeout in seconds. This includes the time a host takes to supply the
PIN number when PIN? messages are indicated.
Laird Technologies
Page 16
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S5150x001F00 0.. 0xFFFFFFDefault Device Class Code to be used with AT+BTO when it is not explicitly
S5160x000000 0..0x2FFFFFFDefault Device Class fi lter to be used with AT+BTI when it is not explicitly
S517202..61Inquiry Length in units of seconds. This parameter is referenced by the
S51880..255Maximum number of responses from an inquiry request. This parameter
S519500100..6000When S507>0, and in a connection, DSR can be used to change from data
S52096001200..115200 Change to a standard baud rate. The effect is immediate and in fact the OK
S521See
Comment
S522111 = CTS/RTS hardware handshaking enabled
S52311..2Number of Stop bits
S52400..2Parity. 0=None, 1=Odd, 2=Even
S52631..3This register specifi es a 2 bit mask used to qualify how S Registers 520 to 524
S5301000100..15000Reconnect delay when confi gured as master in pure-cable-replacement
1200..921600 Change baud rate to non-standard value. Laird Technologies’ modules support
specifi ed. When queried, the value is always printed as a hexadecimal number.
To change the device class of the module, after AT+BTO, use the command
AT+BTC.
specifi ed. When queried the value is always printed as a hex number.
The seventh most signifi cant digit, can be 0,1 or 2, and is used to specify
the type of device class fi lter.
When 0, it specifi es no fi ltering.
When 1, it specifi es an AND mask and all 24 bits are relevant
When 2, it specifi es a fi lter to look for devices with matching major device
class which occupies a 5 bit fi eld from bits 8 to 12 inclusive (assuming
numbering starts at bit 0). All other 19 bits MUST be set to 0.
AT+BTI command
is reference by the AT+BTI command. If this number is set too high, then
AT+BTI will return ERROR 27. For a particular fi rmware revision, determine
the effective maximum value by trial and error. That is, set to a high value,
send AT+BTI and if ERROR 27 is returned, then retry with a smaller value.
This effective max value will remain unchanged for that particular
fi rmware build.
to command state by deasserting the DSR line for less than the time specifi ed
in this register. This value is rounded down to the nearest 100ms
will be sent at the new baud rate. Only one of the following baud rates are
any baud rate. The only limitation is the integer arithmetic involved, which may
adjust the applied rate slightly. If the internally computed baud rate is more
than 2% offset from the desired input value, then an ERROR will be returned
and the old baud rate will prevail. To inspect the actual baud rate, do ATS521?
S521 should only be used for non-standard baud rates. For standard baud
rates use S520.
The effect is immediate and in fact the OK will be sent at the new baud rate.
In the event that a non-standard baud rate is requested, it is entirely possible
that the host is not capable of generating such a baud rate. In this case the
device cannot be communicated with. If this happens, there is a
procedure to recover from this situation which is described in section titled
“Factory Default Mode”
are actioned.
When bit 0 is 1, the new comms parameter affects the UART immediately.
When bit 1 is 1, the new comms parameter is stored in non-volatile memory
So for example, to change comms parameters, but have them come into effect
only after subsequent power cycles, then this register should be set to 2, and
likewise to affect immediately and yet not have it persist over a power cycle,
the value should be set to 1. Must be set before the baud rate change.
mode. This value is rounded down to the nearest 100ms. See S Register
505 and 543 also
www.lairdtech.com
16
Laird Technologies
Page 17
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S53100..5Specifi es the mode on connection establishment.
0 = Normal, that data is exchanged between UART and RF
1 = LOCAL_COMMAND. UART input is parsed by the AT interpreter and RF
data is discarded
2 = REMOTE_COMMAND. RF input is parsed by the AT interpreter and UART
data is discarded. If S Reg 536 is not 1 then this register cannot be set to
2 and an ERROR will be returned
3 = LOCAL_COMMAND. UART input is parsed by the AT interpreter and
incoming RF data is sent to the host using the RX<string>
asynchronous response.
4 = LOCAL_COMMAND and on the rf side, the gpio is automatically sent when
there is a change in input. See section 9.5 for more details.
5 = DEAMON mode
S53200..7If non zero then on every connection, a SCO channel (audio) will be initiated.
Bit 0 for HV1, Bit1 for HV2 and Bit2 for HV3. When the connection is lost,
the SCO channel disappears along with it.
S53310..2If set to 1 then GPIO5 follows RI state, if set to 2 then it follows the state of
DSR and if 0 it is not driven and GPIO5 is available as a user I/O.
This register will not necessarily be effective immediately after changing the
value. It must be saved to non-volatile memory using AT&W and will operate
as expected after an ATZ or a power cycle.
S53410..2When set to 0, GPIO4 is available as user i/o
If set to 1 then GPIO4 follows DCD state. If set to 2 then GPIO4 behaves as
per setting 1, but in addition, when not in a connection, if the device is
connectable or discoverable, then GPIO4 will blink.
This register will not necessarily be effective immediately after changing the
value. It must be saved to non-volatile store using AT&W and will operate as
expected after an ATZ or a power cycle.
S535200..41Link Supervision Timeout. If units go out of range, then a NO CARRIER message
will be sent to the host after the time specifi ed here
S53600..1When set to 1, a remote device can ‘capture’ the AT parser of this unit by it
sending this module an escape “!!!” sequence. The inter character timing is
set via S Register 12.
If S Register 507 is >= 2, then reading this register will always return 0 and
writing 1 will result in ERROR 33.
S53800..1If 1, then when a successful pairing occurs, it is automatically saved in the
trusted device database – if it has room to store it.
S53900..1When set to 1, in idle mode (S512=1), UART Rx characters are discarded if
DSR is deasserted.
S54000 48..127Sets the MTU in L2CAP confi guration negotiations. The value of 0 is a special
value which is taken to mean that the current value should remain.
S5416-50..6This sets the power level in dBm when inquiring or paging. Reading this register
returns the value stored in non-volatile memory.
S5426-50..6As per S541, however reading this register returns the current power level as
set in the base band. The read can be different from S541because the actual
power is set using a lookup table and the base band rounds down to the
nearest value in the table.
S54300..1If this is set to 1, then incoming pairing attempts will be accepted (if a pin code
has been pre-entered using AT+BTK) while in the wait phase of auto connect
cycle initiated by the AT+BTR command. In addition to accepting pairing
attempts, if the pairing is successful, then the new device is automatically set
as the peer address for automatic connections (as if an explicit AT+BTR
command was entered).
See S Register 505 and 530 also
S54410..1Confi gure the UART for either low latency or maximum throughput. A setting
of 1 gives maximum throughput.
www.lairdtech.com
17
Laird Technologies
Page 18
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S5510x32110xFFFFThis register specifi es in each 4 bit nibble, how the outgoing modem status bits
to the remote peer gets its value. Bluetooth allows for RTR, RTC, DV and IC bits
to be exchanged over an RFCOMM connection.
Nibble 0..3 specifi es the source for RTC
4..7 specifi es the source for RTR
8..11 specifi es the source for DV (i.e. DCD)
12..15 specifi es the source for IC (i.e. RI)
Each nibble can take the following value:-
0 Always set to 0
1 Always set to 1
2 If DCD (pin 8 on module connector) is output then always 1
If DCD is input then 1 if DCD is asserted otherwise 0
3 If RI (pin 6) is output then always 0
If RI is input then 1 if RI is asserted otherwise 0
4 If DSR (pin 10) is asserted then 1 otherwise 0
In the event that a nibble specifi es DSR as the source of its state, be aware
that if, S Register 507 is anything other than 0, a de-assertion of DSR will
cause the Bluetooth connection to be dropped.
If bits 0..3 and 4..7 are set to 0, then some Bluetooth devices will use that
as a signal to stop sending any data back. For example, Nokia 6310
stops responding.
If this register is changed while in command and connected mode, then on
going back online using the ATO command, a fresh signal will be sent to
the peer to update the bits.
S5520x01220x0FFFThis register specifi es in each 4 bit nibble, how the DTR, DCD, RI output pins
are controlled when in a Bluetooth connection
Nibble 0..3 specifi es the source for DTR
4..7 specifi es the source for DCD
8..11 specifi es the source for RI
Each nibble can take the following value:-
0 Do NOT touch the I/O
1 Always deassert
2 Always assert
3 If RTC bit in CONTROL_IND is 1 then assert otherwise deassert
4 If RTR bit in CONTROL_IND is 1 then assert otherwise deassert
5 If DV bit in CONTROL_IND is 1 then assert otherwise deassert
6 If IC bit in CONTROL_IND is 1 then assert otherwise deassert
If this register is changed while in command and connected mode, then on
going back online using the ATO command, the modem output lines will
get refreshed.
S5530x02010x0FFFThis register specifi es in each 4 bit nibble, how the DTR,DCD,RI output pins
are controlled when NOT in a Bluetooth connection
Nibble 0..3 specifi es the source for DTR
4..7 specifi es the source for DCD
8..11 specifi es the source for RI
In addition it also refers to S Register 552 to see if the relevant pin is an input
or not to be touched. If the nibble in 552 is 0, then the relevant pin is an input.
Each nibble can take the following value:-
0 Always deassert
1 Always assert
2 Assert if RING is being sent to the host
www.lairdtech.com
18
Laird Technologies
Page 19
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S55400..900If S Register 512>=2 and <=7 then this register specifi es a time in seconds
for which the device will stay in the S512 mode after power up or reset. On
timeout, it will abort the discoverable and/or connectable and fall back into
S512=1 mode, when it is deaf and dumb.
Note that if AT+BTR has been used to specify a peer device, then on reverting
to mode 1, it will attempt to make a connection to that peer device.
A power cycle, reset via BREAK or ATZ is required to see the effects of change.
S55511..7If S Register 554 is nonzero, then after the post reset window expires, the
mode will revert to the mode specifi ed in this register. This allows, for example,
the device to be discoverable and connectable on power up (mode 4 or 7)
and on window timer expiry to revert to connectable only (mode 3 or 6).
A power cycle, reset via BREAK or ATZ is required to see effects of a change.
In some fi rmware builds, S Registers 565 to 569 inclusive are visible, which
allows the start-up mode to depend on the state of RI line (Setting S Reg 565
forces the RI pin to be confi gured as an input). For this feature to be active,
SReg 565 should be set to 1. In that case, on start-up, if RI is asserted, then
the start-up mode is defi ned by S Reg 568 and if deasserted then S Reg 569.
S55600..3Allows GPIO or ADC values to be read via the minor class fi eld in an
inquiry response.
When this value is non-zero, bits2 to 7 contain information as follow:-
1 :- ADC1
2 :- ADC2
3 :- GPIO1 to GPIO6
Set to 0 to disable this feature.
This allows i/o information to be conveyed without a connection.
S557324..900Specifi ed in seconds, the update interval for the feature enabled via S Reg 556
S55800..1When 1, the following responses; “RING”, “NO CARRIER” and “CONNECT”
are replaced by “BTIN”, “BTDOWN” and “BTUP” respectively. This will eliminate
ambiguity when the module has a Bluetooth connection to an AT modem which
also gives these responses.
S55900..3This specifi es a mask.
When Bit 0 is 1, the response word “ERROR“ is replaced by “BTERR”
and “OK” is replaced by “ok”.
When Bit 1 is 1, then error responses do not include the error number
and instead the error number can be retrieved using ATI12.
S5601515..120Disconnect timeout in seconds. This timer specifi es how long to wait for
confi rmation from the peer device and/or the underlying stack that the
connection has been successfully torn down. There can be instances where
a confi rmation does not arrive and so in this case this timer is used to
‘close off’ the procedure and put the state machine back into a proper mode
for new operations.
Time is specifi ed with 15 seconds intervals.
S56100..1000Sniff Attempt Time in units of milliseconds. 0 means disable.
See section “Power Consumption and Reset” in the user guide for more details.
S56200..1000Sniff timeout Time in units of milliseconds. 0 means disable.
See section “Power Consumption and Reset” in the user guide for more details.
S56300..1000Sniff Minimum Interval in units of milliseconds. 0 means disable.
See section “Power Consumption and Reset” in the user guide for more details.
S56400..1000Sniff Maximum Interval in units of milliseconds. See section
“Power Consumption and Reset” in the user guide for more details.
S56501If set to 1, RI (Ring Indicate) line is confi gured as an input and forces the
start-up mode (SReg512) and post-timeout on Start-up mode (SReg555) to
be dependent on the state of RI. The RI conditional modes are defi ned by
SRegs 566 to 569 inclusive.
S56617If S565=1, and RI is asserted then this is the mode the device will start up in.
S56717If S565=1, and RI is deasserted then this is the mode the device will start up in.
S56817If S565=1, and RI is asserted then this is the mode the device will assume
after the post-start-up timeout defi ned in SReg 554 instead of mode defi ned
in SReg555
www.lairdtech.com
19
Laird Technologies
Page 20
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S56917If S565=1, and RI is deasserted then this is the mode the device will assume
after the post-start-up timeout defi ned in SReg 554 instead of mode defi ned
in SReg555
S5830xB0 .. 0x1FThis specifi es the initial state of the following modem control lines sent
to the peer
Bit 0 := RTC (DTR/DSR)
Bit 1 := RTR (RTS/CTS)
Bit 2 := IC (Ring Indicate RI)
Bit 3 := DV (DCD)
Bit 4 := FC (Reserved)
S58400..1Enable/Disable eSCO
When changing the unit returns ERROR 14 it implies the device is either in
a connection or waiting for a connection and so the new value cannot be
accepted. For the former, drop the connection, then issue the command
AT+BTX and then set the new value and for the latter issue the command
AT+BTX prior to setting the register.
S58500..9GPIO pin set to 0 to disable the feature
S5861000100..5000Pulse period in milliseconds (rounded down to nearest multiple of 50)
S58700..100Duty cycle in percent (rounded to the nearest multiple of 4)
S58800..1After a disconnection, there will be a cold reset
S58980..FCodec output gain
S59010..3Codec input gain
S59100..1FFDefault GPIO output states when not in a connection. This is used when
virtual digital i/o cable replacement mode is in operation
S59200..1Set this to 1 to reduce the trusted device database to just 1 record when
autosaving of pairing is enabled via S reg 538
S59300..1Automatically append last 6 digits of local bluetooth address to the
friendlyname which was set via AT+BTN or AT+BTF
S600?0..65535Number of times this module has gone through a reset cycle. This feature
is enabled by S Reg 601.
Writing any value to this register will initialise it to a certain value
S60100..1If this is 1, then on reset S Reg 600 value will be incremented.
S61000..7FFFSet direction of digital I/O lines. This is a mask made up of 5 bits. Setting a
bit to 1 makes that I/O line an output. GPIO1 is bit 0, GPIO2 is bit 1, up to
bit 4 for GPIO5.
S61101Set to 1 to invert the logic of GPIO outputs. For example, ATS621=1 will set
the output pin to low and vice versa.
S620n/a0..31Read/Write to all 8 Digital lines in one atomic step. The value is returned as
a 4 digit hexadecimal value with trailing 0s.
S621n/a0..1Read/Write to GPIO1
S622n/a0..1Read/Write to GPIO2
S623n/a0..1Read/Write to GPIO3
S624n/a0..1Read/Write to GPIO4
S625n/a0..1Read/Write to GPIO5
S626n/a0..1Read/Write to GPIO6 – Not available in Bism1
S627n/a0..1Read/Write to GPIO7 – Not available in Bism1
S628n/a0..1Read/Write to GPIO8 – Not available in Bism1
S629n/a0..1Read/Write to GPIO9 – Not available in Bism1
S631n/a0..65535When GPIO1 is confi gured as an input, low to high transitions are counted.
There is no software debouncing. External RC circuit may be required.
The counter wraps to 0 when it overfl ows beyond 65535.
S632n/a0..65535When GPIO2 is confi gured as an input, low to high transitions are counted.
There is no software debouncing. External RC circuit may be required.
The counter wraps to 0 when it overfl ows beyond 65535.
www.lairdtech.com
20
Laird Technologies
Page 21
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
REGISTER DEFAULT RANGECOMMENT
S641n/a0..65535As per 631, but the action of reading the value will reset the count to 0.
S642n/a0..65535As per 632, but the action of reading the value will reset the count to 0.
S701n/a0..65535Read/Write to Analogue Line 0, when reading value is returned in decimal
S702n/a0..65535Read/Write to Analogue Line 1, when reading value is returned in decimal
S711n/a0000..FFFFRead/Write to Analogue Line 0, when reading value is returned in hexadecimal
S712n/a0000..FFFFRead/Write to Analogue Line 1, when reading value is returned in hexadecimal
S72100Set direction of Analogue Line 0
S72200Set direction of Analogue Line 1
S1001 to
S1010
13. ATSn? {Read S Register Value}
This will return the current value of register n.
For recognised values of n
Response: <cr,lf>As Appropriate<cr,lf>OK<cr,lf>
For unrecognised values of n
Response: <cr,lf>ERROR nn<cr,lf>
14. ATSn=? {Read S Register – Valid Range}
This will return the valid range of values for register n.
For recognised values of n
Response: <cr,lf>Sn:(nnnn..mmmm)<cr,lf>OK<cr,lf>
For unrecognised values of n
Response: <cr,lf>ERROR nn<cr,lf>
0.. 2^3210 General Purpose 32 bit Registers for use by host. These are stored in
non-volatile memory.
15. ATX<string> {Send Data in Local Command and Connected Mode}
This command is used to send data to the remote device when in local command and
connected mode.
The parameter <string> is any string not more than 24 characters long. If a non-visual character is
to be sent then insert the escape sequence \hh where hh are two hexadecimal digits. The 3 character
sequence \hh will be converted into a single byte before transmission to the peer.
Response: <cr,lf>OK<cr,lf>
16. ATY<string> {Send Data in Local Command and Connected Mode}
This command is similar to ATX in syntax and functionality, except that the string is only copied to
the output rf buffer. Only when an empty string is presented will all pending data in the output rf
buffer be fl ushed out.
The parameter <string> is any string not more than 24 characters long. If a non-visual character is
to be sent then insert the escape sequence \hh where hh are two hexadecimal digits. The 3 character
sequence \hh will be converted into a single byte before transmission to the peer.
Response: <cr,lf>OK<cr,lf>
www.lairdtech.com
21
Laird Technologies
Page 22
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
17. ATZ<n> {Hardware Reset and emerge into mode ‘n’}
Forces the device through a hardware reset which means it will eventually come alive in the local
command and unconnected mode. This allows changes to the PS store to take effect. The module
will issue an OK response after the reset is complete and it is ready to receive commands once again.
ATZ and ATZ0 signify reset and emerge into the current mode (see command ATI14). ATZ1 to ATZ4
instructs the module to reset and then emerge into the appropriate boot mode. Note that S Reg 103
specifi es the boot mode from cold.
Response: <cr,lf>OK<cr,lf> and OK is returned after the RESET
18. AT&Fn {Set S Register Defaults}
This command will only work when the device is in local command and unconnected mode.
Depending on the value of ‘n’ it installs S Register values appropriate for various power modes,
ranging from minimum power consumption to maximum.
Legal values of ‘n’ are as per the following table. All other values of n will generate a syntax error
response. If ‘n’ is not specifi ed then a default value of 0 is assumed where the baud rate is
NOT changed.
&F0 (Default)Medium power consumption, UART baud rate unchanged.
&F1Minimum power consumption, UART baud rate set to 9600.
&F2Minimum power consumption, UART baud rate set to 38400.
&F3Minimum power consumption, UART baud rate set to 115200.
&F4Medium power consumption, UART baud rate set to 115200.
&F5Maximum power consumption, UART baud rate set to 115200.
&F6Maximum power consumption, UART baud rate set to 115200.
The new values are NOT updated in non-volatile memory until the AT&W command is sent to
the device.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
19. AT&F* {Clear Non-volatile Memory}
The AT&F* variant of the command installs values in S registers as per command AT&F4 and then
all other user parameters in non-volatile memory are erased. This means that the trusted device
database is cleared, and so are parameters related to the following commands:- AT+BTR,
AT+BTN, AT+BTS.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
20. AT&F+ {Clear Non-volatile Memory}
This command erases all user parameters in non-volatile memory except S Registers 520 to 525.
This means that the trusted device database is cleared, and so are parameters related to the
following commands:- AT+BTR, AT+BTN, AT+BTS.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
21. AT&W {Write S Registers to Non-volatile Memory}
Writes current S Register values to non-volatile memory so that they are retained over a power cycle.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR nn<cr,lf>
www.lairdtech.com
22
Laird Technologies
Page 23
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
22. AT+BTAn {Control Audio Channel}
Once a Bluetooth connection is active, and assuming the peer device is also a Laird Technologies
device, this command is used to start/stop a SCO channel which will connect the PCM interfaces
of the two peer devices. This means that if a codec is attached to the PCM pins, then 2-way
audio can be established.
+BTA0Switch off the channel.
+BTA1Switch on the channel.
On receipt of the command, the following response immediately follows.
Response: <cr,lf>OK<cr,lf>
The lower layers then go through the process of setting up the SCO channel, and as soon as a SCO
link is established, the following response is asynchronously sent to the host.
Response: <cr,lf>AUDIO ON<cr,lf>
Or if the SCO failed to be established.
Response: <cr,lf>AUDIO FAIL<cr,lf>
On the peer device, the host will asynchronously get ….
Response: <cr,lf>AUDIO ON<cr,lf>
23. AT+BTC<devclass> {Set Device Class Code}
This command is used to set the device class code which will be sent in subsequent inquiry responses.
It can be read back using the AT+BTC? Command, as described below.
<devclass> is a 6 digit hexadecimal number derived as per section “1.2 The Class of
Device/Service Field” of the Bluetooth specifi cation “Bluetooth Assigned Numbers”.
The 24 bits are made of 4 fi elds briefl y described as follows (bit 0 corresponds to the least signifi cant bit):-
Bits 0-1Format Type. This fi eld currently only has a value of 00 (i.e. format type 1)
Bits 2-7These 6 bits defi ne the Minor Device Class and the value is interpreted differently
based on the Major Device class stored in the next 5 bits.
Bits 8-12These 5 bits defi ne the Major Device Class as per Table 1.3 in
“Bluetooth Assigned Numbers”
Bits 13-23This is an 11 bit fi eld used as a mask to defi ne the Major Service Class, as per Table 1.2 in
“Bluetooth Assigned Number”
www.lairdtech.com
23
Laird Technologies devices do not map to any predefi ned Major Service Class or Major Device Class and so the default devclass as shipped is 001F00, which means no Major Service Class and “Unclassifi ed” Major Device class.
Other examples of device class codes are follows:-
Or for an invalid <devclass> value (usually a value which is not 6 hexadecimal characters long).
Response: <cr,lf>ERROR 08<cr,lf>
24. AT+BTC? {Read Device Class Code}
This command is used to read the current device class code.
Response: <cr,lf>123456
<cr,lf>OK<cr,lf>
Laird Technologies
Page 24
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
25. AT+BTD<bd_addr> {Remove Trusted Device}
This command is used to remove the specifi ed device from the list of trusted devices in the non-volatile database. If the device is not in the database then the response will still be an OK.
Response: <cr,lf>OK<cr,lf>
26. AT+BTD* {Remove All Trusted Devices}
This command is used to remove all devices from the list of trusted devices in the non-volatile
database. No confi rmation will be asked for. So beware!!!
WARNING: If you make an authenticated connection, the link key gets cached in the underlying
stack. So if you subsequently delete the key using AT+BTD* and immediately request an
authenticated connection to the same device, then the connection will be established.
To ensure this does not happen, either send ATZ after the AT+BTD* OR send AT+BTD<bd_addr>
for each item in the trusted device database.
Response: <cr,lf>OK<cr,lf>
27. AT+BTF=<string> {Set Friendly Name}
This sets the friendly name of this device as seen by other devices
Response: <cr,lf>OK<cr,lf>
28. AT+BTF<bd_addr> {Get Remote Friendly Name}
This command gets the remote friendly name of the peer specifi ed.
Enable page scanning and wait for a connection from device with Bluetooth address <bd_addr>.
If the specifi ed address is 000000000000 then incoming connections are accepted from any device, is as per AT+BTP without an address. Inquiry Scans are disabled.
This command also has variants which allow authentication and encryption to be explicitly specifi ed.
For example:-
Enable page scanning only and wait for a connection from any device. Inquiry scans are disabled.
Authentication and Encryption is as per S registers 502 and 503.
Enable page scanning only and wait for a connection from any device. Inquiry scans are disabled.
Authentication and encryption are both enabled. The order of U and Y is not signifi cant.
Response: <cr,lf>OK<cr,lf>
34. AT+BTI<devclass> {Inquire}
This will make the device perform an inquiry for device class code for delay milliseconds and max
number of unique responses, where delay is specifi ed by S register 517 and max is specifi ed by S
register 518.
The <devclass> is an optional parameter where the value specifi es either a 6 digit device class code or a 2 digit major device class. If it is not specifi ed, then the value is taken from S register 516.
When <devclass> is 6 hexadecimal characters long, it specifi es an AND mask which is used to fi lter inquiry responses. When <devclass> is 2 hexadecimal characters long, it forces the inquiry to fi lter responses to devices that match their major device class code to this value – which can only be in
the range 00 to 1F.
Response: <cr,lf>12346789012
<cr,lf>12345678914
<cr,lf>OK<cr,lf>
If the module is waiting for an incoming connection, (entered via AT+BTP, AT+BTG, AT+BTQ), then
it will respond with ERROR 14. To perform the inquiry, send AT+BTX to put the module back into
idle mode.
Response: <cr,lf>ERROR 14<cr,lf>
ERROR RESPONSE
A Bluetooth inquiry process is such that for a single inquiry request a device could respond many times.
To ensure that an address is sent to the host only once for a particular AT+BTI, an array of addresses
is created at the start of each AT+BTI and is fi lled as responses come in. This array of addresses is stored in dynamic memory and as such if the memory allocation fails then the inquiry procedure is
aborted and in that case an error response is sent to the host.
To clarify, a single AT+BTI will never return the same Bluetooth address more than once, but as long
as the responding device is active, all AT+BTI commands will always return it.
Response: <cr,lf>ERROR 27<cr,lf>
www.lairdtech.com
25
35. AT+BTIV<devclass> {Inquire}
As per AT+BTI but the response includes the device class code for all inquiry responses. Please refer
to the ‘ERROR RESPONSE’ note in the description for AT+BTI<devclass>.
Response: <cr,lf>12346789012,123456
<cr,lf>12345678914,123456
<cr,lf>OK<cr,lf>
Laird Technologies
Page 26
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
36. AT+BTIN<devclass> {Inquire}
As per AT+BTI but the response includes the device class code and friendly name for all inquiry
responses. Please refer to the ‘ERROR ESPONSE’ note in the description for AT+BTI<devclass>.
The friendly name strings are in UTF-8 format as per the Bluetooth specifi cation.
Response: <cr,lf>12346789012,123456,”TDK SYSTEMS AT DONGLE 1”
<cr,lf>12345678914,123456, “TDK SYSTEMS RS232”
<cr,lf>OK<cr,lf>
Note: Many releases of fi rmware will return the product name as LAIRD, e.g.
Response: <cr,lf>12346789012,123456,”TDK SYSTEMS AT DONGLE 1”
<cr,lf>12345678914,123456, “TDK SYSTEMS RS232”
<cr,lf>OK<cr,lf>
We strongly recommend that any software implementation that uses this command should check
for LAIRD, EZURIO and TDK SYSTEMS to ensure backwards and forwards compatibility.
37. AT+BTK=<string> {Set Passkey}
This command is used to provide a passkey when PIN? 12345678 indications are received
asynchronously. If a pairing is not in progress then the pin is written to non-volatile memory for
future use. Specifying an empty string deletes the key from the non-volatile memory.
The string length must be in the range 0 to 8, otherwise an error will be returned.
Response: <cr,lf>OK<cr,lf>
38. AT+BTM<bd_addr> {Set Incoming Peer Address}
This command is used to store a peer address for incoming connections in non-volatile memory.
A value of 000000000000 has the special meaning of invalid peer address.
When S register 512 = 3, 4, 6 or 7 then it will wait for an incoming connection from the peer
address specifi ed. If the peer address is not 000000000000, then it waits for a connection from
the specifi ed master, otherwise will connect to anyone.
Response: <cr,lf>OK<cr,lf>
39. AT+BTM {Delete Incoming Peer Address}
This command is used to delete the peer address previously stored using AT+BTR<bd_addr>.
Response: <cr,lf>OK<cr,lf>
40. AT+BTM? {Read Incoming Peer Address}
This command is used to display the peer address stored in non-volatile memory, used to put the
module in pure cable replacement mode.
Response: <cr,lf>12346789012
<cr,lf>OK<cr,lf>
If the location is empty the response is as follows.
Response: <cr,lf>00000000000
<cr,lf>OK<cr,lf>
41. AT+BTN=<string> {Set Friendly Name in Non-volatile Memory}
This sets the default friendly name of this device as seen by other devices. It will be stored in
non-volatile memory. Use AT+BTF to make the name visible to other devices. Use AT+BTN?
To read it back. An empty string (“”) will delete the string from non-volatile memory which
will force the default name to be used.
Response: <cr,lf>OK<cr,lf>
www.lairdtech.com
26
Laird Technologies
Page 27
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
42. AT+BTN? {Read Friendly Name from Non-volatile Memory}
Read the default friendly name from non-volatile memory.
Response: <cr,lf>”My FriendlyName”<cr,lf>
<cr,lf>OK<cr,lf>
43. AT+BTO<devclass> {Open and make Unit Detectable}
After power up and ATZ, this command is sent so that RFCOMM is initialised and opened and the
service name as specifi ed in AT+BTN is exposed via the SDP registry.
The <devclass> value specifi es an optional fi xed length hexadecimal device class code. If it is not
specifi ed, then the device class code is taken from S Register 515.
For this command to be effective, S Register 512 must be set to 0.
Enable page scanning and wait for a connection from device with Bluetooth address <bd_addr>.
If the specifi ed address is 000000000000 then incoming connections are accepted from any device, is as per AT+BTP without an address. Inquiry scanning is also enabled.
This command also has variants which allow authentication and encryption to be explicitly specifi ed.
For example:-
Enable page scanning and wait for a connection from any device. Inquiry scanning is also enabled.
Authentication and Encryption is as per S registers 502 and 503.
Enable page scanning and wait for a connection from any device. Inquiry scanning is also enabled.
Authentication is enabled and encryption is disabled.
Enable page scanning and wait for a connection from any device. Inquiry scanning is also enabled.
Authentication is disabled and encryption is enabled.
Enable page scanning and wait for a connection from any device. Inquiry scanning is also enabled.
Authentication and encryption are both enabled. The order of U and Y is not signifi cant.
Response: <cr,lf>OK<cr,lf>
49. AT+BTQ {Enable Inquiry Scans ONLY}
When inquiry scan is enabled, it implies that this device will respond to inquiries from other devices.
Use AT+BTX to disable inquiries.
Response: <cr,lf>OK<cr,lf>
www.lairdtech.com
27
Laird Technologies
Page 28
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
50. AT+BTR<bd_addr> {Set Outgoing Peer Address}
This command is used to store a peer address for outbound connections in non-volatile memory.
A value of 000000000000 has the special meaning of invalid peer address.
This command is used to set up a module in pure cable replacement mode.
If S register 512 = 1 and the peer address is NOT 000000000000, then it will periodically (time
specifi ed via S register 505) attempt to connect to the peer address specifi ed. In this circumstance all commands from the host are buffered in the receive buffer, until a Bluetooth connection is
established with the peer device and it then sends the buffer across. This means that if the peer
device is not in the vicinity and will never be there, the device effectively becomes useless, as in this
circumstance a host would want to get attention of the AT parser to send it new commands –
probably one to delete the peer device.
In this circumstance, a recovery is possible by one of two methods. The fi rst method assumes that the DTR from the host is connected to the DSR line of the module and the second method assumes
that this connection is absent. In the fi rst method it is enough to deassert the DTR line from the host and that will abort the autoconnect cycle. The second method is initiated by resetting the
device and then ensuring that the text string “AT+BT&BISM&<cr>” is sent (where <cr> is the
carriage return character). There is special code which looks out for this magic command and
terminates the autoconnect cycle if it sees it and confi rms to the host of that fact by sending an “OK” response.
Response: <cr,lf>OK<cr,lf>
51. AT+BTR {Delete Outgoing Peer Address}
This command is used to delete the peer address previously stored using AT+BTR<bd_addr>.
Response: <cr,lf>OK<cr,lf>
52. AT+BTR? {Read Outgoing Peer Address}
This command is used to display the peer address stored in non-volatile memory, used to put the
device in pure cable replacement mode.
Response: <cr,lf>12346789012
<cr,lf>OK<cr,lf>
If the location is empty the response is as follows.
Response: <cr,lf>00000000000
<cr,lf>OK<cr,lf>
53. AT+BTS=<string> {Set Service Name}
This writes the name to non-volatile memory. It will be used after ATZ, power cycle or AT+BTO if it
has not been issued yet. Use AT+BTS? to read it back from non-volatile memory. An empty string
(“”) will delete the string from non-volatile memory which will force the default service to be used.
Response: <cr,lf>OK<cr,lf>
If the service name cannot be set for any reason then an error response ERROR 11 is returned.
54. AT+BTS? {Read Service Name from Non-volatile Memory}
Reads the default service name from non-volatile memory.
Response: <cr,lf>”My ServiceName”<cr,lf>
<cr,lf>OK<cr,lf>
www.lairdtech.com
28
Laird Technologies
Page 29
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
55. AT+BTT {Add Trusted Device}
This command is used to store the cached link key in the non-volatile database. If the database is full
it will respond with an ERROR. If the device is already in the database, then the key is replaced.
If the link key cache is empty, that is, a pairing has not been performed since the device was powered,
then the response will be an ERROR.
Response: <cr,lf>OK<cr,lf>
Or
Response: <cr,lf>ERROR<cr,lf>
56. AT+BTT? {List Trusted Device}
This command is used to list the contents of the trusted device database. The link key is NOT displayed
so the response is as shown below. If the list is empty then just the OK response is sent otherwise an
OK is used to terminate the list. Use the command ATI6 to read the maximum size of the trusted
device database.
Response: <cr,lf>12346789012
<cr,lf>12345678913
<cr,lf>12345678914
<cr,lf>OK<cr,lf>
58. AT+BTW<bd_addr> {Initiate Pairing}
This initiates pairing with a device whose Bluetooth address is <bd_addr>. An OK response is sent
and when the PIN is required, asynchronous indications will be sent to the host in the form PIN?
<bd_addr> where the address confi rms the device with which the pairing is to be performed. To supply a PIN, use the AT+BTK command.
For a successful pairing, the link key is stored in a volatile cache which is overwritten every time a
new pairing is initiated using this command. The link key can be stored in a non-volatile database
within the device. The list of trusted devices is managed using commands AT+BTT?, AT+BTT
and AT+BTD. The AT+BTT? command produces a list of trusted Bluetooth addresses (link key is
NEVER displayed) and AT+BTT is used to store the cached link key. The command
AT+BTD123456789012 is used to remove the specifi ed device from the database.
The “OK” response is sent immediately on receipt of the AT+BTW command. On pairing completion,
an unsolicited message will be sent to the host which will be in the form PAIR n <bd_addr>. See
section 3.7 for more details.
If AT+BTI or AT+BTP or AT+BTG or AT+BTQ or ATD is issued between the AT+BTW command and
the subsequence PAIR asynchronous response, then an ERROR response will be sent to those
commands as the device is not in a mode from where such commands can be actioned.
Response: <cr,lf>OK<cr,lf>
www.lairdtech.com
29
59. AT+BTW? {List Cached Trusted Device}
This command is used to list the cached trusted device.
Response: <cr,lf>12346789012
<cr,lf>OK<cr,lf>
If the cache is empty the response is as follows.
Response: <cr,lf>OK<cr,lf>
60. AT+BTX {Disable Page/Inquiry Scanning}
Disable page/inquiry scanning. This means it will not accept incoming connections or inquiry requests.
In fact this negates the effect of AT+BTQ, AT+BTG and AT+BTP commands.
Response: <cr,lf>OK<cr,lf>
Laird Technologies
Page 30
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
UNSOLICITED RESPONSES
The ‘AT’ Protocol is a command/response type of protocol. This means that the device will normally
only respond to AT commands.
Under special circumstances, unsolicited responses will be sent to the host. They are described in the
following subsections.
RING
This string is sent to the host when a remote device is initiating a serial port connection. The fully qualifi ed
string is in the form RING 012345678901 where 012345678901 is a 12 digit hexadecimal number which
corresponds to the remote device’s Bluetooth address. This response is sent to the host every 2 seconds
until the host either accepts the connection using the ATA command or rejects it using the ATH command.
PIN?
This response is sent to the host during a pairing negotiation.
The fully qualifi ed string is PIN? 012345678901 where 012345678901 is the Bluetooth address of the peer
device. In response, the host must supply a pin code which is entered using the AT+BTK command.
If the peer address does not supply the address in the message exchange, then the address is specifi ed as
000000000000 – and the paring will proceed as normal.
AUDIO ON
This response is sent to the host when a SCO channel has been established.
AUDIO OFF
This response is sent to the host when an existing SCO channel has been closed.
AUDIO FAIL
This response is sent to the host when a SCO channel setup fails.
ERROR 27
This response is sent to the host on power up if the fi rmware is unlicensed.
PAIR n <bd_addr>
This response is sent to the host on termination of a pairing process. If pairing was successful then ‘n’ = 0,
if a timeout occurred then ‘n’=1 and for all other unsuccessful outcomes the value will be 2.
The parameter <bd_addr> is the address of the peer device if available.
PAIR 0 <bd_addr> MM
This response is sent to the host on termination of a successful pairing process. The optional MM is sent only
if S Register 538 is set to 1 to automatically save the link key. The value MM indicates the result of the save
operation and a value of 00 implies success, otherwise the value corresponds to an error code.
RX<string>
This response is sent to the host when the unit is in online-command mode and S Register 531 is set to 3
and data arrives from a peer.
If the data from the string contains non-visual characters (for example ASCII 0 to 31 and ASCII 128 to 255),
then those characters are translated into a 3 character escape sequence starting with ‘\’. For example the
embedded <cr><lf> sequence would be sent as the 6 character string \0D\0A.
If the data contains the character ‘“’ then it is sent as \22.
If the data contains the character ‘\’ then it is sent as \5C
www.lairdtech.com
30
Laird Technologies
Page 31
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
INCOMING CONNECTIONS
The device can be confi gured using the AT+BTP or AT+BTG command so that it will scan for incoming connec-
tions from other Bluetooth devices. It can also be confi gured via S Register 512 to be in this mode by default on
power up.
When the lower layers detect an incoming call, a RING 123456789012 string is sent to the host every second.
The command ATA is used to accept the connection and ATH to reject it.
On connection, if the S0 Register is >=0 then confi rmation to the host is in the form:-
CONNECT 123456789012
CONNECT 123456789012 A
CONNECT 123456789012 E
CONNECT 123456789012 AE
Where ‘A’ means authenticated connection and ‘E’ means encryption has been enabled.
When S0 register is -1, neither RING nor CONNECT is sent to the host and the connection is silently accepted.
If the S 100 register is non-zero, then after the ring indications specifi ed by this register have been sent to
the host, and the host has failed to accept or reject the incoming connection, then an automatic ‘hangup’
is initiated.
DROPPING CONNECTIONS
In a conventional telephony modem, a call is normally terminated by fi rst sending a +++ character sequence
enveloped by an escape sequence guard time (of the order of 100 to 1000 milliseconds) to enter local
command and connected mode and then the ATH command.
Laird Technologies Bluetooth modules provide a variety of ways of dropping a connection. One method is similar to the above, but instead a ^^^ character sequence is used, this is to eliminate ambiguity when a data call is
in progress via a mobile phone which was established using the mobile phone’s Bluetooth AT modem. The
second method involves the host dropping the DTR (DSR from the module’s viewpoint) handshaking line.
Being able to drop a connection using the escape sequence ^^^ has a severe penalty on data throughput,
in fact, the data rate is of the order of 85kbps instead of about 200kbps. To cater for this performance hit,
the device’s connection drop capability is confi gurable to be in one of two modes.
One mode allows for a connection to be dropped using either method, and the other mode allows for
a connection drop using the DTR method only. By default, the device is in former mode. This mode is
selected using the S507 register. See S register table described in an earlier section.
This means that even when a fi le transfer is occurring and it happens to be full of <Esc Chr> characters then
it is not going to drop into command mode because, when transferring a fi le it is going to happen as fast as
possible and so the inter character gap is going to be signifi cantly shorter than the <Guard time>.
The <Esc Chr> character can be changed via the S2 register and the <Guard time> interval can be specifi ed
via the S12 register.
www.lairdtech.com
31
Laird Technologies
Page 32
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
PAIRING AND TRUSTED DEVICES
When authentication is enabled via S register 500 or when using the ‘u’ modifi er in the ATD and AT+BTP
commands, a connection attempt will require a link key for the peer device. The link key can be obtained
prior to connection by invoking the AT+BTW and AT+BTK commands. A new link key can be obtained as
often as required and is stored in a volatile cache. At any time, this cached link key can be added to the
trusted devices database using the AT+BTT command. A trusted device can be deleted using the AT+BTD
command. To view a list of trusted device issue the command AT+BTT?.
In addition, if S Register 538 is set to 1, then on a successful pairing, the link key will be automatically saved
to the trusted device database. In that case, the asynchronous message PAIR 0 <bd_addr> has an error code
appended at the end to convey the result of the save operation.
When a connection attempt requires a link key, the trusted device database will be searched automatically
and if one exists will be provided without host interaction. If the link key is not present, then the connection
attempt will be terminated and a NO CARRIER response will be given to the ATD command.
A typical session to pair, say an Ericsson T68i, to a serial module would be:
• Make the T68i discoverable and send AT+BTI to the serial module. This will result in inquiry responses
from all devices. Make a note of the Bluetooth address of the phone e.g. 123456789012
• On the T68i start pairing procedure by selecting “Phone accepts” in the relevant Bluetooth menu.
• Send command AT+BTW123456789012 to the serial module
• Confi rm that you get an OK response and then PIN? responses on a 2 second interval.
• Enter a pin code on the phone. Say it is 12345768
• Then enter the command AT+BTK=”12345678”.
• The phone will confi rm success and likewise the serial module will respond with OK
• On success the serial module will send an unsolicited message in the form of PAIR 0 <bd_addr>
• Send AT+BTT to the serial module so that the pairing information is stored in the
non-volatile database.
• Confi rm that the link key has been stored by sending the command AT+BTT?. This will result in a list of all devices paired with the module.
If two Laird Technologies devices need to be paired, then it can be accomplished as follows:-
• To device 1 send ATI4, it will respond with the local Bluetooth address. E.g. 123456789001
• To device 1 send AT+BTP. It will become discoverable and connectable.
• To device 2 send AT+BTW123456789001 and it will respond with OK
• Then on both devices you will see PIN? asynchronous responses
• To both modules send AT+BTK=”12345678”
• On success the serial module will send an unsolicited message in the form of PAIR 0 <bd_addr>
• The pairing link key, is at this stage, in volatile memory, so send AT+BTT to both.
• The two units now have pairing information which will survive a power cycle.
www.lairdtech.com
32
Laird Technologies
Page 33
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
ERROR RESPONSES
All error responses from the device will be in the form <cr,lf>ERROR nn<cr,lf>, where nn will be a
number in the range 00 to 99.
ERRORDESCRIPTION
01Register not recognised
02Value for register is out of range
03Incoming call NOT pending
04No call to connect to. This error code has meaning for ATO only
05Syntax Error
06Empty String
06Device Class could not be stored
08Invalid Device Class Code
09Invalid Bluetooth Address
10Could not set Service or Friendly name
11PS Store Write
12PS Store Read
13Not Idle
14Incorrect Mode
15Already Scanning
16Pairing is already in progress
17Not USED
18Not USED
19Not USED
20Not safe to write to Non-volatile Store - Ongoing Bluetooth Connection
21Link Key Cache is Empty
22Link Key Database is Full
23Malloc returned NULL - Resource Issue
24Remote Address same as Local Address
25Connection Setup Fail, DSR Not asserted
26Unauthenticated licence
27Max Responses (See S Register 518) too high. Memory allocation error
28The length of Pin in AT+BTK is too long
29Invalid Ring count specifi ed for S Register 0 or 100. If S0<>0 and S100<>0 then S0 must be < S100
30ADC Error
31Analogue Value cannot be read as it is set for output
32Analogue Value cannot be written as it is set for input
33S Register Value is invalid
34Both L and R modifi er cannot be specifi ed in ATD command
35Invalid Major Device Class – valid value in range 0x00 to 0x1F inclusive
36Pairing in progress – Command cannot be actioned – try again later
37Invalid Sniff parameter specifi ed. E.g. new Attempt value greater than MinInterval. Solution is to fi rst
increase MinInterval and re-enter the Attempt value.
38Get Remote Friendly name Failed
39Failed to change mode to Multipoint
407 Bit mode requires parity to be even or odd
www.lairdtech.com
33
Laird Technologies
Page 34
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
FACTORY DEFAULT MODE
Laird Technologies devices are capable of operating at a very wide range of baud rates. S Registers 520 and 521
allow the baud rate to be set very easily. The baud rate clock generator in the device is more versatile than
that available in a standard 16550 UART commonly available in PCs.
In fact, as long as the equation BAUDRATE * 0.004096 produces an integer value, then there will be 0%
error in clocking for that baud rate.
So it is possible to set a baud rate that a PC cannot cope with, and in that circumstance it is virtually impossible
to communicate with it.
To cater for this circumstance, if DSR is de-asserted, the device will come out of reset using 9600,N,8,1 comms
settings for exactly 750 milliseconds and then revert to the comms parameters as per the S Registers.
If the host sends the string !<BISM>!<cr> where <cr> is the carriage return character within that 750ms period,
then the module will remain at 9600,N,8,1 and will also confi gure itself using factory default S Register values.
MISCELLANEOUS FEATURES
This chapter describes various features which cannot be categorized appropriately.
RI dependent Start-up Mode
The UART_RI line can be confi gured as an input and on power its state can be used to force the device into
one of two modes. See description for S Registers 565 to 569 inclusive for more details.
For example, the feature could allow a device to make an outgoing connection if RI is in one state, and be
ready for an incoming connection in the other.
Pulse a GPIO pin
To fl ash a GPIO pin, set it as an output using S reg 610 and then use S reg 585 to 587 inclusive to set the pin,
period and duty cycle respectively.
Flash GPIO4 on Connectable Mode
S reg 534 now takes a value up to 2. A value of 2 confi gures GPIO4 so that it will blink when the module is
in connectable mode.
Reset via BREAK
The module can be reset by sending a BREAK signal. A BREAK signal exists when the module’s UART_RX input
is in a non-idle state (0v) for more that 125 milliseconds.
Digital I/O Cable Replacement
The module has a number of general purpose digital i/o pins. The direction of these are specifi ed via S Reg 610.
When S Reg 531 is set to 4 at both ends of the connection, then on connection, any changes in the states of
the inputs at one end will be transmitted to the peer, which will then refl ect those states on the appropriate i/o
pins if they have been confi gured as outputs.
It is recommended that the value of S Reg 610 at one end be the one’s complement of the other end. That
way, inputs at one end are mirrored at the other end and vice versa.
In addition S Reg 506 MUST be set to 0, which disables echos.
Note that due to inherent latency of Bluetooth transmission, expect the change of state to be delayed. This
value is typically 100ms and can be much more if the quality of the link is bad which results in many retries.
It is assumed that an audio channel is not active at any time.
Append Bluetooth Address to Friendly name
If S Reg 593 is set to 1, then the last 6 hex digits of the Bluetooth address are automatically appended to
the friendly name. This allows multiple devices with the same name in a neighbourhood to be differentiated.
www.lairdtech.com
34
Laird Technologies
Page 35
BTM410/411
Bluetooth® AT Data Module
CONFIGURING
THE BTM410/411
DISCLAIMERS
LAIRD TECHNOLOGIES’ WIRELESS PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN
LIFE SUPPORT DEVICES OR SYSTEMS WITHOUT THE EXPRESS WRITTEN APPROVAL OF THE MANAGING DIRECTOR OF LAIRD TECHNOLOGIES.
The defi nitions used herein are:
a) Life support devices or systems are devices which (1) are intended for surgical implant into the body,
or (2) support or sustain life and whose failure to perform when properly used in accordance with the
instructions for use provided in the labelling can reasonably be expected to result in a signifi cant injury to the user.
b) A critical component is any component of a life support device or system whose failure to perform can
be reasonably expected to cause the failure of the life support device or system, or to affect its safety
or effectiveness.
Laird Technologies does not assume responsibility for use of any of the circuitry described, no circuit patent
licenses are implied and Laird Technologies reserves the right at any time to change without notice said circuitry
and specifi cations.
Data Sheet Status
Laird Ltd reserve the right to change the specifi cation without prior notice in order to improve the design and
supply the best possible product.
www.lairdtech.com
35
Laird Technologies
Page 36
BTM410/411
Bluetooth® AT Data Module
APPLICATION
EXAMPLES
APPLICATION EXAMPLES
RS232 Modem Signals
Just as a telephony modem has control and status lines, the BT Data Module also provides for 6 control
and status lines as per the table below. The direction column is as seen from the module’s viewpoint.
DIRECTIONFUNCTION
IN or OUT *CI also known as RI (Ring Indicate)
IN or OUT *DCD (Data Carrier Detect)
INDSR (Data Set ready)
OUTDTR (Data Terminal Ready)
INCTS (Clear to Send)
OUTRTS (Request to Send)
* confi gurable with S register 552
The fi rst four lines are under program control. These use four of the GPIO pins and are mapped to I/O as per
the table below. The last two are under control of the UART driver and their functionality is always enabled.
1. PIO4 (DSR) is used by the blu2i module to sense that the host is connected, and is intricately linked
with connections. For outgoing calls, if this line is not asserted then an error is indicated. Similarly
for AT+BTP and AT+BTG.
While in a call, for appropriate modes, a de-assertion means fall into command state. If the
de-assertion exists for longer than the period specifi ed in S Register 519 then the connection is dropped as if an ATH command was received.
2. PIO2 (RI), is normally de-asserted. When an incoming connection is detected it will be asserted,
until the connection is either answered or rejected using ATA and ATH respectively. See S Registers
552 & 553 for more details
3. PIO3 (DCD) will be de-asserted when the device is in the unconnected state. Asserted when a
connection is active. See S Registers 552 and 553 for more details.
4. PIO5 is either used as GPIO or driven as UART_DTR. When the unit is confi gured in pure host mode, this pin is forced into UART_DTR and is asserted when there is a Bluetooth connection.
GPIO Pins 1 to 8 are available for general purpose use.
www.lairdtech.com
36
Laird Technologies
Page 37
BTM410/411
Bluetooth® AT Data Module
APPLICATION
EXAMPLES
Modem signalling over Bluetooth
The RFCOMM protocol used in Bluetooth for implementing the serial port profi le allows for the exchange
of four modem signals. This information is contained in a special transparent message which contains bits
identifi ed as RTR, RTC, DV and IC which depending on the type of serial device being emulated maps to DTR
or DSR, RTS, DCD and RI respectively. In addition, this message also includes the ability to convey a BREAK
input from one end to the other.
To allow for the greatest fl exibility and variability in how the modem control signals are used out in the real
world, S Registers 551, 552 and 553 have been provided which allow for any of RTR,RTC,DV and IC to be
mapped to any modem control/status line.
BREAK signal on RX line
If the host sends a break signal of duration greater than 100ms, then the blu2i module is confi gured to treat that as a signal to perform a hardware reset.
This being the case it is not possible to convey a BREAK over Bluetooth to the peer device.
Reset
The module can be reset by the host without the need of any I/O using a BREAK signal. The module
has been confi gured to reset when the RX line detects a break condition for durations greater than
100 milliseconds.
The Reset line has a fi xed pull down resistor of 10kOhm
Pure Cable Replacement Mode
The module has the capability of being preset into a pure 5-wire data cable replacement mode. The 5 wires
being RX, TX, CTS, RTS and GND. This mode requires no changes to a host application since the Bluetooth
connection is automatically set up on power up. If the connection is lost the BISM2 module will constantly
retry until the connection is reinstated.
By implication, two devices are needed to replace a cable. One device is pre-confi gured to always be a master
and the other, a slave.
Assuming the Bluetooth address of the master to be <bdaddr_m> and that of the slave to be <bdaddr_s>,
the master module is confi gured by sending it the following AT commands:
AT&F*
ATS512=1
ATS504=1
ATS507=2
ATS530=2000
AT&W
AT+BTR<bdaddr_s>
www.lairdtech.com
37
The ATS507=2 setting puts the device in DSR drop mode only. This means that when the device needs to be
reconfi gured, deasserting the DSR line will ensure that the module responds quickly to AT commands. This
further means that in stand alone mode, the DSR input line MUST be asserted e.g. 0V in TTL signal mode.
The slave is confi gured by:
AT&F*
ATS512=4
ATS0=-1
AT&W
AT+BTR<bdaddr_m>
Laird Technologies
Page 38
BTM410/411
Bluetooth® AT Data Module
APPLICATION
EXAMPLES
Where <bdaddr_m> is optional. If it is not specifi ed, then the slave unit will accept connections from any
device. If specifi ed then only connections from the device specifi ed will be accepted.
If it is desired that the slave unit should not be discoverable (the master is by default not discoverable),
then the confi guration commands are:
AT&F*
ATS512=3
ATS0=-1
AT&W
AT+BTR<bdaddr_m>
Where <bdaddr_m> is optional. If it is not specifi ed, then the slave unit will accept connections from
any device. If specifi ed then only connections from the device specifi ed will be accepted.
When the units are next power cycled, the slave unit will wait for the master to connect to it and the
master will continually look for the slave. If a connection attempt fails, the master will wait for 2 seconds
before reattempting a connection. This 2 second delay can be varied by issuing it an ATS530 command
with an appropriate value in the range 100ms to 15000ms.
IMPORTANT NOTE: The DSR input to the module MUST be asserted for the auto connection to succeed.
When operating at TTL levels a 0V is seen as an assert state. When operating at RS232 levels and voltage
greater than 3V is seen as assert. It is usual to connect the DTR line of the host to the DSR line of this device.
Audio Cable (voice)
With a pair of these modules it is possible to replace a mono audio cable with two way traffi c. That is,
a setup where a microphone is connected to a speaker at the remote end and vice versa. So this mode
effectively replaces two audio cables.
Assuming the Bluetooth address of the master to be <bdaddr_m> and that of the slave to be <bdaddr_s>,
the master module is confi gured by sending it the following AT commands:
AT&F*
ATS512=1
ATS504=1
ATS530=2000
ATS532=7
AT&W
AT+BTR<bdaddr_s>
www.lairdtech.com
38
And the slave is confi gured by:
AT&F*
ATS512=4
ATS0=-1
AT&W
AT+BTR<bdaddr_m>
Laird Technologies
Page 39
BTM410/411
Bluetooth® AT Data Module
APPLICATION
EXAMPLES
FCC and
Industry Canada
Statements
Modem Control and Status Signals
A serial port has DTR, DSR, RTS, CTS, DCD and RI control lines. RTS and CTS are locally controlled to prevent
local buffer overfl ow.
The status of DTR, DRS, DCD and RI can be exchanged with the remote peer device. If for example,
the DTR/DSR lines are to be exchanged between the two peers to simulate the performance of a physical
cable, then it is possible to do so. Refer to the description for S Registers 551, 552 and 553 for more details.
Some serial implementations link CTS and RTS to remove the need for handshaking. Ezurio do not
recommend linking CTS and RTS other than for testing and prototyping. If these pins are linked and
the host sends data at the point that the Bluetooth Serial Module deasserts its RTS signal, then there
is a signifi cant risk that internal receive buffers will overfl ow which could lead to an internal processor
crash. This will lead to a drop in connection and may require a power cycle to reset the module.
Ezurio recommend that the correct CTS/RTS handshaking protocol be adhered to for proper operation.
This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions:
(1) This device may not cause harmful interference, and (2) this device must accept any interference received,
including interference that may cause undesired operation.
Changes or modifi cations not expressly approved by the party responsible for compliance could void the user’s
authority to operate the equipment.
To comply with the FCC RF exposure compliance requirements, this device and its antenna must not be
co-located or operating to conjunction with any other antenna or transmitter.
Considerations for OEM integration:
To inherit the modular approval, the antennas for this transmitter must be installed to provide a separation
distance of at least 20 cm from all persons and must not be co-located or operating in conjunction with any
other antenna or transmitter.
Co-location with other radio transmitting devices operating concurrently in the same band will require
additional testing and certifi cation.
Designers should note the distinction that the FCC makes regarding portable and mobile devices.
Mobile devices are defi ned as products that are not used closer than 20cm to the human body, whereas
portable devices can be used closer that 20cm to the body. In the case where the BTM411 module is used
in a portable device, additional SAR testing must be performed on the complete product.
FCC Labelling
requirement
www.lairdtech.com
39
If the FCC ID is not visible when the module is installed inside another device, then the outside of the device
into which the module is installed must also display a label referring to the enclosed module. This exterior label
can use wording such as the following: “Contains Transmitter Module FCC ID: PI4411B” or “Contains FCC ID:
PI4411B.” Any similar wording that expresses the same meaning may be used.
Laird Technologies
Page 40
BTM410/411
O
Bluetooth® AT Data Module
MECHANICAL
DRAWINGS
Orientation mark
on RF Shield
denotes pin 1
MECHANICAL DETAILS
36
37
(COMPONENT SIDE)
E
50
1
Pin Outs
TOP VIEW
U1
U2
D
RF
H
RF OUT
RF Shield
29
26
25
26
29
BOTTOM VIEW
25
(SMT PADS)
36
37
b
E1
SIDE VIEW
e
H
12
11
A
12
11
D1
A1
A2
50
1
G
F
Description50 pin BT Data Module
Size
Pitch1mm
Dimension Minimum Typical MaximumNotes
18.0 x 12.5 x 2.5mm
A2.42.7
A10.80.91.0
A21.51.7
b0.60
D
E17.8718.019.13
e1.0
D110.0
E112.0
F
G
H
Unitsmm
2.3
1.3
0.650.55
12.3712.512.63
1.25
2.50
0.85
PCB Thickness
RF Shield Height
Global pad width
Global pitch
Pad Centre to Board edge
Pad Centre to Board edge
Global length of pad to edge of board
www.lairdtech.com
40
Laird Technologies
Page 41
BTM410/411
Bluetooth® AT Data Module
MECHANICAL
DRAWINGS
RECOMMENDED PCB FOOTPRINT
MODULE OUTLINE
(See note 2)
9.6
Pad Width 0.7 Typ
Pad Length 1.65 Typ
37
25
36
29
RF OUT (See Note 1)
26
13.7
1x10
pin pitch
50
1
5
11
12
6.5
pin pitch
1x13
19.2
NOTES FOR PCB LAYOUT:
1. The RF output pin must be matched to a 50Ω strip-line or coplanar waveguide on the
antenna-less version (BTM410).
2. Ensure that there are no exposed conductors under the module to avoid shorts to the
test points on the module underside.
3. The pcb footprint is provided for guidance only. Users may wish to modify the PCB land
dimensions to suit their specifi c manufacturing or process.
6.85
www.lairdtech.com
41
Laird Technologies
Page 42
BTM410/411
Bluetooth® AT Data Module
MECHANICAL
DRAWINGS
B
ANT
1
36
262728
34353332313029
N/C
N/C
N/C
N/C
N/C
N/C
N/C
N/C
ANT
GND
GND
VCC_IO
VCC_IO
J1
RJ45_Mod_Jack
R13
12
R3
10K
12
VCC_3V3
8
7
6
5
4
3
2
1
VDD_CONN
J5
SW3
NF
1324
10K
PIO_7
SW1
NF
13
24
PIO_5
N/C
37
N/C
38
N/C
39
N/C
40
GND
41
PIO_2/RI
PIO_9/DTR
PIO_10/DSR
USB_MOD_D-
USB_MOD_D+
PIO_7
PIO_6
PIO_4
2
USB_DSR
PIO_9/DTR
12
12
C17
R49
PIO_10/DSR
R51
10K
100n
VCC_IO
4
5
VCC
OUT
U3
OE_INGND
123
FTDI_EN
10K
R50
12
USB_DTR
Module_CTS
PIO_2/RI
PIO_10/DSR
JP1
34
12
56
Module_RTS
PIO_3/DCD
PIO_9/DTR
R44
10K
DD
12
12
C16
10K
Module_CTSUSB_RTS
R47
10K
VCC_IOVCC_3V3
VCC_IO
100n
VCC_3V3
5
4
VCC
OUT
U2
OE_INGND
NC7SZ125
123
FTDI_EN
10K
R46
12
USB_CTS
0R
R48
12
0R
12
Module_RTS
R41
10K
12
VCC_3V3
12
VCC_3V3
C15
100n
VCC_3V3
3
R40
VCC_3V3
4
VCC_3V3
5
5
VCC
U1
10K
12
R43
VCC_3V3
4
OUT
OE_INGND
123
FTDI_EN
12
USB_TXModule_RX
10K
VCC_IO
VCC_3V3
VCC_3V3
NC7SZ125
VCC_3V3
FTDI_EN
0R
R45
12
USB_PWREN
12
12
R42
PIO2/UART_RI
42
PIO9/UART_DTR
43
PIO10/UART_DSR
44
GND
45
46
47
48
49
50
U4
78
910
1112
RESET_Module_RX
Module_TX
VCC_3V3
NC7SZ125
12
C18
USB_D+/ RESERVED
BT_Data
USB_D-/ RESERVED
GPIO8
GPIO7
GPIO5
N/C
GND
UART_CTS
UART_RX
UART_RTS
UART_TX
GND
12345
6
7
Module_RX
Module_TX
Module_CTS
Module_RTS
VCC_IO
VCC_IO
12
R53
10K
NF Header 6X2
R52
10K
12
VCC_3V3VCC_3V3
100n
CC
N/C
25
N/C
24
GND
23
PIO3/UART_DCD
22
GPIO6
21
RESET
20
PCM_OUT
19
PCM_CLK
18
PCM_SYNC
17
PCM_IN
16
GND
15
MASTER_VIN
14
VDD_IO
13
VDD_USB
12
SPI_MOSI
SPI_CLK
SPI_CSB
SPI_MISO
8
9
10
11
20
VCC
U5
OE1_
123
NF
10K
VCC_IO
R57
SPI_MISO
SPI_CS
SPI_CLK
SPI_MOSI
19
O0
OE2_
I0O4I1O5I2O6I3O7GND I7
4
7
5
6
SPI_CS_PC
SPI_CLK_PC
SPI_MOSI_PC
SPI_MISO_PC
VCC_3V3VCC_IOVCC_IO
12
10K
R58
12131415161718
I6O2I5O1I4
O3
8
9
1011
SPI_CS
SPI_MISO
JP2
SPI_MOSI
12
SPI_CLK
R55
10K
12
C20
100n
SPI_MISO_PC
SPI_MOSI_PC
2
4
1
3
56
SPI_CS_PC
SPI_CLK_PC
VCC_IO
R56
TP5
1
12
C19
12
10K
R61
NF 74LCX244
10K
R60
10K
R59
12
PIO_5
RESET_
100n
12
10K
12
10K
R63
12
12
R65
10K
12
R64
10K
12
R62
10K
PIO_3/DCD
PCM_OUT
PCM_CLK
PCM_SYNC
PCM_IN
12
1
R54
0R
TP6
12
VCC_3V3
0R
R66
R100
12
USB_DCD
12
2
0R
1
Module_TXUSB_RX
PIO_3/DCD
B
12
VCC_3V3
C21
100n
4
2
6
JP3
NF
135
1K5
USB_MOD_D+USB_MOD_D-
R67
2
0R
R68
1
PIO_2/RIUSB_PIO_2/RI
8
7
6
5
4
3
2
1
VDD_CONN
PIO_3/DCD
PIO_10/DSR
PIO_2/RI
PCM_IN
PCM_CLK
PCM_SYNC
123456789
PCM_OUT
PIO_9/DTR
VCC_IO
A
PCM_CLK
PCM_IN
PCM_SYNC
PCM_OUT
10
HEADER 10 X 1
VCC_IO
R8
10K
12
A
R18
12
SW2
13
PIO_4
of
12Friday, October 10, 2008
1
Mini Dev Board - Comms
BTDMD-R-001-0101
C
Title
Size Document NumberRev
Date:Sheet
2
3
SW4
NF
13
24
10K
NF
24
4
PIO_6
5
www.lairdtech.com
42
Laird Technologies
Page 43
BTM410/411
Bluetooth® AT Data Module
MECHANICAL
DRAWINGS
B
SMA_Vert
1
TP11
TH_TEST_POINT
1
1
TP12
TH_TEST_POINT
12
VCC_3V3
VCC_3V3
HSMG-A100-HO1J1
R73
110R
D5
21
12
VCC_3V3
2
MCP1726-ADJE/MF
3
4
5
D3
Diode_S1A
12
VDD_CONN
1
TP8
TP7
VDD_USB
DD
R72
9K1
12
8
ADJ
Vout
GND
9
Vin_1
Vin_2
U6
123
1
R74
12
1
2
SW5
1
OFF
6
5
12
C23
100n
12
C22
2u2
R76
1K3
12
12
C25
567
Cdelay
/SHDN
GND PWRGD
4
2
1
R75 10K
0.1R 0805
12
3 position switch
3
12
C24
42
3
VCC_3V3
10N
C26
2u2
100n
IRF5810
Q1
R77
1K
12
2
R78
1
L5
BLM18PG221SN1D
C27
USB_PWREN
10K
12
C28
12
RESET_
100n
4
5
VCC
OUT
U7
NC1INGND
NC7SV17
123
12
C29
100n
10K
R79
1K
R80
12
12
SW6
BFS-1000
13
24
BAT54C
D6
VDD_USB
2
1
3
VCC_3V3
USB_MOD_D-
USB-
USB+
R93 NF 0R
12
12
12
R82 0R
R81 0R
NF
D+
D-
-
123
4
D-
D+
Vcc
JP5
GND
56
56
12
C31
12
C30
USB_MOD_D+
12
R94 NF 0R
VDD_CONN
USB B
CC
2
3
J6
4
5
12
1
R11
NF 9K1
R92
NF 9K1
12
R90
0R
R91
NF 9K1
12
12
50ohm Track50_ohm Track
ANT
USB_SLEEP
USB_PWREN
TP15
TP13
TP14
11
10
21
9
22
NC_3
29
NC_2
25
CBUS1
CBUS4
CBUS3
CBUS2
CBUS0
NC_1
23
VCCIO
VDD_3V3_IO
100n
1n
1
2
DC Power jack_2.1mm
CN1
3
1
U8
R83
12
VDD_USB
TXD
RXD
RI#
CTS#
RTS#
2
346
8
303132
4.7K
USB_TX
USB_RX
USB_CTS
USB_RTS
12
R85 N/F
USB_DSR
USB_PIO_2/RI
12
4K7
R88
B
M4
Mounting Hole
M3
Mounting Hole
M2
Mounting Hole
M1
Mounting Hole
VDD_3V3_IO
10K
R86
USB-
USB+
12
161514
FT232R
THPAD
33
NC_4
12
NC_5
USBDP
USBDM
DSR#
DCD#
OSCO
OSCI
RESET#
DTR#
7
282726
18
USB_DCD
USB_DTR
RESET_FTDI
5
NC_6
3V3OUT
13
AGND
24
GNDVCC
2019
GND
17
GND
TEST
R87
10K
12
12
R84
10K
A
FID2
Fiducial
FID1
Fiducial
A
01
of
22Friday, October 10, 2008
1
BTDMD-R-001-01
Mini_Dev_Power_Supplies
C
Title
Size Document NumberRev
Date:Sheet
2
3
4
5
www.lairdtech.com
43
Laird Technologies
Page 44
BTM410/411
Bluetooth® AT Data Module
ORDERING
INFORMATION
ORDERING INFORMATION
PART NUMBERDESCRIPTION
BTM410Bluetooth AT Data Module (external antenna)
BTM411Bluetooth AT Data Module (with integrated antenna) Q1-2009
DVK – BTM410Development board with BTM410 module soldered in place
DVK – BTM411Development board with BTM411 module soldered in place Q2-2009
GENERAL COMMENTS
This is a preliminary datasheet. Please check with Laird Technologies for the latest information before
commencing a design. If in doubt, ask.
Refer to the schematic BTDMD-R-001.pdf for the Development Kit on the following two pages for examples
of typical pin connections. A pdf of the schematic can be downloaded from the product web page.
The information contained in this manual and the accompanying software programs are copyrighted and all rights are reserved by Laird Technologies, Inc. Laird Technologies, Inc. reserves the right to make periodic
modifi cations of this product without obligation to notify any person or entity of such revision. Copying, duplicating, selling, or otherwise distributing any part of this product or accompanying documentation/software
without the prior consent of an authorized representative of Laird Technologies,Inc. is strictly prohibited.
All brands and product names in this publication are registered trademarks or trademarks of their respective holders.
This material is preliminary
Information furnished by Laird Technologies in this specifi cation is believed to be accurate. Devices sold by Laird Technologies are covered by the warranty and patent indemnifi cation provisions appearing in its Terms
of Sale only. Laird Technologies makes no warranty, express, statutory, and implied or by description, regarding the information set forth herein. Laird Technologies reserves the right to change specifi cations at any
time and without notice. Laird Technologies’ products are intended for use in normal commercial and industrial applications. Applications requiring unusual environmental requirements such as military, medical lifesupport or life-sustaining equipment are specifi cally not recommended without additional testing for such application.
Limited Warranty, Disclaimer, Limitation of Liability
For a period of one (1) year from the date of purchase by the OEM customer, Laird Technologies warrants the OEM transceiver against defects in materials and workmanship. Laird Technologies will not honor this
warranty (and this warranty will be automatically void) if there has been any (1) tampering, signs of tampering; 2) repair or attempt to repair by anyone other than an Laird Technologies authorized technician. This
warranty does not cover and Laird Technologies will not be liable for, any damage or failure caused by misuse, abuse, acts of God, accidents, electrical irregularity, or other causes beyond Laird Technologies’ control,
or claim by other than the original purchaser. In no event shall Laird Technologies be responsible or liable for any damages arising: From the use of product; From the loss of use, revenue or profi t of the product; or
As a result of any event, circumstance, action, or abuse beyond the control of Laird Technologies, whether such damages be direct, indirect, consequential, special or otherwise and whether such damages are incurred
by the person to whom this warranty extends or third party. If, after inspection, Laird Technologies’ determines that there is a defect, Laird Technologies will repair or replace the OEM transceiver at their discretion. If
the product is replaced, it may be a new or refurbished product.
45
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.