Problem with W5100 and W3100A MAC raw mode
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: Problem with W5100 and W3100A MAC raw mode
by Eugeny ·
You do not detail the source of frame/data size value. There’s received size register, and there’s 2-byte data size value in the RX buffer before the data. Which one you refer to?
I am not sure, but this size could be the value of 42 is size of actual data, without padding. What frame on the wire does actually consist of?
Edit: I can not believe there could be such a bug when “data size” identifier is different than size of raw data.
I am looking to the Wirehark, and see that ARP request is 60 bytes with 10 bytes of zero padding (exactly 42 bytes of raw data), and ARP reply is 42 bytes, without any padding.
However looking inside the packet, and into the ARP packet message format it clearly says that meaningful data is 28 bytes after the headers, and type of message is defined before this ARP data (at offset 0xC). Thus driver must know the predefined size of data (28 bytes) for the ARP protocol (0x0806) before it starts parsing the data, and any garbage after meaningful 28 bytes must simply be discarded.
Edit 2: to confirm the bug you must take the Wireshark log on the last interface connected directly to the W5100/W3150 - for example, on the PC in bridge mode, and capture packet log on the interface this PC is directly connected to the WIZnet. It may happen that packets forwarded on the network may be modified (e.g. padded), thus the only way is to compare configuration and data of the packets actually being sent by the device onto the wire, and packets (configuration and data) received by the WIZnet chip.