Hi,
Two issues:
1) You have modified the PHY only at one node
// generate wifiphy for frequency and channelwidth
Ptr<WifiNetDevice> wifiNetDevice = DynamicCast<WifiNetDevice>(devices.Get(0) );
Ptr<WifiPhy> wifiPhy = wifiNetDevice->GetPhy();
// wifiPhy->SetAttribute("ChannelNumber", UintegerValue(172));
wifiPhy->SetAttribute("Frequency", UintegerValue(5890) );
wifiPhy->SetAttribute("ChannelWidth", UintegerValue(10) );
Here you modify the PHY only at one NetDevice, which will create disparity among the two nodes.
There is no need for such configuration, as the 802.11p helper you use sets the appropriate values
49 "NonUnicastMode",
StringValue (
"OfdmRate6MbpsBW10MHz"));
2) The second issue is with your packet sink. Currently it only listens to a single unicast IP. Hence the broadcast messages are not received (correctly).
If you want to receive those as well, try the Anycast address when setting up your PacketSink.