====== std.hardware.bluetooth_rfcomm ====== **RFCOMM** ist die serielle Schnittstelle über Bluetooth — ein Datenstrom wie bei TCP, adressiert über Geräteadresse und Kanalnummer (1–30). Damit sprechen Drucker, Barcodescanner, OBD-Adapter und die meisten Geräte des klassischen Bluetooth. Die Unit folgt dem Muster der Socket-Programmierung: ''RFCommConnect'' für die Client-Seite, ''RFCommListen''/''RFCommAccept'' für die Server-Seite, dazwischen ''RFCommSend''/''RFCommRecv'' auf einem Deskriptor. Zwei Dinge, die Arbeit sparen: ''RFCommSendAll'' schreibt so lange, bis der Puffer wirklich draußen ist — ein einzelnes ''Send'' darf jederzeit weniger schreiben als verlangt. ''RFCommPoll'' wartet mit Zeitlimit auf Daten, statt blockierend zu lesen. ''RFCommSetSecurity'' verlangt Verschlüsselung oder Authentifizierung für die Verbindung; ohne diesen Aufruf ist die Übertragung ungesichert. [[lyx_-_programmiersprache:units:hardware:bluetooth|std.hardware.bluetooth — Übersicht]] · [[lyx_-_programmiersprache:guides:bluetooth|Bluetooth-Guide]] · [[lyx_-_programmiersprache:units|Standard Library]] ---- ===== Schnittstelle ===== ^ Signatur ^ | ''RFCommConnect(bdaddr: int64, channel: int64): int64'' | | ''RFCommSend(fd: int64, buf: int64, len: int64): int64'' | | ''RFCommRecv(fd: int64, buf: int64, len: int64): int64'' | | ''RFCommListen(channel: int64, backlog: int64): int64'' | | ''RFCommAccept(listenFd: int64, remoteAddrOut: int64): int64'' | | ''RFCommClose(fd: int64): int64'' | | ''RFCommSetSecurity(fd: int64, flags: int64): int64'' | | ''RFCommPoll(fd: int64, timeoutMs: int64): int64'' | | ''RFCommSendAll(fd: int64, buf: int64, len: int64): int64'' | Quelle: ''std/hardware/bluetooth_rfcomm.lyx'' · geprüft mit ''lyxc 1.0.17E'' · Stand 2026-08-12