func (cb *ConnBLE) Open(cp config.NewtmgrConnProfile, readTimeout time.Duration) error { var err error var DefaultClientOptions = BleOptions deviceName = cp.ConnString() deviceAddress = reverseBytes(cp.DeviceAddress()) log.Debugf("BLE Connection devaddr:%+v", deviceAddress) deviceAddressType = cp.DeviceAddressType() cb.bleDevice, err = gatt.NewDevice(DefaultClientOptions...) if err != nil { return util.NewNewtError(err.Error()) } cb.bleDevice.Handle( gatt.PeripheralDiscovered(onPeriphDiscovered), gatt.PeripheralConnected(onPeriphConnected), gatt.PeripheralDisconnected(onPeriphDisconnected), ) cb.bleDevice.Init(onStateChanged) CharDisc <- true return nil }