Mac Filter doesn't appear to work in mac raw mode

Hello,
I am using the wiznet6100 in macraw mode with the lwip ip stack. Currently i have the mac filtering turned off in socket0. (my initialisation code)

setSn_MR(WIZNET_MACRAW_SOCKET, Sn_MR_MACRAW);

I am able to communicate over tcp, server up web pages, get an ip address via dhcp etc.
Now, if i turn on mac filtering (as part of my initialisation code) like this

setSn_MR(WIZNET_MACRAW_SOCKET, Sn_MR_MF|Sn_MR_MACRAW);

I am able to get an ip address through dhcp and wireshark shows ARP announcements being broadcast…BUT i am unable to communicate with the server anymore. It is as though the mac filtering is filtering out everything except broadcast packets
Does anyone have any ideas as to what i may be doing wrong?
Thanks

TCP communication is not available in macraw mode. What server are you communicating with? Why should you use macraw mode?

Hello Becky,
I am using the lwip IP stack.
I am retreiving ethernet frames from the wiznet chip (using macraw mode) and i send those ethernet frames into the lwip IP stack for processing.
The lwip IP stack has a webserver built into it.
When i have mac filtering in the wiznet chip turned OFF, i can communicate with the webserver in the lwip IP stack.
When i turn ON mac filtering in the wiznet chip, i am unable to communicate with the webserver in the lwip IP stack.
Hope this helps
Regards
Stuart

Hello soreilly,

I tested the Macfilter function.
In addition, I tested the multicast and broadcast block functions as follows.
socket (sn, Sn_MR_MACRAW, 0, Sn_MR_MF | Sn_MR_BRDB | Sn_MR_MMB | Sn_MR_MMB6);

192.168.0.238 is W6100, and 192.168.0.232 is PC.
As shown in the picture, the Mac filter function worked well.
W6100 received ARP and UDP packets.
image


Perhaps I think it will send data from Web Server to LWIP’s macaddress. The mac address of the destination transmitted from the Web Server must match the macaddress of W6100. Please check it out.

Also, while testing this, I found a bug in io6Library.
It has been modified and uploaded to github, so please reflect it.