Suppose all nodes in a CAN network are configured using acceptance filters to rx packets that are addressed only to them. Ex: Node A configured to rx packets addressed only to "A" in the 11bit id field and so on.
Scenario:If there are 4 nodes A,B,C,D.
Quest 1: If A addresses a packet to E(not a valid id). Will node A's ACK flag be set indicating that a message has been Acknowledged by a node? i.e if a message is not accepted by an acceptance filter,will, whether a message has been rxd or not be known to the sender.
Quest 2(dependent on quest 1): If A addresses a packet to D(valid id). Acknowledgement of the message indicates that only D has successfully received the message? Or, does it mean that all nodes received the message though their Acceptance filters are configured to rx only their specific id's?
Forgive me guys,im a bit confused here :)
CAN frame acknowledgement happens on the "data link layer" (Layer 2 of the OSI model), it has nothing to do with acceptance filtering.
All nodes that correctly receive a message (regardless of acceptance filtering) will acknowledge the message.