I have an MF4 file with raw can data and want to decode this to get the physical values. It seems like the decoding of all signals with length 8 (as defined in the dbc file) is working as expected. However, I have a segment in the dbc file that looks like this
BO_ 2381841918 GNSS_PositionData: 51 GNSS
SG_ GNSS_Longitude : 120|64@1- (1E-016,0) [-180|180] "deg" Tester
SG_ GNSS_Latitude : 56|64@1- (1E-016,0) [-90|90] "deg" Tester
that is not being decoded (I cannot find any signals defined in this section after decoding) when trying in asammdf. However, when I decode the data with the same dbc in canoe it works and I can see all data. Also, what I can see in canoe is that the event types for signals of length 8 and length 51 are "CAN frame" and "j1939 frame" respectively. Or more accurately, the signals of longer length have both event types, see image below. canoe_image
Is there any setting in asammdf I'm missing or is it not possible to decode?
Note: As you probably understand I'm no expert on CAN data so if I'm missing something fundamental please inform me!
This is what I've tried in asammdf according to the documentation.
from asammdf import MDF
with MDF(path_to_mdf_file) as mdf:
db = {"CAN": [("GNSS.dbc", 7)]}
extracted_mdf = mdf.extract_bus_logging(database_files=db)
I've also read this question on stackoverflow and I've been looking through the sources (both source_type and bus_type) of all signals in the raw MF4 and cannot really see anything that differs in between groups.