From 542455003a392ed5b91e42780d787074d3545896 Mon Sep 17 00:00:00 2001 From: Lenart Kos Date: Tue, 25 Feb 2025 18:58:50 +0100 Subject: [PATCH] linux: check adapter powered state before connecting --- gap_linux.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gap_linux.go b/gap_linux.go index 2a0ee55..dcb774d 100644 --- a/gap_linux.go +++ b/gap_linux.go @@ -387,6 +387,14 @@ func (a *Adapter) Connect(address Address, params ConnectionParams) (Device, err a.bus.AddMatchSignal(propertiesChangedMatchOptions...) defer a.bus.RemoveMatchSignal(propertiesChangedMatchOptions...) + powered, err := a.adapter.GetProperty("org.bluez.Adapter1.Powered") + if err != nil { + return Device{}, err + } + if !powered.Value().(bool) { + return Device{}, errAdaptorNotPowered + } + // Read whether this device is already connected. connected, err := device.device.GetProperty("org.bluez.Device1.Connected") if err != nil {