ZHCACZ5 August 2023 CC2564C
連接設(shè)備的第一步是將 SPP LE 服務(wù)和特性添加到 LightBlue 中。要手動執(zhí)行此操作,請在 LightBlue 中創(chuàng)建一個空白的虛擬外設(shè),然后添加必要的服務(wù)和特性。另一個選項是在 SPPLEDemo 充當服務(wù)器的同時克隆 SPPLEDemo。要克隆 SPPLEDemo,首先如上所述連接 2 個設(shè)備。連接 2 個設(shè)備后,選擇顯示屏右上角的“Clone”選項。應(yīng)用返回到設(shè)備列表,您將觀察到 SPPLEDemo 列為虛擬外設(shè),如下所示:
克隆后,SPP LE 服務(wù)現(xiàn)在可以與設(shè)備連接。接下來,重新啟動 SPPLEDemo,并在出現(xiàn)提示時啟動該應(yīng)用作為客戶端。下一步,使用 StartScanning 命令進行掃描以查找 iOS 設(shè)備。找到 iOS 設(shè)備后,使用 StopScanning 命令停止掃描?,F(xiàn)在使用 ConnectLE 5c75524c733a 1 命令連接到 iOS 設(shè)備。之后,在 10 秒時間范圍內(nèi)運行 DiscoverSPPLE 5c75524c733a 命令。SPP LE 服務(wù)發(fā)現(xiàn)完成后,在 25 秒時間范圍內(nèi)運行 ConfigureSPPLE 5c75524c733a。如果命令未在這些時間范圍內(nèi)運行,iOS 設(shè)備將斷開與 SPPLEDemo 的連接。配置 SPP LE 特性后,2 個應(yīng)用保持連接,但請注意,如果 iOS 設(shè)備進入睡眠狀態(tài),則會關(guān)閉連接。運行剛剛介紹的命令后,在 SPPLEDemo 的終端中將觀察到類似以下內(nèi)容的輸出:
OpenStack().
Bluetooth Stack ID: 1.
Device Chipset: 4.1.
BD_ADDR: 0xd03972cdab68
Command Options: Server, Client, Help
SPP+LE>Client
Command Options General: Help, GetLocalAddress, SetBaudRate
Quit,
Command Options BR/EDR: Inquiry, DisplayInquiryList, Pair,
EndPairing, PINCodeResponse,
PassKeyResponse,
UserConfirmationResponse,
SetDiscoverabilityMode,
SetConnectabilityMode,
SetPairabilityMode,
ChangeSimplePairingParameters,
GetLocalName, SetLocalName,
GetClassOfDevice, SetClassOfDevice,
GetRemoteName, SniffMode,
ExitSniffMode, Open, Close, Read,
Write, GetConfigParams,
SetConfigParams, GetQueueParams,
DisplayRawModeData, AutomaticReadMode,
SetQueueParams, Loopback,
CBSend.
Command Options GAPLE: SetDiscoverabilityMode,
SetConnectabilityMode,
SetPairabilityMode,
ChangePairingParameters,
AdvertiseLE, StartScanning,
StopScanning, ConnectLE,
DisconnectLE, PairLE,
LEPasskeyResponse,
QueryEncryptionMode, SetPasskey,
DiscoverGAPS, GetLocalName,
SetLocalName, GetLERemoteName,
SetLocalAppearance,
GetLocalAppearance,
GetRemoteAppearance,
Command Options SPPLE: DiscoverSPPLE, RegisterSPPLE, LESend,
ConfigureSPPLE, LERead, Loopback,
DisplayRawModeData, AutomaticReadMode
SPP+LE>StartScanning
Scan started successfully.
SPP+LE>
etLE_Advertising_Report with size 36.
1 Responses.
Advertising Type: rtConnectableUndirected.
Address Type: atRandom.
Address: 0x5c75524c733a.
RSSI: -71.
Data Length: 21.
AD Type: 0x01.
AD Length: 0x01.
AD Data: 0x1a
AD Type: 0x07.
AD Length: 0x10.
AD Data: 0x39 0x23 0xcf 0x40 0x73 0x16 0x42 0x9a 0x5c 0x41 0x7e 0x7d 0xc4 0x9a 0x83 0x14
SPP+LE>
etLE_Advertising_Report with size 36.
1 Responses.
Advertising Type: rtScanResponse.
Address Type: atRandom.
Address: 0x5c75524c733a.
RSSI: -71.
Data Length: 11.
AD Type: 0x09.
AD Length: 0x09.
AD Data: 0x53 0x50 0x50 0x4c 0x45 0x44 0x65 0x6d 0x6f
SPP+LE>StopScanning
Scan stopped successfully.
SPP+LE>ConnectLE 5c75524c733a 1
Connection Request successful.
SPP+LE>
etLE_Connection_Complete with size 16.
Status: 0x00.
Role: Master.
Address Type: Random.
BD_ADDR: 0x5c75524c733a.
SPP+LE>
etGATT_Connection_Device_Connection with size 16:
Connection ID: 1.
Connection Type: LE.
Remote Device: 0x5c75524c733a.
Connection MTU: 23.
SPP+LE>
Exchange MTU Response.
Connection ID: 1.
Transaction ID: 1.
Connection Type: LE.
BD_ADDR: 0x5c75524c733a.
MTU: 131.
SPP+LE>
SPP+LE>DiscoverSPPLE 5c75524c733a
GATT_Start_Service_Discovery success.
SPP+LE>
Service 0x000f - 0x001b, UUID: 14839ac47d7e415c9a42167340cf2339.
SPP+LE>
Service Discovery Operation Complete, Status 0x00.
SPP+LE>ConfigureSPPLE 5c75524c733a
SPPLE Service found on remote device, attempting to read Transmit Credits, and configured CCCDs.
SPP+LE>
Write Response.
Connection ID: 1.
Transaction ID: 15.
Connection Type: LE.
BD_ADDR: 0x5c75524c733a.
Bytes Written: 2.
SPP+LE>
Write Response.
Connection ID: 1.
Transaction ID: 16.
Connection Type: LE.
BD_ADDR: 0x5c75524c733a.
Bytes Written: 2.
現(xiàn)在,2 個設(shè)備已連接并配置完畢,設(shè)備可以在它們之間發(fā)送和接收數(shù)據(jù)?,F(xiàn)在,選擇 LightBlue 中的 SPPLEDemo 虛擬外設(shè),以查看虛擬外設(shè)的特性。將在 iDevice 的顯示屏上觀察到以下內(nèi)容或類似內(nèi)容: