using Edge.Core.Parser.BinaryParser; using Edge.Core.Parser.BinaryParser.Attributes; using Edge.Core.Parser.BinaryParser.MessageEntity; using Edge.Core.Parser.BinaryParser.Util; using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace GroWattInverter { public class Parser : ParserBase { public Parser() : base(new MessageTemplateLookup()) { } public override byte[] Serialize(MessageTemplateBase message) { var bytes = base.Serialize(message).ToList(); var crc = bytes.ToArray().ComputeChecksumBytesCrc16ModBus(); return bytes.Concat(crc.Reverse()).ToArray(); } } }