BTM services: Difference between revisions

No edit summary
No edit summary
Line 266: Line 266:
== BleConnect ==
== BleConnect ==
Takes an input [[Bluetooth_Driver_services#Address|Address]], no output.
Takes an input [[Bluetooth_Driver_services#Address|Address]], no output.
An error is thrown if the [[Bluetooth_Driver_services#Address|Address]] is already connected (listed in the [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]] from [[#BleGetConnectionState]]). An error is thrown if 4 [[#BleGetConnectionState|devices]] are already connected.


== BleOverrideConnection ==
== BleOverrideConnection ==
Line 274: Line 276:
== BleDisconnect ==
== BleDisconnect ==
Takes an input u32, no output.
Takes an input u32, no output.
The u32 must match an Id in a [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]] from [[#BleGetConnectionState]] (0xFFFFFFFF is invalid).


== BleGetConnectionState ==
== BleGetConnectionState ==
Takes a type-0xA output buffer containing an array of [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]], returns an output u8 total_out.
Takes a type-0xA output buffer containing an array of [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]], returns an output u8 total_out.
Other cmds which use this internally use arraycount=4.


== BleGetGattClientConditionList ==
== BleGetGattClientConditionList ==
Line 630: Line 636:
Takes a PID, an [[Bluetooth_Driver_services#Address|Address]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], no output.
Takes a PID, an [[Bluetooth_Driver_services#Address|Address]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], no output.


An error is thrown if the [[Bluetooth_Driver_services#Address|Address]] is already connected (listed in the [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]] from [[#BleGetConnectionState]]). An error is thrown if 4 [[#BleGetConnectionState|devices]] are already connected.
This is similar to the [[#BleConnect|btm]] cmd.


=== BleDisconnect ===
=== BleDisconnect ===
Takes an input u32, no output.
Takes an input u32, no output.


The u32 must match an Id in a [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]] from [[#BleGetConnectionState]] (0xFFFFFFFF is invalid).
This is similar to the [[#BleDisconnect|btm]] cmd.


=== BleGetConnectionState ===
=== BleGetConnectionState ===
Takes a PID, a type-0xA output buffer containing an array of [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output u8 total_out.
Takes a PID, a type-0xA output buffer containing an array of [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output u8 total_out.


Other cmds which use this internally use arraycount=4.
This is similar to the [[#BleGetConnectionState|btm]] cmd.


=== AcquireBlePairingEvent ===
=== AcquireBlePairingEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output u8 and an Event handle with EventClearMode=1.
This is similar to the [[#AcquireBlePairingEvent|btm]] cmd.


sdknso will Abort if the output u8 is value 0.
sdknso will Abort if the output u8 is value 0.