w5500 RX buffer management
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: w5500 RX buffer management
by Eugeny ·
Most probably 4KB UDP data is segmented into 1K packets, and for each packet sent you get “SEND_OK” interrupt. I guess (while this is not said in datasheet) size of separate packets is defined by Sn_MSSR, or just fixed to 1024 bytes. Wireshark will tell you more how it looks like from network side.
Why you defined buffer as 16000 bytes? 16 kilobytes is 16384 bytes. Not sure if it is actual anyway.
Please explain what exactly you receive. 16KB RX buffer must be able to accommodate 4096 bytes of data; but if you do not release buffer using RX_RD pointer and RECV command, all packets with their data not fitting into the buffer will be lost (discarded).
RE: RE: w5500 RX buffer management
by yma-313 ·
Actually when i use pooling loopback method and when i set in example the rx buff size to 4KB i receive correct frame just when the frame length is less than rx buff size.in else the frame receives with wrong length. in example with 1024 byte length…


In other hand when i use the interrupt loopback method,the interrupt is occurred for every 1024 Byte
Actually I want to use this chip in 1mb/s data rate but I can’t.i use the Wiznet standard library to send and receive in pooling but I can’t sned the data in over than 1mb/s data rate!!!
RE: RE: w5500 RX buffer management
by yma-313 ·
Thanks for your guiding.
I tested something interesting. In the polling mode, the read data frame size is still 1024 bytes!
Of course, I also set the MSSR in 2048KB, but it is not work!!
Why is this happening ??!
RE: w5500 RX buffer management
by Eugeny ·
Datasheet says that MSSR is only applicable for TCP more, I thought that it may be also applicable for UDP mode, and you prove me wrong.
Did you look into the Wireshark capture?
RE: w5500 RX buffer management
by yma-313 ·
No, but can i ask you exactly what to see in it?
RE: w5500 RX buffer management
by Eugeny ·
Share it here.
RE: w5500 RX buffer management
by yma-313 ·
RE: w5500 RX buffer management
by yma-313 ·
save.zip (1.4 کیلوبایت)
RE: w5500 RX buffer management
by Eugeny ·
Of course your W5500 will be receiving 1024 bytes at a time because network device with IP address 192.168.1.151 (Sony 00:1d:ba:f4:69:1d) sends data this way. This division onto 1024 bytes packets is NOT performed by the W5500, but by another device. This in exactly this case you will have to assemble your larger data stream from a number of 1024 packets using device driving W5500 (microcontroller or whatever).
Why not using TCP?
RE: w5500 RX buffer management
by yma-313 ·
Yes you are right.
I should use UDP because I want to send online video stream on LAN.
in addition I need maximum throuput on LAN
Thank you very much for your helping