Home

EZURIO AT Command Set Latest Development Firmware Version 2.7.0

image

Contents

1. sesssessssssesesssseseeennee nennen nnnn nee nnn seen rnt nen nnn nenne 20 2 2 26 AT BTD Remove All Trusted Devices ssssseesssesesseseeeseeeee enne nennen nhnn nat nhtn nantes ses n air tinta santi ipae 2 2 27 AT BTF lt string gt Set Friendly Name a 2 2 28 AT BTF lt bd_addr gt Get Remote Friendly Name c cccesscceeescceeseeeeeeneeeeeeaeeeteaeeeeecaeeessaaeeeeaeeeesaaeeeenee 20 2 2 29 AT BTG lt bd_addr gt Enable Cautious Page Scanning ONLY 0 ccccecceeeeeeeeeeeeeeeeeeeeeeeeeeeseeeeseeeeeseeaeeess 20 2 2 30 AT BTG Enable Promiscuous Page Scanning ONLY j 2 2 31 AT BTGU Enable Promiscuous Page Scanning ONLY ssssssssseeneeeeeneeen nennen nennen 2 2 32 AT BTGY Enable Promiscuous Page Scanning ONLY sssssssseeneeeeeeene nennen nennen nnne 2 2 33 AT BTGUY Enable Promiscuous Page Scanning ONLY z 2 2 34 AT BTl lt devclass gt DU R 2 2 35 AT BTIVzdevclass5 lalo PI AA AA yaad 2 2 36 AT BTIN lt devclass gt Inquire 2 2 37 AT BTK lt string gt Set Passkey 2 2 38 AT BTM lt bd_addr gt Set Incoming Peer Address 2 2 39 AT BTM Delete Incoming Peer Address 2 2 40 AT BTM Read Incoming Peer Address ss 2 2 41 AT BTN lt string gt Set Friendly Name in Non volatile Memory F 2 2 42 AT BTN Read Friendly Name from Non vo
2. i AUDIO OFF AUDIONEAIL S sczesstenscsdsectavicssscacotgaccetasccrssenscusd dick int AA AY ERROR 27 PAIR n bd addrs maa saecu 29 S esu 30 INCOMING CONNECTIONS t na ideen 31 Dhiendd cEeel zu 32 PAIRING AND TRUSTED DEVICES aaa 33 Iiehdhiziziue lziic 35 FACTORY DEFAULT MODE i 36 MISCELLANEOUS FEATURES 37 RI dependent Startup MOd cccccciccisccscssetasecousestsdsvccesosesasssnasecesadanseasvacoascecsstdaadessteabseseasdeoss busta sages sbedvaesaaseeosednaaensesad 37 3 of 37 EZURIO 1 Introduction This document relates to the current version of firmware Version 2 7 0 The version that is used in current shipping version of the BISM1 Bluetooth Serial Module the RS 232 Universal Adapter and PCMCIA Card is 1 5 0 More recent firmware releases can be downloaded from the www blu2i com website This document describes the protocol used to control and configure the following Ezurio Bluetooth devices blu Module blu PCMCIA Adaptor blu RS 232 Adaptor blu Universal RS 232 Adaptor go blue Activator The protocol is similar to the industry standard Hayes AT prot
3. Hite AT Command Set Latest Development Firmware Version 2 7 0 The information contained in this document is subject to change without notice Ezurio makes no warranty of any kind with regard to this material including but not limited to the implied warranties of merchant ability and fitness for a particular purpose Ezurio shall not be liable for errors contained herein or for incidental or consequential damages in connection with the furnishing performance or use of this material Copyright 2005 Ezurio Limited All rights reserved This document contains information that is protected by copyright All rights reserved No part of this document may be photocopied reproduced or translated to another language without the prior written consent of Ezurio Other product or company names used in this publication are for identification purposes only and may be trademarks of their respective owners 1 of 37 EZURI Contents 1 INTRODUCTION er 4 2 AT COMMAND EJipg e 5 2 1 ASSUM PUI ONS EET 5 2 2 COMMANdS e 2 2 1 IN Enter Local Command Mode 3 1 eee rti tt aite tei die aed me ETUR EE ANA AN 2 2 2 I Enter Remote Command Mode 2 2 3 P TEE 2 2 4 ATA Answer e
4. e Confirm 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 blu devices need to be paired then it can be accomplished as follows e To device 1 send ATIA it will respond with the local Bluetooth address E g 123456789001 e To device 1 send AT BTP It will become discoverable and connectable e To device 2 send AT BTW123456789001 and it will respond with OK e Then on both devices you will see PIN asynchronous responses 33 of 37 TM EZURIO e To both modules send AT BTK 1234 e On success the serial module will send an unsolicited message in the form of PAIR O bd addr e The pairing link key is at this stage in volatile memory so send AT BTT to both e The two units now have pairing information which will survive a power cycle 34 of 37 EZURIO 7 Error Responses All error responses from the blu device will be in the form lt cr lf ERROR nn lt cr f gt where nn will be a number in the range OO to 99 J Register not recognised Value for register is out of range Incoming call NOT pending No call to connect to This error code has meaning for ATO only 06 06 08 LN Pairing is already in progress Not USED Not USED Not safe to write to Non volatile Store Ongoing Bluetooth Connection Link Key Cache is Empty Link Key Database is Full be S100 Pairing in progress Command cannot be acti
5. nnnn mmmm cr If2OK cr If7 For unrecognised values of n Response lt cr lf ERROR nn lt cr f gt 2 2 16 ATX lt string gt 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 lt string gt 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 lt cr lf gt OK lt cr f gt 16 of 37 EZURIO 2 2 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 Prior to version 2 7 0 allow for about 2 seconds for the device to start responding to AT commands again The best way of determining that the device is alive again is to keep sending it AT cr until it responds with an OK response Post v2 7 0 itis safe to communicate after receiving an OK The optional parameter n is only available for firmware 2 7 0 and newer and is a value in the range O to 8 ATZ and ATZO signify reset and emerge into the current mode see command ATI14 ATZ1 to ATZ8 instructs the module to reset and then emerge into the appropriate boot mode Note that
6. volatile memory for future use Specifying an empty string deletes the key from the non volatile memory 22 of 37 EZURIO The string length must be in the range O to 8 otherwise an error will be returned Response lt cr lf gt OK lt cr f gt 2 2 38 AT BTM lt bd_addr gt 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 specified If the peer address is not 000000000000 then it waits for a connection from the specified master otherwise will connect to anyone Response lt cr lf gt OK lt cr f gt 2 2 39 AT BTM Delete Incoming Peer Address This command is used to delete the peer address previously stored using AT BTR lt bd_addr gt Response lt cr lf OK lt cr f gt 2 2 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 lt cr lf gt 12346789012 lt cr If gt OK lt cr f gt If the location is empty the response is as follows Response lt cr lf gt 00000000000 lt cr If OK lt cr f gt 2 2 41 AT BTN lt string gt Set Friendly Name in Non volatile Memory This sets the default friendly name of this device as seen by other dev
7. 2 then it follows the state of DSR and if O then neither 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 amp W and will operate as expected after an ATZ or a power cycle If set to 1 then right LED follows DCD state otherwise GPIO4 is available as user i o This register will not necessarily be effective immediately after changing the value It must be saved to non volatile store using AT amp W and will operate as expected after an ATZ ora power cycle _ S gt BPM a SIE sent to the host after the time specified here S536 When 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 gt 2 then reading this register will always return O and writing 1 will result in ERROR 33 S537 This register is no longer available see 551 552 553 instead It only exists in firmware version 1 1 12 to 1 1 47 The functionality it controlled is now defined by registers 551 552 and 553 ka If 1 then when a successful pairing occurs it is automatically saved in the trusted device database if it has room to store it p 0 When set to 1 in idle mode S512 1 UART Rx characters are discarded if DSR is deasserted 5540 o 048 127 Sets the MTU in L2CAP configuration negotiations The value of O i
8. 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 lt cr lf gt OK lt cr f gt 2 2 59 AT BTW List Cached Trusted Device This command is used to list the cached trusted device Response lt cr lf gt 12346789012 lt cr If OK lt cr f gt 27 of 37 TM EZURIO If the cache is empty the response is as follows Response lt cr lf gt OK lt cr lf gt 2 2 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 lt cr lf gt OK lt cr f gt 28 of 37 EZURIO 3 Unsolicited Responses The AT Protocol is a command response type of protocol This means that the blu 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 3 1 RING This string is sent to the host when a remote device is initiating a serial port connection The fully qualified 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
9. SO must be S100 If a value is entered which violates this rule then ERROR 29 is sent in response S101 1101 UUID of default SPP based profile when not specified explicitly in the ATD command S102 1 1 3F Defines a set of bits masks for enabling profile servers Values can be ORed 1 is Serial Port Profile 2 is Headset S Reg 580 allows remote volume control bit to be adjusted 4 is DUN 8 is Audio Gateway 16 is Handsfree S Reg 581 allows supported feature field to be adjusted 32 is OBEX FTP It is recommended that due to memory resource issues not more than 2 profiles are activated at the same time S13 1 1 8 Boot Mode on cold boot See description of command ATZn S500 o 0 1 Authentication for outgoing connections Set to 1 to Enable Authentication s501 o 0 1 Encryption for outgoing connections Set to 1 to Enable Encryption S502 O 0 1 Authentication for incoming connections Set to 1 to Enable Authentication ssos fo fot Ennptien for incoming connections SeitolioEnableEneypion mm TC 5 T S504 Setting to 1 will force SO to 1 and Wil suppress messages arising from connections or pairing E g CONNECT NO CARRIER RING PAIR etc Suppressing connection based messaged allows the blu device to be configured in cable replacement mode S505 2 120 Minimum delay before abandoning connection attempt as a master Referenced by ATD In units of seconds See S Regis
10. f gt 2 cr If2OK cr If7 If the SDP database is corrupt or invalid then Response lt cr f gt 3 lt cr lf OK lt cr f gt If the device is not in idle mode then Response lt cr f gt 4 cr If2OK cr If7 and in this case the command AT BTX may put the device into the correct idle mode 2 2 58 AT BTWebd addr5 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 confirms 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 specified 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
11. 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 AO Invalid link key 255 Unknown Reason 112 Returns the last ERROR response number 113 The Sniff status is returned as follows 9 of 37 EZURIO Response lt cr f gt a b c d e lt cr lf gt OK lt cr If gt 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 114 Returns the current boot mode Only for firmware 1 18 0 and newer 115 Returns the maximum length of an AT command including the terminating carriage return only for firmware 1 6 10 and newer 142 State information is returned 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 significant digit equates to the value stored in S Register 512 or 555 Note when n 16 ATI9
12. of 37 EZURIO 2 2 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 lt devclass gt A 6 character Bluetooth device class consisting of ASCII characters O to 9 A to F and a to f n A positive integer value m An 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 lt string gt A string delimited by double quotes E g Hello World The character MUST be supplied as delimiters lt uuid gt A 4 character UUID number consisting of ASCII characters 0 to 9 A to F and a to f 2 2 1 AAA 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 specified in the S2 register so can be changed In addition the escape sequence guard time is specified by S Register 12 By default the guard time is set to 100 millis
13. operation and a value of 00 implies success otherwise the value corresponds to an error code 29 of 37 TM EZURIO 3 9 RX sstring 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 O to 31 and ASCII 128 to 255 then those characters are translated into a 3 character escape sequence starting with V For example and embedded lt cr gt lt lf gt sequence would be sent as the 6 character string OD OA If the data contains the character then it is sent as 22 If the data contains the character then it is sent as 5C 30 of 37 EZURIO 4 Incoming Connections The blu device can be configured using the AT BTP or AT BTG command so that it will scan for incoming connections from other Bluetooth devices It can also be configured 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 SO Register is 5 0 then confirmation 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 SO register i
14. operations Time is specified with 15 seconds intervals 0 1000 Sniff Attempt Time in units of milliseconds O means disable See section Power Consumption and Reset in the user guide for more details Sniff timeout Time in units of milliseconds 0 means disable See section Power Consumption and Reset in the user guide for more details 0 1000 Sniff Minimum Interval in units of milliseconds 0 means disable See section Power Consumption and Reset in the user guide for more details Sniff Maximum Interval in units of milliseconds See section Power Consumption and Reset in the user guide for more details If set to 1 RI Ring Indicate line is configured 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 defined by SRegs 566 to 569 inclusive 7 If S565 1 and RI is asserted then this is the mode the device will start up in 1 7 If 5565 1 and RI is asserted then this is the mode the device will assume after the post BRI start up timeout defined in SReg 554 instead of mode defined in SReg555 1 7 If 5565 1 and RI is deasserted then this is the mode the device will assume after the p post start up timeout defined in SReg 554 instead of mode defined in SReg555 S580 im 18 lot Remote Remote volume control feature for Headset profile when ATS102 enables headset profile control feature for Headset Remote volume contro
15. the host either accepts the connection using the ATA command or rejects it using the ATH command 3 2 PIN This response is sent to the host during a pairing negotiation The fully qualified 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 specified as 000000000000 and the paring will proceed as normal 3 3 AUDIO ON This response is sent to the host when a SCO channel has been established 3 4 AUDIO OFF This response is sent to the host when an existing SCO channel has been closed 3 5 AUDIO FAIL This response is sent to the host when a SCO channel setup fails 3 6 ERROR 27 This response is sent to the host on power up if the firmware is unlicensed 3 7 PAIR n lt bd_addr gt 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 lt bd_addr gt is the address of the peer device if available 3 8 PAIRO lt bd_addr gt 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
16. to 115200 In the event that a non standard baud rate is requested it is entirely possible that the nost i is not capable of generating such a baud rate and in that circumstance the blu device cannot be communicated with There is a procedure to recover from this situation and it is described in section titled Factory Default Mode The default is 9600 for the blu Module and 115200 for other blu devices For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S522 1 CTS RTS hardware handshaking enabled For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S523 1 1 2 Number of Stop bits For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S524 BEES OzNone 1 Odd 2 Even For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S525 See IN multiplier of 8 to baud rate internally This is set to O disabled by default for the Comment blu Module RS 232 Adaptor Universal RS 232 Adaptor and set to 1 enabled by default for the blu PC Card It is required in the PC Card because the UART chip on the PC Card is driven by a 14 7456MHZ crystal instead of 1 8432MHz This means that when a host asks for a baud rate in reality it gets a baud rate which is 8 times faster If S Regi
17. 0 i e format type 1 Bits 2 7 These 6 bits define the Minor Device Class and the value is interpreted differently based on the Major Device class stored in the next 5 bits Bits 8 12 These 5 bits define the Major Device Class as per Table 1 3 in Bluetooth Assigned Numbers Bits 13 23 This is an 11 bit field used as a mask to define the Major Service Class as per Table 1 2 in Bluetooth Assigned Number blu devices do not map to any predefined Major Service Class or Major Device Class and so the default devclass as shipped is 001F00 which means no Major Service Class and Unclassified Major Device class Other examples of device class codes are follows Code Name Major Service Major Device Minor Device Hexadecimal 001F00 Unclassified None Unclassified n a 200404 Headset Audio Audio Headset Response lt cr lf gt OK lt cr f gt Or for an invalid lt devclass gt value usually a value which is not 6 hexadecimal characters long 19 of 37 EZURIO Response lt cr lf ERROR 08 lt cr f gt 2 2 24 AT BTC Read Device Class Code This command is used to read the current device class code Response lt cr f gt 123456 lt cr lf OK lt cr f gt 2 2 25 AT BTD lt bd_addr gt Remove Trusted Device This command is used to remove the specified 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 l
18. 7 For a particular firmware 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 firmware build S519 500 100 6000 When S50750 and in a connection DSR can be used to change from data to command state by deasserting the DSR line for less than the time specified in this register This value is rounded down to the nearest 100ms S520 See 1200 115200 Change baud rate The effect is immediate and in fact the OK will be sent at the new baud Comment rate Only one of the following baud rates are accepted 1200 2400 4800 9600 19200 28800 38400 57600 115200 If S register 525 1 then the maximum baud rate is limited to 115200 The default is 9600 for the blu Module and 115200 for other blu devices For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S521 See 1200 921600 Change baud rate The effect is immediate and in fact the OK will be sent at the new baud Comment rate Due to the integer arithmetic involved the actual baud rate is different To inspect the actual baud rate do ATS521 12 of 37 EZURIO If the actual baud rate is more than 296 offset from the desired then an ERROR will be returned and the old baud rate will prevail If S Register 525 1 then the max baud rate is limited
19. Name gt The ServiceName parameter is a string delimited by If lt U gt is not specified then authentication is as per register 500 otherwise the connection will be authenticated If Y is not specified then encryption is as per register 501 otherwise the connection will have encryption enabled The timeout is specified by S register 505 Response lt cr lf CONNECT 123456789012 cr If7 Or ccr IP NO CARRIERz cr If7 2 2 7 ATD lt U gt lt Y gt L Remake Connection Make a connection with the same device and service as that specified in the most recent ATD command The UY modifiers are optional An error will be returned if the L modifier is specified AND a Bluetooth address If both L and R modifiers are specified then an error will be returned Response sxcr IfFCONNECT 123456789012 AE lt cr f gt Or acer If NO CARRIERz cr If 2 2 8 ATD lt U gt lt Y gt R Make Connection to peer specified in AT BTR Make a connection with the device address specified in the most recent AT BTR command The service is as specified in S Register 101 The UY modifiers are optional An error will be returned if the R modifier is specified AND a Bluetooth address If both R and L modifiers are specified then an error will be returned Response lt cr lf CONNECT 123456789012 AE lt cr f gt Or acer If NO CARRIERczcr If5 2 2 9 ATEn Enable Disable Echo This command enables or disables the echo of charact
20. RIO Please refer to the Power Consumption chapter in the relevant blu device user guide for more detailed information of power usage The new values are NOT updated in non volatile memory until the AT amp W command is sent to the blu device Response lt cr lf gt OK lt cr f gt Or Response lt cr lf ERROR nn lt cr f gt 2 2 19 AT amp F Clear Non volatile Memory The AT amp F variant of the command installs values in S registers as per command AT amp 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 lt cr lf gt OK lt cr f gt Or Response lt cr lf ERROR nn lt cr f gt 2 2 20 AT amp 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 lt cr lf gt OK lt cr f gt Or Response lt cr lf ERROR nn lt cr f gt 2 2 21 AT amp 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 lt cr lf gt OK lt cr f gt Or Response lt cr lf ERROR nn lt cr f gt 2 2 22 AT BTAn Control Audio Channel Once a Bluetooth connection i
21. S Reg 103 specifies the boot mode from cold For firmware prior to v2 7 0 Response lt cr lf gt OK lt cr If gt note OK is returned before the RESET For firmware v2 7 0 and newer Response lt cr lf gt OK lt cr f gt and OK is returned after the RESET 2 2 18 AT amp 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 specified then a default value of O is assumed where the baud rate is NOT changed amp FO Medium power consumption UART baud rate unchanged Left LED off Default Right LED DCD amp F1 Minimum power consumption UART baud rate set to 9600 Left and Right LED off amp F2 Minimum power consumption UART baud rate set to 38400 Left and Right LED off amp F3 Minimum power consumption UART baud rate set to 115200 Left and Right LED off amp F4 Medium power consumption UART baud rate set to 115200 Left LED off Right LED DCD amp F5 Maximum power consumption UART baud rate set to 115200 Left LED DSR Right LED DCD amp F6 Maximum power consumption UART baud rate set to 115200 Left LED DSR Right LED DCD Explicitly set higher baud rates using ATS521 n 17 of 37 EZU
22. T BTPU123456789012 AT BTPY123456789012 AT BTPUY123456789012 AT BTPYU123456789012 Response lt cr lf gt OK lt cr f gt 2 2 45 AT BTP Enable Promiscuous Page Inquiry Scanning 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 Response lt cr lf gt OK lt cr f gt 2 2 46 AT BTPU Enable Promiscuous Page Inquiry Scanning Enable page scanning and wait for a connection from any device Inquiry scanning is also enabled Authentication is enabled and encryption is disabled Response lt cr lf OK lt cr f gt 2 2 47 AT BTPY Enable Promiscuous Page Inquiry Scanning Enable page scanning and wait for a connection from any device Inquiry scanning is also enabled Authentication is disabled and encryption is enabled Response lt cr lf gt OK lt cr f gt 2 2 48 AT BTPUY Enable Promiscuous Page Inquiry Scanning 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 significant 24 of 37 EZURIO Response lt cr lf gt OK lt cr f gt 2 2 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 lt cr lf gt OK lt cr f gt 2 2 50 AT BTR lt bd_addr gt Set O
23. and and terminates the autoconnect cycle if it sees it and confirms to the host of that fact by sending an OK response Response lt cr lf gt OK lt cr f gt 2 2 51 AT BTR Delete Outgoing Peer Address This command is used to delete the peer address previously stored using AT BTR lt bd_addr gt Response lt cr lf gt OK lt cr f gt 2 2 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 blu device in pure cable replacement mode Response lt cr lf gt 12346789012 lt cr If gt OK lt cr f gt If the location is empty the response is as follows Response lt cr lf gt 00000000000 25 of 37 EZURIO cr If2OK cr If 2 2 53 AT BTS lt string gt 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 lt cr lf gt OK lt cr f gt If the service name cannot be set for any reason then an error response ERROR 11 is returned 2 2 54 AT BTS Read Service Name from Non volatile Memory Reads the default service name from non volatile memory Response lt cr lf gt My ServiceName c cr If7 cr If2OK cr If 2 2 55 AT BTT Add Trusted Device This comm
24. and 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 lt cr lf gt OK lt cr f gt Or Response lt cr lf gt ERROR lt cr f gt 2 2 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 lt cr lf gt 12346789012 lt cr lf gt 12345678913 lt cr lf gt 12345678914 lt cr lf OK lt cr f gt 2 2 57 AT BTV lt U gt lt Y gt lt bd_addr gt lt uuid gt SDP Query for Service This command is used to interrogate the SDP database of the peer device lt bd_addr gt for the service lt uuid gt It results in an ACL connection and then a SDP transaction If the lt uuid gt service is present then Response lt cr f gt 0 lt cr lf OK lt cr IB 26 of 37 EZURIO If the uuid service is not present then Response lt cr f gt 1 cr If2OK cr If7 If the device bd addr cannot be reached or is in non connectable mode then Response lt cr
25. ate 2 2 5 ATD lt U gt lt Y gt lt bd_addr gt lt uuid gt Make Outgoing Connection 2 2 6 ATD lt U gt lt Y gt lt bd_addr gt lt ServiceName gt Make Connection paaa NABANG annie eG iain 22 7 ATD lt U gt lt Y gt L Remake Connection 5 2 BABA N ANAKAN GG NADATNAN KAKANAN einen 2 2 8 ATD lt U gt lt Y gt R Make Connection to peer specified in AT BTR 2 2 9 ATEn Enable Disable Echo ssssseene 2 2 10 ATH Drop Connection 2 2 11 ATIn Information 2 2 12 ATO Enter Data Mode letter o 2 2 13 ATSn m Set S Register 2 2 14 ATSn Read S Register Value 2 2 15 ATSn Read S Register Valid Range i 2 2 16 ATX lt string gt Send Data in Local Command and Connected Mode 16 2 2 17 ATZ lt n gt Hardware Reset and emerge into mode N AT 2 2 18 AT amp Fn Set S Register Defaults a17 2 2 19 AT amp F Clear Non volatile Memory 18 2 2 20 AT amp F Clear Non volatile Memory 18 2 2 21 AT amp W Write S Registers to Non volatile Memory 18 2 2 22 AT BTAn Control Audio Channel 2s ccsssccsesacsoressoreensncensanseasnsassnsseccesnscessnaucsedaeacsenasanenaneceeatetaersassacnse 18 2 2 23 AT BTC lt devclass gt Set Device Class Code aa AA NAAN NANA NANG 19 2 2 24 AT BTC Read Device Class Code 2 2 25 AT BTD lt bd_addr gt Remove Trusted Device
26. be ignored Navigation between these states is done using the AT commands which are described in detail in subsequent sections 4 of 37 EZURIO 2 AT Command Set 2 1 Assumptions The CSR Cambridge Silicon Radio BC2 chipset in blu 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 modification with a blu device Therefore the following assumptions are made 1 All commands will be terminated by the carriage return character OxOD which is represented by the string cr in descriptions below and cannot be changed 2 All responses from the blu device will have carriage return and linefeed characters preceding and appending the response These dual character sequences have the values OxOD and OxOA respectively and shall be represented by the string cr If and cannot be changed 3 All Bluetooth addresses shall be represented by a fixed 12 digit hexadecimal string case insensitive 4 All Bluetooth Device Class codes shall be represented by a fixed 6 digit hexadecimal string case insensitive 5 All new Bluetooth specific commands shall be identified by the string BTx where x is generally a mnemonic of the intended functionality 5
27. d The counter wraps to O when it overflows beyond 65535 15 of 37 o S632 n a 0 65535 When GPIO2 is configured as an input low to high transitions are counted There is no software debouncing External RC circuit may be required The counter wraps to O when it overflows beyond 65535 S641 n a 0 65535 As per 631 but the action of reading the value will reset the count to O S642 0 65535 As per 632 but the action of reading the value will reset the count to 0 S701 0 65535 Read Write to Analogue Line O when reading value is returned in decimal S702 0 65535 Read Write to Analogue Line 1 when reading value is returned in decimal S711 0000 FFFF Read Write to Analogue Line 0 when reading value is returned in hexadecimal S712 0000 FFFF Read Write to Analogue Line 1 when reading value is returned in hexadecimal S721 Set direction of Analogue Line O o Oo X S722 o o Set direction of Analogue Line 1 S1001 to 0 2 32 10 General Purpose 32 bit Registers for use by host These are stored in non volatile S1010 memory 2 2 14 ATSn Read S Register Value This will return the current value of register n For recognised values of n Response lt cr lf As Appropriateccr If2OK cr If7 For unrecognised values of n Response xcr IFFERROR nn lt cr f gt 2 2 15 ATSn Read S Register Valid Range This will return the valid range of values for register n For recognised values of n Response cr f2Sn
28. econds Please refer to Section 5 Dropping Connections for more related information In modems this escape sequence is usually and is specified to avoid confusion when the module is providing access to a modem Response lt cr lf gt OK lt cr f gt 2 2 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 specified 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 For this command to be effective S Register 536 must be set to 1 Response lt cr lf gt OK lt cr f gt 2 2 3 AT Response lt cr lf gt OK lt cr f gt 6 of 37 EZURIO 2 2 4 ATA Answer Call Accept an incoming connection which is indicated by the unsolicited string cr If2RING 123456789012 lt cr f gt every second 123456789012 is the Bluetooth address of the connecting device Response lt cr lf CONNECT 123456789012 cr If7 2 2 5 ATD lt U gt lt Y gt lt bd_addr gt lt uuid gt Make Outgoing Connection Make a connection to device with Bluetooth address bd addr and profile lt uuid gt The lt uuid gt is an optional parameter which specifies the UUID of the profile server to attach to and if not supplied then the default UUID f
29. ers to the screen A valid parameter value will be written to S Register 506 EO Disable echo E1 Enable echo All other values of n will generate an error 8 of 37 EZURIO Response lt cr lf gt OK lt cr f gt Or Response lt cr lf ERROR nn lt cr f gt 2 2 10 ATH Drop Connection Drop an existing connection or reject an incoming connection indicated by unsolicited RING messages Response lt cr lf NO CARRIER lt cr f gt 2 2 11 ATin Information This will return information about the blu device 10 Reports the product name variant I1 The CSR firmware build number is returned I2 The Ezurio firmware build number is returned For internal use only I3 The Ezurio firmware revision is returned l4 A 12 digit hexadecimal number corresponding to the Bluetooth address of the blu device is returned 15 The manufacturer of this device is returned l6 The maximum size of trusted device database is returned I7 The manufacturer of the Bluetooth chipset is returned I8 The chipset format is returned I9 Returns O if not in a connect state and 1 if in a connect state 111 Returns the 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 profile lt uuid gt requested
30. example AT BTGU123456789012 AT BTGY123456789012 20 of 37 EZURIO AT BTGUY123456789012 AT BTGYU123456789012 Response lt cr lf gt OK lt cr f gt 2 2 30 AT BTG Enable Promiscuous Page Scanning ONLY 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 Response lt cr lf gt OK lt cr f gt 2 2 31 AT BTGU Enable Promiscuous Page Scanning ONLY Enable page scanning only and wait for a connection from any device Inquiry scans are disabled Authentication is enabled and encryption is disabled Response lt cr lf gt OK lt cr f gt 2 2 32 AT BTGY Enable Promiscuous Page Scanning ONLY Enable page scanning only and wait for a connection from any device Inquiry scans disabled Authentication is disabled and encryption is enabled Response lt cr lf gt OK lt cr f gt 2 2 33 AT BTGUY Enable Promiscuous Page Scanning ONLY 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 significant Response lt cr lf gt OK lt cr f gt 2 2 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 specified by S register 517 and max is specified by S register 518 The lt devc
31. ices 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 lt cr lf gt OK lt cr f gt 2 2 42 AT BIN Read Friendly Name from Non volatile Memory Read the default friendly name from non volatile memory Response lt cr f gt My FriendlyName lt cr lf gt cr If2OK cr If7 23 of 37 EZURIO 2 2 43 AT BTO lt devclass gt 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 specified in AT BTN is exposed via the SDP registry The lt devclass gt value specifies an optional fixed length hexadecimal device class code If it is not specified then the device class code is taken from S Register 515 For this command to be effective S Register 512 must be set to O Response lt cr lf gt OK lt cr f gt 2 2 44 AT BTP lt bd_addr gt Enable Cautious Page Inquiry Scanning Enable page scanning and wait for a connection from device with Bluetooth address bd addrs If the specified 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 specified For example A
32. imal number When S register values are changed the changes are not stored in non volatile memory UNTIL the AT amp W command is used Note that AT amp W does not affect S registers 520 to 525 1000 to 1010 as they are updated in non volatile memory when the command is received Register Default Range Comment TT AER 1 15 Number of RING indication before automatically answering an incoming connection A value of O 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 5 O resets S Register 504 to O and x0 forces 504 to 1 If SO s5 O and S100 0 then SO 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 al p Ox7E Escape 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 iud 5000 Escape sequence guard time in milliseconds with a granularity of 20ms New values are rounded down to the nearest 20ms multiple p Number of RING indications before an auto disconnection is initiated A value of 0 disables this feature If SO O and S100 0 then
33. ing 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 To reiterate the escape sequence is as follows Guard time gt lt Esc Chr gt lt Guard time gt lt Esc Chr gt lt Guard time gt lt Esc Chr gt lt Guard time gt This means that even when a file transfer is occurring and it happens to be full of lt Esc Chr gt characters then it is not going to drop into command mode because when transferring a file it is going to happen as fast as possible and so the inter character gap is going to be significantly shorter than the lt Guard time gt The lt Esc Chr gt character can be changed via the S2 register and the lt Guard time gt interval can be specified via the S12 register 32 of 37 EZURIO 6 Pairing and Trusted Devices When authentication is enabled via S register 500 or when using the u modifier 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 Reg
34. ister 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 e 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 e On the T68i start pairing procedure by selecting Phone accepts in the relevant Bluetooth menu e Send command AT BTW123456789012 to the serial module e Confirm that you get an OK response and then PIN responses on a2 second interval e Enter a pin code on the phone Say it is 1234 e Then enter the command AT BTK 1234 e The phone will confirm success and likewise the serial module will respond with OK e On success the serial module will send an unsolicited message in the form of PAIR O bd addr5 e Send AT BTT to the serial module so that the pairing information is stored in the non volatile database
35. ity 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 traffic 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 traffic 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 traffic 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 amp 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 specifies the time in seconds that the device will remain in the specified mode after power up On timeout the device will fall back to the mode specified in S Register 555 512 continued In some firmware 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 configured as an input For this feature t
36. l feature for Headset profile when ATS102 enables headset profile ATS102 enables headset profile handsfree profile ual 0 65535 Number of times this module has gone through a reset cycle This feature is enabled by S Reg 601 Writing any value to this register to initialise it to a certain value S601 5 8 If this is 1 then on reset S Reg 600 value will be incremented S610 0 31 Set 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 S611 Set to 1 to invert the logic of GPIO outputs For example ATS621 1 will set the output pin to low and vice versa Read Write to all 8 Digital lines in one atomic step The value is returned as a 4 digit c hexadecimal value with trailing Os Se21 ma 0 1 ReadWitetoGPIO S622 na 0 1 jReadWrtetoGPIO2 Se23 ma 0 1 ReadWritetoGPIOS S624 nma 0 1 ReadiWritetoGPIO4 S625 nma 0 1 jReadWrtetoGPIOS s626 na O X f Read WrietoGPIO6 Not Available soOalwaysretumed o S627 nma OC Read Write to GPIO7 Not Available so O always returned O s628 na o Read Write to GPIO8 Not Available so Oalwaysretumed S631 n a 0 65535 When GPIO1 is configured as an input low to high transitions are counted There is no software debouncing External RC circuit may be require
37. lass gt is an optional parameter where the value specifies either a 6 digit device class code or a 2 digit major device class If it is not specified then the value is taken from S register 516 When lt devclass gt is 6 hexadecimal characters long it specifies an AND mask which is used to filter inquiry responses When lt devclass gt is 2 hexadecimal characters long it forces the inquiry to filter responses to devices that match their major device class code to this value which can only be in the range 00 to 1F Response lt cr lf gt 12346789012 cr If212345678914 cr If2OK cr If7 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 21 of 37 EZURIO Response lt cr lf ERROR 14 lt cr f gt 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 filled 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
38. latile Memory 23 2 2 43 AT BTO lt devclass gt Open and make Unit Detectable 24 2 2 44 AT BTP lt bd_addr gt Enable Cautious Page Inquiry Scanning 24 2 2 45 AT BTP Enable Promiscuous Page Inquiry Scanning 24 2 2 46 AT BTPU Enable Promiscuous Page Inquiry Scanning 24 2 2 47 AT BTPY Enable Promiscuous Page Inquiry Scanning 24 2 2 48 AT BTPUY Enable Promiscuous Page Inquiry Scanning 24 2 2 49 AT BTQ Enable Inquiry Scans ONLY m29 2 2 50 AT BTR lt bd_addr gt Set Outgoing Peer Address ener nennen enne 25 2 2 51 AT BTR Delete Outgoing Peer Address 2 7 0002 m0muwanaaaananaaawnanasanaaaaaunana nananana nanaanaaananaaannasannanaarnnannn 2 2 52 AT BTR Read Outgoing Peer Address 2 2 2 53 AT BTS lt string gt Set Service Name nennen nennen ennt t nnn enn rn rsen tres enne enne 2 2 54 AT BTS Read Service Name from Non volatile Memory 26 2 2 55 AT BTT Add Trusted Device 2 2 56 AT BTT List Trusted DeVi6 ean ERE 26 2 2 57 AT BTV lt U gt lt Y gt lt bd_addr gt lt uuid gt SDP Query for Service ssssssssssseeeee eene 26 2 2 58 AT BTW lt bd_addr gt Initiate Pairing 2 2 59 AT BTW List Cached Trusted Device 2 iieri oit APAN sasari ie Aaa 27 2 2 60 AT BTX Disable Page Inquiry Scanhtillig u iain iicet EBA KANA ana 28 20f 37 oo ZUR 3 9 1 I jest PIN AUDIO ON
39. o 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 defined by S Reg 566 and if deasserted then S Reg 567 513 Pairing Authentication 1 Enable S514 10 1 60 Pairing Timeout in seconds This includes the time a host takes to supply the PIN number when PIN messages are indicated Li 0x001F00 0 OxFFFFFF Default Device Class Code to be used with AT BTO when it is not explicitly specified 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 ul 0x000000 E Ox2FFFFF Default Device Class filter to be used with AT BTI when it is not explicitly specified When queried the value is always printed as a hex number The seventh most significant digit can be 0 1 or 2 and is used to specify the type of device class filter When 0 it specifies no filtering When 1 it specifies an AND mask and all 24 bits are relevant When 2 it specifies a filter to look for devices with matching major device class which occupies a 5 bit field from bits 8 to 12 inclusive assuming numbering starts at bit O All other 19 bits MUST be set to 0 517 Inquiry Length in units of seconds This parameter is referenced by the AT BTI command S518 0 255 Maximum number of responses from an inquiry request This parameter is reference by the AT BTI command If this number is set too high then AT BTI will return ERROR 2
40. ocol used in telephony modems due to the fact that both types of devices are connection oriented Appropriate AT commands have been provided to make the blu device perform the two core actions of a Bluetooth device which is make break connections and Inquiry Many other AT commands are also provided to perform ancillary functions such as pairing trusted devices database management and S Register maintenance Just like telephony modems the blu device powers up into an unconnected state and will only respond via the serial interface In this state the blu 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 The device has a serial interface which can be configured for baud rates from 1200 up to 921600 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 Unconnected RF Connected Local Command Mode OK V ok Remote Command Mode ILLEGAL OK cl ILLEGAL OK JJ The combinations Data and RF Unconnected Mode and Remote Command and RF Unconnected Mode do not make sense and will
41. oned try again later Invalid Sniff parameter specified E g new Attempt value greater than MinInterval Solution is to first increase MinInterval and re enter the Attempt value Get Remote Friendly name Failed 35 of 37 EZURIO 8 Factory Default Mode blu 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 blu device is more versatile that 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 096 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 the blu 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 lt BISM gt lt cr gt where cr is the carriage return character within that 750ms period then the module will remain at 9600 N 8 1 and will also configure itself using factory default S Register values 36 of 37 EZURIO 9 Miscellaneous Features This chapter describes various features which cannot be categorized appropriately 9 1 RI dependent Start up Mode The UART RI line can be c
42. onfigured 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 37 of 37
43. rom S Register 101 is used As this is a blu device which utilises the RFCOMM layer as described in the Bluetooth specification it necessarily implies that only profiles based on RFCOMM can be connected to If lt U gt is not specified then authentication is as per register 500 otherwise the connection will be authenticated If Y is not specified then encryption is as per register 501 otherwise the connection will have encryption enabled The timeout is specified by S register 505 Response lt cr lf CONNECT 123456789012 lt cr If gt Or cr If 5NO CARRIER lt cr f5 Due to a known issue in the Bluetooth RFCOMM stack it is not possible to make more than 65525 outgoing connections Therefore if that number is exceeded then the connection attempt will fail with the following response Response lt cr lf gt CALL LIMIT Or cr If 2NO CARRIER lt cr f gt In that case issuing an ATZ to reset the device will reset the count to O and more connections are possible The following RFCOMM based UUIDs are defined in the Bluetooth Specification Profile Name UUID 1101 LAN Access Using PPP 1102 7 of 37 EZURIO Audio Gateway 1112 WAP 1113 WAP CLIENT 1114 2 2 6 ATD lt U gt lt Y gt lt bd_addr gt lt ServiceName gt Make Connection Make a connection to device with Bluetooth address bd addr and profile specified via S Reg 101 AND which has a service name starting with the string lt Service
44. s 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 specified 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 31 of 37 EZURIO 5 Dropping Connections In a conventional telephony modem a call is normally terminated by first 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 This device will provide a couple of ways of dropping a connection One method will be 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 will involve 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 configurable 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 us
45. s a special value 13 of 37 EZURIO psp which is taken to mean that the current value should remain S541 p 6 This sets the power level in dBm when inquiring or paging Reading this register returns ME value stored in non volatile memory E 50 6 As 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 kai If 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 S544 Configure the UART for either low latency or maximum throughput A setting of 1 gives maximum throughput S551 0x3211 OxFFFF This register specifies 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 specifies the source for RTC 4 7 specifies the source for RTR 8 11 specifies the source for DV i e DCD 12 15 specifies the source for IC i e RI Each nibble can
46. s active and assuming the peer device is an EZURIO blu 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 BTAO Switch off the channel BTA1 Switch on the channel On receipt of the command the following response immediately follows Response lt cr lf gt OK lt cr f gt 18 of 37 EZURIO 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 xcr IFFAUDIO ON lt cr f gt Or if the SCO failed to be established Response lt cr lf gt AUDIO FAIL lt cr f gt On the peer device the host will asynchronously get Response lt cr lf AUDIO ON lt cr f gt 2 2 23 AT BTC lt devclass gt 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 lt devclass gt is a 6 digit hexadecimal number derived as per section 1 2 The Class of Device Service Field of the Bluetooth specification Bluetooth Assigned Numbers The 24 bits are made of 4 fields briefly described as follows bit O corresponds to the least significant bit Bits 0 1 Format Type This field currently only has a value of 0
47. ster 521 115200 then this register cannot be set to 1 For the Go blue Activator variant of the module this register is read only See S Register 526 for further information S526 This register specifies a 2 bit mask used to qualify how S Registers 520 to 525 are actioned When bit O 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 is rounded down to the nearest 100ms See S Register 505 and 543 also Specifies 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 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 If S Reg 536 is not 1 then this register cannot be set to 2 and an ERROR will be returned If non zero then on every connection and SCO channel audio will be initiated If value 1 then HV1 if 2 then HV2 and finally if 3 then HV3 If set to 1 then left LED follows RI state if set to
48. t cr lf gt OK lt cr f gt 2 2 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 confirmation 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 lt bd_addr gt for each item in the trusted device database Response lt cr lf gt OK lt cr f gt 2 2 27 AT BTF lt string gt Set Friendly Name This sets the friendly name of this device as seen by other devices Response lt cr lf gt OK lt cr f gt 2 2 28 AT BTF lt bd_addr gt Get Remote Friendly Name This command gets the remote friendly name of the peer specified Response lt cr lf gt lt bd_addr gt Friendly Name cr If OK cr If 2 2 29 AT BTG lt bd_addr gt Enable Cautious Page Scanning ONLY Enable page scanning and wait for a connection from device with Bluetooth address bd addr If the specified 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 specified For
49. table 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 1 1 7 In some firmware 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 configured 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 defined by S Reg 568 and if deasserted then S Reg 569 0 1 When 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 0 3 This specifies a mask When Bit O 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 15 15 120 Disconnect timeout in seconds This timer specifies how long to wait for confirmation from the peer device and or the underlying stack that the connection has been successfully torn down There can be instances where a confirmation 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
50. take the following value Always set to 0 Always set to 1 If DCD pin 8 on module connector is output then always 1 If DCD is input then 1 if DCD is asserted otherwise 0 If RI pin 6 is output then always O If RI is input then 1 if RI is asserted otherwise O If DSR pin 10 is asserted then 1 otherwise 0 In the event that a nibble specifies DSR as the source of its state be aware that if S Register 507 is anything other than O 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 S552 0x0122 OxOFFF This register specifies in each 4 bit nibble how the DTR DCD RI output pins are controlled when in a Bluetooth connection Nibble 0 3 specifies the source for DTR 4 7 specifies the source for DCD 8 11 specifies the source for RI Each nibble can take the following value Do NOT touch the I O Always deassert Always assert If RTC bit in CONTROL IND is 1 then assert otherwise deassert If RTR bit in CONTROL IND is 1 then assert otherwise deassert If DV bitin CONTROL IND is 1 then assert otherwise deassert If IC bit in CONTROL IND is 1 then assert otherwise deassert If this register is changed
51. ters 530 and 543 also Please note that as disconnection time can vary this register only guarantees the minimum delay Note that for invalid addresses specified in the ATD command the NO CARRIER response will be immediate See S register 560 for specifying disconnect max timeout S507 0 2 When set to O 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 Finally when set to 2 a connection can only dropped using a deassertion of DSR Mode 2 provides for the highest data transfer rate 11 of 37 EZURIO 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 O 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 Page Scan Interval in milliseconds Minimum is 11 25ms so 10 11ms will give 11 25ms Page Scan Window in milliseconds Minimum is 11 25ms so 10 11ms will give 11 25ms Inquiry Scan Interval in milliseconds Minimum is 11 25ms so 10 11ms will give 11 25ms Inquiry Scan Window in milliseconds Minimum is 11 25ms so 10 11ms will give 11 25ms S512 1 0 7 Specify power up state When set to 0 AT BTO is required to open the device for Bluetooth activ
52. the responding device is active all AT BTI commands will always return it Response cr If ERROR 27 lt cr lf gt 2 2 35 AT BTIV lt devclass gt 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 f212346789012 123456 cr If212345678914 123456 lt cr If OK lt cr f gt 2 2 36 AT BTIN lt devclass gt 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 RESPONSE note in the description for AT BTI devclass The friendly name strings are in UTF 8 format as per the Bluetooth specification Response lt cr lf gt 12346789012 123456 EZURIO AT DONGLE 1 cr If212345678914 123456 EZURIO blu2i RS232 lt cr lf gt OK lt cr f gt Note Many releases of firmware will return the product name as TDK e g Response lt cr lf gt 12346789012 123456 TDK AT DONGLE 1 cr If212345678914 123456 TDK blu2i RS232 cr If2OK cr If We strongly recommend that any software implementation that uses this command should check for both TDK and EZURIO to ensure backwards and forwards compatibility 2 2 37 AT BTK lt string gt 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
53. utgoing 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 specified via S register 505 attempt to connect to the peer address specified 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 sendsO 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 first 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 first 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 amp BISM amp lt cr gt is sent where cr is the carriage return character There is special code which looks out for this magic comm
54. while in command and connected mode then on going back online using the ATO command the modem output lines will get refreshed S553 0x0201 OxOFFF This register specifies in each 4 bit nibble how the DTR DCD RI output pins are controlled when NOT in a Bluetooth connection Nibble 0 3 specifies the source for DTR 4 7 specifies the source for DCD 8 11 specifies 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 O then the relevant pin is an input Each nibble can take the following value O Always deassert 1 Always assert 2 Assert if RING is being sent to the host The default for the Universal RS 232 Adaptor is 0200 S554 o J 0 900 If S Register 5122 2 and lt 7 then this register specifies a time in seconds for which the 14 of 37 EZURIO 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 5512 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 effects of a change If S Register 554 is nonzero then after the post reset window expires the mode will revert to the mode specified in this register This allows for example the device to be discoverable and connec
55. will return 1 1101 Returns the 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 which is quite a large band Therefore RSSI is not a really useful indicator Use ATI111 instead which returns the bit error rate 1111 Returns LinkQual which in the CSR chipset is defined as BER bit error rate The returns value is the number of bits in error out of 1 million Hence a value of O is best larger value is worse As the value approaches 1000 BER 0 196 it is an indication that the link is very bad a lots of Bluetooth packets are being lost For recognised values of n All other values of n will generate an error Response lt cr lf As Appropriate lt cr lf OK lt cr f gt or Response lt cr lf ERROR nn lt cr f gt 2 2 12 ATO Enter Data Mode letter o Return to data mode Assume in data mode after OK is received Responds with an error if there is no Bluetooth connection Response lt cr lf gt CONNECT 123456789012 lt cr f gt or Response lt cr lf ERROR nn lt cr f gt 10 of 37 EZURIO 2 2 13 ATSnzm Set S Register There is 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 specified via a leading character For example 1234 is a hexadec

Download Pdf Manuals

image

Related Search

EZURIO AT Command Set Latest Development Firmware Version 2.7.0

Related Contents

                    

Copyright © All rights reserved.
DMCA: DMCA_mwitty#outlook.com.