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 {