cancel
Showing results for 
Search instead for 
Did you mean: 

Can't send one kind of IGMP msg on an STM32F746G Disco, but other kinds go out, and other protocols' msgs as well. A low-level hardware configuration issue? Not using STM driver.

PDR
Associate III

I can send ARP, UDP, ICMP, and so on, and all the other IGMP messages, but not the IGMP V2 Membership Report messages. Wireshark doesn't show those at all, but does show the others going out. So I've written a low-level driver test that composes the report message as packet content directly and sends that to the netif hardware. No sign of it on Wireshark. If I use the packet import facility of Wireshark it confirms that the packet I am sending is a correct membership report msg. BUT if I change the ether destination hardware address to all zeros, Wireshark sees the message going out. Since Wireshark confirms my non-zero address (when imported) I don't think the non-zero address is wrong. Either the device isn't sending it, or it is but Wireshark isn't seeing it. I assume the former, since Wireshark sees the others. The "good frames sent" ETH_MMCTGFCR register includes it in the count, and there is no error indicated. Now the wrinkle: I'm not using the STM driver, nor the LwIP stack. Instead I'm using a third party driver/stack and have extended it to support IGMP messages. I suspect my config of the MAC peripheral is filtering out the messages with a non-zero ether broadcast address (computed from the group IP address (01:00:5e:7f:4d:4d)), but I don't see any setting for that. I see filtering for incoming msgs, but not outgoing. What am I missing? I've attached the file containing the msg bytes I use when importing it into Wireshark, if that's of interest. As I say, Wireshark confirms it is valid. Any insights would be much appreciated.

0 REPLIES 0