Understanding Message filter in CAN
While reading about the CAN bus basics, one gets a clear picture of its structure and functioning. The CAN bus is a simple architecture where multiple nodes are connected on the same two wired structures. The transmitted data follows the arbitration process, and the signal transmitted is received by every single node. It is on the nodes to decide if they wish to accept or reject any data that is being transmitted to them on the CAN bus.
This process might feel like it gives all the nodes a ‘master importance’, but it only adds to unwanted traffic towards every module on the bus in practicality. When connected to a CAN bus, the data logger acts as another node. Logging all the traffic in the CAN bus fills up the internal storage quickly. Finally, you may end up having no storage left to log the data when the vital/required data is transmitted in the bus.
The message filters are just easy filters implemented to restrict the data logged by the data logger. Then, depending upon the importance of the data, the receiving end can focus on the vital message.
The CAN frames are filtered using an Identifier or a range of identifiers. A firmware that filters out the non-required messages is present in the CAN bus interface. It uses acceptance filters for this process.
The significant advantage to this is
Prioritise the data required rather than logging everything unnecessarily.
Saves storage space in the data logging device.
Influx ReXgen Datalogger and Influx Module Analyser software support various CAN Message filters, including J1939, the configuration of these filters can be done manually or using DBC file.
This will get clearer with the help of a few examples: The CAN bus in our example has messages with 4 CAN IDs,
If we don’t use the CAN ID filter and log only the message with the CAN ID, which is crucial for our analysis, the log file ends up occupying more space, and analysis becomes difficult.
4 Minutes of data log without a filter is around 1 MB in size.
If we are interested only in a message from CAN ID 0x101, we can configure the filter to log only the messages with CAN ID 0x101.
Now the datalog firmware accepts and saves only messages appearing in the CAN bus with ID 0x101.
Now logger is recording only the CAN Message, which is crucial for your analysis. The resulting data log size is also very low.
4 Minutes of data log with filter is around half the size of the log without CAN filter.
For more details on our data loggers, please click here.