Bluetooth Driver services: Difference between revisions

No edit summary
Line 727: Line 727:


This is used by [[HID_services|hid]].
This is used by [[HID_services|hid]].
See [[#LeEventInfo]] for the output buffer.


== RegisterBleHidEvent ==
== RegisterBleHidEvent ==
Line 837: Line 839:
Takes a PID, a type-0xA output buffer, an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output [[#BleEventType]].
Takes a PID, a type-0xA output buffer, an [[Applet_Manager_services#AppletResourceUserId|AppletResourceUserId]], returns an output [[#BleEventType]].


This is identical to [[#GetLeHidEventInfo]] except different state is used. The AppletResourceUserId is unused.
This is identical to [[#GetLeHidEventInfo]] except different state is used. The AppletResourceUserId is unused. See [[#LeEventInfo]] for the output buffer.


== RegisterBleEvent ==
== RegisterBleEvent ==
Line 1,045: Line 1,047:
= BleScanResult =
= BleScanResult =
This is "nn::bluetooth::BleScanResult". This is a 0x148-byte struct.
This is "nn::bluetooth::BleScanResult". This is a 0x148-byte struct.
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0 || 0x144 ||
|-
| 0x144 || 0x4 || s32
|}


= BleConnectionInfo =
= BleConnectionInfo =
Line 1,079: Line 1,092:
= GattId =
= GattId =
This is "nn::bluetooth::GattId". This is a 0x18-byte struct with 4-byte alignment.
This is "nn::bluetooth::GattId". This is a 0x18-byte struct with 4-byte alignment.
= LeEventInfo =
This is a 0x400-byte struct.
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0 || 0x4 ||
|-
| 0x4 || 0x4 ||
|-
| 0x8 || 0x1 ||
|-
| 0x9 || 0x3 || Padding
|-
| 0xC || 0x14 ||
|-
| 0x20 || 0x14 ||
|-
| 0x34 || 0x14 ||
|-
| 0x48 || 0x2 || Size of the below data.
|-
| 0x4A || {above size} || Data.
|}
= BleClientGattOperationInfo =
This is "nn::bluetooth::BleClientGattOperationInfo". This is converted from [[#LeEventInfo]].
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0 || 0x1 || Converted from [[#LeEventInfo]]+0x0.
|-
| 0x1 || 0x3 || Padding
|-
| 0x4 || 0x4 || Same as [[#LeEventInfo]]+0x4.
|-
| 0x8 || 0x1 || Same as [[#LeEventInfo]]+0x8.
|-
| 0x9 || 0x3 || Padding
|-
| 0xC || 0x14 || Same as [[#LeEventInfo]]+0xC.
|-
| 0x20 || 0x14 || Same as [[#LeEventInfo]]+0x20.
|-
| 0x34 || 0x14 || Same as [[#LeEventInfo]]+0x34.
|-
| 0x48 || 0x8 || Same as [[#LeEventInfo]]+0x48.
|-
| 0x50 || {above size} || Same as [[#LeEventInfo]]+0x4A.
|}


[[Category:Services]]
[[Category:Services]]