private static XBeeAddress64 Parse(AtResponse sl, AtResponse sh) { if (!sh.IsOk || !sl.IsOk) throw new XBeeException("Failed to read serial number"); var data = new OutputStream(); data.Write(sh.Value); data.Write(sl.Value); return new XBeeAddress64(data.ToArray()); }
public override byte[] GetFrameData() { var frameData = new OutputStream(); // api id frameData.Write((byte)ApiId); // frame id (arbitrary byte that will be sent back with ack) frameData.Write(FrameId); frameData.Write(RemoteAddress64.Address); frameData.Write(RemoteAddress16.Address); // 0 - queue changes -- don't forget to send AC command frameData.Write(ApplyChanges ? 2 : 0); frameData.Write((ushort)Command); if (Value != null) frameData.Write(Value); return frameData.ToArray(); }
public override byte[] GetFrameData() { var output = new OutputStream(); output.Write((byte)ApiId); output.Write(FrameId); output.Write(Destination.Address); output.Write((byte)Option); if (Payload != null) output.Write(Payload); return output.ToArray(); }
public override byte[] GetFrameData() { if (MaxPayloadSize > 0 && Payload.Length > MaxPayloadSize) throw new ArgumentException("Payload exceeds user-defined maximum payload size of " + MaxPayloadSize + " bytes. Please package into multiple packets"); var output = new OutputStream(); GetFrameHeader(output); GetFrameOptions(output); GetFramePayload(output); return output.ToArray(); }
public override byte[] GetFrameData() { var frameData = new OutputStream(); frameData.Write((byte) ApiId); frameData.Write(FrameId); frameData.Write(Command); if (Value != null) frameData.Write(Value); return frameData.ToArray(); }