/// <summary> Sets the new device address. </summary> /// <param name="newAddress"> The new device address. </param> /// <returns> True if the device address is changed. </returns> public bool SetAddress(char newAddress) { if (newAddress == Address) { return(true); } UpdateOutput(string.Format("changing address to {0}...", newAddress)); ELLDevicePort.SendStringB(Address, "ca", (byte)newAddress); Address = newAddress; return(WaitForStatus()); }
/// <summary> Sets the group address for the given devices. </summary> /// <param name="addresses"> The addresses of devices to join the group. </param> /// <returns> True if the function completed succesfully. </returns> public bool SetToGroupAddress(IEnumerable <char> addresses) { foreach (char address in addresses) { if (address != Address) { UpdateOutput(string.Format("Set GroupAddress {0}->{1}...", address, Address)); ELLDevicePort.SendStringB(address, "ga", (byte)Address); if (!WaitForStatus(Address)) { return(false); } } } return(true); }