std.hardware.bluetooth_gatts
Die Server-Seite: das eigene Programm tritt als BLE-Gerät auf und stellt Charakteristiken bereit, die andere lesen, beschreiben und abonnieren können.
Eine Charakteristik wird über ihren Eintrag in einem Definitionspuffer beschrieben — UUID, Eigenschaften (lesbar, schreibbar, benachrichtigend) und ein Zeiger auf den aktuellen Wert. Die GattsCharDef*-Funktionen setzen und lesen diese Felder.
GattServerRegister meldet die Dienste bei BlueZ an; GattServerHandleNext verarbeitet die nächste eingehende Anfrage; GattServerSendNotification schiebt einen geänderten Wert aktiv zu allen Abonnenten.
Die Anmeldung läuft über den D-Bus von BlueZ — der Deskriptor dafür kommt aus bluetooth_dbus.
std.hardware.bluetooth — Übersicht · Bluetooth-Guide · Standard Library
Schnittstelle
| Signatur |
|---|
GattsCharDefUUID(buf: int64, idx: int64): int64 |
GattsCharDefProps(buf: int64, idx: int64): int64 |
GattsCharDefValuePtr(buf: int64, idx: int64): int64 |
GattsCharDefValueLen(buf: int64, idx: int64): int64 |
GattsCharDefSetValue(buf: int64, idx: int64, ptr: int64, len: int64) |
GattServerRegister(dbusFd: int64, adapterPath: int64, pathLen: int64): int64 |
GattServerHandleNext(fd: int64, svcUUID: int64, charDefs: int64, charCount: int64): int64 |
GattServerSendNotification(fd: int64, charPath: int64, pathLen: int64, data: int64, dataLen: int64): int64 |
| Konstante | Wert | Bedeutung |
|---|---|---|
GATTS_CHAR_DEF_SIZE | 32 | – |
Quelle: std/hardware/bluetooth_gatts.lyx · geprüft mit lyxc 1.0.17E · Stand 2026-08-12
