diff --git a/adapter_hci.go b/adapter_hci.go index 6c49c0d..f36bc09 100644 --- a/adapter_hci.go +++ b/adapter_hci.go @@ -50,11 +50,25 @@ func (a *hciAdapter) enable() error { } func (a *hciAdapter) Address() (MACAddress, error) { + var empty MAC + if a.hci.address.MAC != empty { + return a.hci.address, nil + } + if err := a.hci.readBdAddr(); err != nil { return MACAddress{}, err } - return MACAddress{MAC: makeAddress(a.hci.address)}, nil + return a.hci.address, nil +} + +func (a *Adapter) SetRandomAddress(mac MAC) error { + if err := a.hci.sendCommandWithParams(ogfLECtrl<