User Manual
Table Of Contents
- Appendix B: Command Generator Examples
- B.1 Device Discovery and Remote Name Request
- B.2 Establish Baseband Connection
- B.3 Baseband Disconnection
- B.4 Create Audio Connection
- B.5 L2CAP Connection
- B.6 L2CAP Channel Disconnect
- B.7 SDP Profile Service Search
- B.8 SDP Reset Database and Add Profile Service Record
- B.9 RFCOMM Client Channel Establishment
- B.10 RFCOMM Client Channel Disconnection
- B.11 RFCOMM Register Server Channel
- B.12 Establish TCS Connection
- B.13 OBEX Server Init
- B.14 OBEX Client Connection and Client Get & Put
- Appendix C: Merlin’s Wand Scripting Commands
- C.1 Bluetooth Addresses
- C.2 Basic Commands
- C.3 Pipe Commands
- C.4 HCI Commands
- HCIAcceptConnectionRequest()
- HCIAddSCOConnection()
- HCIAuthenticationRequested()
- HCICatcBerTest()
- HCICatcChangeHeadsetGain()
- HCICatcEnterTestMode()
- HCICatcReadHeadsetGain()
- HCICatcReadRevisionInformation()
- HCICatcSelfTest()
- HCICatcTestControl()
- HCICatcWriteCountryCode()
- HCIChangeConnectionLinkKey()
- HCIChangeConnectionPacketType()
- HCIChangeLocalName()
- HCIDeleteStoredLinkKey()
- HCIEnableDeviceUnderTestMode()
- HCIExitParkMode()
- HCIExitSniffMode()
- HCIHoldMode()
- HCIMasterLinkKey()
- HCIParkMode()
- HCIPINCodeRequestNegativeReply()
- HCIPINCodeRequestReply()
- HCIQoSSetup()
- HCIReadAuthenticationEnable()
- HCIReadBDADDR()
- HCIReadBufferSize()
- HCIReadClockOffset()
- HCIReadConnectionAcceptTimeout()
- HCIReadCountryCode()
- HCIReadCurrentIACLAP()
- HCIReadEncryptionMode()
- HCIReadLinkPolicySettings()
- HCIReadLinkSupervisionTimeout()
- HCIReadLocalName()
- HCIReadLocalSupportedFeatures()
- HCIReadLocalVersionInformation()
- HCIReadLoopbackMode()
- HCIReadNumberOfSupportedIAC()
- HCIReadPageScanMode()
- HCIReadPageScanPeriodMode()
- HCIReadPageTimeout()
- HCIReadPINType()
- HCIReadRemoteSupportedFeatures()
- HCIReadRemoteVersionInformation()
- HCIReadScanEnable()
- HCIReadSCOFlowControlEnable()
- HCIReadStoredLinkKey()
- HCIReadVoiceSetting()
- HCIRejectConnectionRequest()
- HCIRemoveSCOConnection()
- HCIReset()
- HCIRoleDiscovery()
- HCISetConnectionEncryption()
- HCISetEventFilter()
- HCISniffMode()
- HCISwitchRole()
- HCIWriteAuthenticationEnable()
- HCIWriteConnectionAcceptTimeout()
- HCIWriteCurrentIACLAP()
- HCIWriteEncryptionMode()
- HCIWriteLinkPolicySettings()
- HCIWriteLinkSupervisionTimeout()
- HCIWriteLoopbackMode()
- HCIWritePageTimeout()
- HCIWritePINType()
- HCIWriteScanEnable()
- HCIWriteStoredLinkKey()
- HCIWriteVoiceSettings()
- C.5 OBEX Commands
- C.6 RFCOMM Commands
- RFCloseClientChannel()
- RFOpenClientChannel()
- RFRegisterServerChannel()
- RFSendData()
- RFSendDataFromPipe()
- RFReceiveData()
- RFWaitForConnection()
- RFAcceptChannel()
- RFAcceptPortSettings()
- RFCreditFlowEnabled()
- RFRequestPortSettings()
- RFRequestPortStatus()
- RFSetLineStatus()
- RFSetModemStatus()
- RFSendTest()
- RFAdvanceCredit()
- C.7 TCS Commands
- C.8 L2CAP Commands
- C.9 SDP Commands
- C.10 Merlin Commands
- Appendix D: CATC Scripting Language
266
CATC MERLIN’S WAND 1.22 APPENDIX D
User’s Manual CATC Scripting Language
Bitwise Logical Operators
~ Bitwise
complement
Integer-integer Integer ~0b11111110 = 0b00000001
& Bitwise AND Integer-integer Integer 0b11111110 & 0b01010101 =
0b01010100
^ Bitwise
exclusive OR
Integer-integer Integer 0b11111110 ^ 0b01010101 =
0b10101011
| Bitwise
inclusive OR
Integer-integer Integer 0b11111110 | 0b01010101 =
0b11111111
Shift Operators
<< Left shift Integer-integer Integer 0b11111110 << 3 = 0b11110000
>> Right shift Integer-integer Integer 0b11111110 >> 1 = 0b01111111
Assignment Operators
= Assignment Any Any A = 1
B = C = A
+= Addition
assignment
Integer-integer Integer x = 1
x += 1 = 2
String-string String a = "one "
a += "two" = "one two"
Raw byte-raw byte Raw z = '001122'
z += '334455' = '001122334455'
List-list List x = [1, 2]
x += [3, 4] = [1, 2, 3, 4]
Integer-list List y = 1
y += [2, 3] = [1, 2, 3]
Integer-string String a = "number = "
a += 2 = "number = 2"
*Note: integer-string concatenation uses decimal
conversion.
String-list List s = "one"
s + ["two"] = ["one", "two"]
-= Subtraction
assignment
Integer-integer Integer y = 3
y –= 1 = 2
*= Multiplication
assignment
Integer-integer Integer x = 3
x *= 1 = 3
/= Division
assignment
Integer-integer Integer s = 3
s /= 1 = 3
%= Modulus
assignment
Integer-integer Integer y = 3
y %= 1 = 0
>>= Right shift
assignment
Integer-integer Integer b = 0b11111110
b >>= 1 = 0b01111111
<<= Left shift
assignment
Integer-integer Integer a = 0b11111110
a <<= 3 = 0b11111110000
Operator
Symbol Description
Operand
Types
Result
Types Examples
Operators (Continued)