BTM services: Difference between revisions

No edit summary
No edit summary
Line 7: Line 7:


These btm services with BLE only allow connecting to devices which have a [[#GattService]] with a certain custom UUID present.
These btm services with BLE only allow connecting to devices which have a [[#GattService]] with a certain custom UUID present.
The output bool from all of these btm* service get-event cmds indicates whether the Event was successfully returned, user-processes will Abort when this is 0.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 152: Line 154:
No input, returns an output Event handle with EventClearMode=1.
No input, returns an output Event handle with EventClearMode=1.


[3.0.0+] Now returns an additional output u8.
[3.0.0+] Now returns an additional output bool.


== GetDeviceCondition ==
== GetDeviceCondition ==
Line 172: Line 174:
No input, returns an output Event handle with EventClearMode=1.
No input, returns an output Event handle with EventClearMode=1.


[3.0.0+] Now returns an additional output u8.
[3.0.0+] Now returns an additional output bool.


== GetDeviceInfo ==
== GetDeviceInfo ==
Line 206: Line 208:
No input, returns an output Event handle with EventClearMode=1.
No input, returns an output Event handle with EventClearMode=1.


[3.0.0+] Now returns an additional output u8.
[3.0.0+] Now returns an additional output bool.


== AcquireLlrStateEvent ==
== AcquireLlrStateEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== IsLlrStarted ==
== IsLlrStarted ==
Line 221: Line 223:


== AcquireBleScanEvent ==
== AcquireBleScanEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== GetBleScanParameterGeneral ==
== GetBleScanParameterGeneral ==
Line 262: Line 264:


== AcquireBleConnectionEvent ==
== AcquireBleConnectionEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== BleConnect ==
== BleConnect ==
Line 277: Line 279:
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).
The u32 must match an Id in a [[Bluetooth_Driver_services#BleConnectionInfo|BleConnectionInfo]] from [[#BleGetConnectionState]]. [5.1.0+] 0xFFFFFFFF is invalid.


== BleGetConnectionState ==
== BleGetConnectionState ==
Line 288: Line 290:


== AcquireBlePairingEvent ==
== AcquireBlePairingEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== BlePairDevice ==
== BlePairDevice ==
Line 309: Line 311:


== AcquireBleServiceDiscoveryEvent ==
== AcquireBleServiceDiscoveryEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== GetGattServices ==
== GetGattServices ==
Line 354: Line 356:


== AcquireBleMtuConfigEvent ==
== AcquireBleMtuConfigEvent ==
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


== ConfigureBleMtu ==
== ConfigureBleMtu ==
Line 432: Line 434:
|}
|}


[3.0.0+] RegisterSystemEventForDiscovery now returns an output u8.
[3.0.0+] RegisterSystemEventForDiscovery now returns an output bool.


= btm:sys =
= btm:sys =
Line 499: Line 501:


=== AcquireRadioEvent ===
=== AcquireRadioEvent ===
No input, returns an output bool and handle.
No input, returns an output bool and an Event handle with EventClearMode=1.


=== AcquireGamepadPairingEvent ===
=== AcquireGamepadPairingEvent ===
No input, returns an output bool and handle.
No input, returns an output bool and an Event handle with EventClearMode=1.


=== IsGamepadPairingStarted ===
=== IsGamepadPairingStarted ===
Line 597: Line 599:


=== AcquireBleScanEvent ===
=== AcquireBleScanEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


sdknso will Abort if the output u8 is value 0.
This is similar to the [[#AcquireBleScanEvent|btm]] cmd.


=== GetBleScanFilterParameter ===
=== GetBleScanFilterParameter ===
Line 652: Line 654:


=== AcquireBleConnectionEvent ===
=== AcquireBleConnectionEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


This is similar to the [[#AcquireBleConnectionEvent|btm]] cmd.
This is similar to the [[#AcquireBleConnectionEvent|btm]] cmd.
sdknso will Abort if the output u8 is value 0.


=== BleConnect ===
=== BleConnect ===
Line 674: Line 674:


=== AcquireBlePairingEvent ===
=== AcquireBlePairingEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


This is similar to the [[#AcquireBlePairingEvent|btm]] cmd.
This is similar to the [[#AcquireBlePairingEvent|btm]] cmd.
sdknso will Abort if the output u8 is value 0.


=== BlePairDevice ===
=== BlePairDevice ===
Line 701: Line 699:


=== AcquireBleServiceDiscoveryEvent ===
=== AcquireBleServiceDiscoveryEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


This is similar to the [[#AcquireBleServiceDiscoveryEvent|btm]] cmd.
This is similar to the [[#AcquireBleServiceDiscoveryEvent|btm]] cmd.
Line 714: Line 712:
=== GetGattService ===
=== GetGattService ===
Takes a PID, a type-0x1A output buffer containing a [[#GattService]], an u32, a [[Bluetooth_Driver_services#GattAttributeUuid|GattAttributeUuid]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output bool.
Takes a PID, a type-0x1A output buffer containing a [[#GattService]], an u32, a [[Bluetooth_Driver_services#GattAttributeUuid|GattAttributeUuid]], an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output bool.
The u32 is handled the same as [[#BleDisconnect_2|BleDisconnect]].


This is similar to the [[#GetGattService|btm]] cmd.
This is similar to the [[#GetGattService|btm]] cmd.
Line 742: Line 738:


=== AcquireBleMtuConfigEvent ===
=== AcquireBleMtuConfigEvent ===
No input, returns an output u8 and an Event handle with EventClearMode=1.
No input, returns an output bool and an Event handle with EventClearMode=1.


This is similar to the [[#AcquireBleMtuConfigEvent|btm]] cmd.
This is similar to the [[#AcquireBleMtuConfigEvent|btm]] cmd.
sdknso will Abort if the output u8 is value 0.


=== ConfigureBleMtu ===
=== ConfigureBleMtu ===
Line 753: Line 747:
This is similar to the [[#ConfigureBleMtu|btm]] cmd.
This is similar to the [[#ConfigureBleMtu|btm]] cmd.


sdknso will Abort if the user-specified u16 is <0x18 or >0x200.
sdknso will Abort if the user-specified u16 is <0x18 or >0x200 (this doesn't apply to the [[#ConfigureBleMtu|btm]] cmd).


=== GetBleMtu ===
=== GetBleMtu ===