Sub EnableBT
If manager2.IsInitialized = False Then
manager2.Initialize("manager2") 'Initialize and enable the BT Peripheral mode.
Else
manager2.StopScan
StartScan
End If
'If connectedCentrals.IsInitialized = False Then connectedCentrals.Initialize 'Initialize the container that will hold all the incoming connected remotes.
End Sub
Sub Manager2_StateChanged (State As Int)
If State <> manager2.STATE_POWERED_ON Then
Main.hd.ToastMessageShow("Bluetooth is not enabled", True)
Else
'Peripheral.Start("MD Controller")
StartScan 'Look for remotes that are currently broadcasting services.
End If
End Sub
Private Sub StartScan
If manager2.State = manager2.STATE_POWERED_ON Then
manager2.Scan2(Array(RemoteServiceID), False)
End If
End Sub
Private Sub Manager2_DeviceFound (Name As String, DeviceId As String, AdvertisingData As Map, RSSI As Double)
Log("DeviceFound: " & Name & " " & DeviceId)
manager2.Connect(DeviceId)
End Sub
Private Sub Manager2_Connected (Services As List)
Log("Remote Connected")
firstread = True
manager2.ReadData(RemoteServiceID) 'must call once to discover the characteristics
End Sub
Private Sub Manager2_DataAvailable (SId As String, Characteristics As Map)
If firstread Then
manager2.SetNotify(RemoteServiceID, RemoteReadChar, True)
firstread = False
Return
End If
Dim b() As Byte = Characteristics.Get(RemoteReadChar)
Dim RXData As String
RXData = BytesToString(b, 0, b.Length, "UTF8")
Log(RXData)
End Sub
Private Sub Manager2_Disconnected
Log("Remote Disconnected")
StartScan
End Sub