try
{
this.builder = new PacketBuilder(Ethernet, Payload);
Packet packet = this.builder.Build(DateTime.Now);
this.communicator.SendPacket(packet);
this.reaceiveDataWaitHandler.Set();
Console.WriteLine(packet.Timestamp.ToString("yyyy-MM-dd hh:mm:ss.fff") + " length:" + packet.Length);
// Print the packet
const int LineLength = 64;
for (int i = 0; i != packet.Length; ++i)
{
Console.Write((packet[i]).ToString("X2"));
if ((i + 1) % LineLength == 0)
Console.WriteLine();
}
}
I am having a similar issue - using NIC card the fcs bytes are not added automatically. Not sure if there is some way to enable hardware to do this, but trying to do in software is causing problems.
If I add those 4 bytes to end of packet and full with appropriate values Payload layer grows by 4 bytes and adjusts Length accordingly. Receiving application is discarding packets, I assume because fcs is not there after reading larger Payload?
Thanks for assistance
mark