06-04-2012 02:37 AM - edited 06-04-2012 02:39 AM
Hello,
i use DIAdem 11.1 Service Pack 1 and i have a problem when i try to convert CAN Data ( in Vector BLF Format) into TDM Files. Always when i start the conversion i get the following error message:
215 09:13:39 Error:
Error in <NoName(1).VBS> (Line: 48, Column: 5):
CAN Converter error: Cannot create TDM file with the extended settings. Refer to the DIAdem logfile for more information.
(Error confirmed with the "OK" key.)
216 09:15:38 Info:
The script is finished.
I use the following script for the conversion (but i get the same error message when i use the Convert Dialog):
Option Explicit 'Forces the explicit declaration of all the variables in a script. Dim aFoundFiles 'Array of logfiles Dim iCount 'Counter for existing logfiles Dim sLogFileFolder 'Logfile folder Dim sDbcFileFolder 'Dbc file folder Dim sResultFileFolder 'Result file folder (tdm) Dim sLogFileExt 'Logfile extension Dim sLogFileName 'Currently converted logfile 'Settings Call CANToTDM.Clear() CANToTDM.BusDbConfig.Name = "CAN converter configuration" CANToTDM.BusDbConfig.Description = "Convert logfiles of one folder" CANToTDM.ResultSettings.TimeFilter.Active = False CANToTDM.ResultSettings.BusFilter.Active = False CANToTDM.ResultSettings.SequenceChannel = True CANToTDM.ResultSettings.EnumSubstitution = True sLogFileFolder = "C:\Users\th75vo\Desktop\" sDbcFileFolder = "C:\Program Files\Vector ICD2DBC\Bin\" sResultFileFolder = "C:\Users\th75vo\Desktop\" sLogFileExt = "*.blf" CANToTDM.LogSettings.FileType = eLogFileTypeVBLF Call CANToTDM.BusDbConfig.Buses.Add("CANBus1", 1) Call CANToTDM.BusDbConfig.Buses("CANBus1").DbFiles.Add(sDbcFileFolder & "all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CANBus2", 2) Call CANToTDM.BusDbConfig.Buses("CANBus2").DbFiles.Add(sDbcFileFolder & "all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CANBus3", 3) Call CANToTDM.BusDbConfig.Buses("CANBus3").DbFiles.Add(sDbcFileFolder & "all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CANBus4", 4) Call CANToTDM.BusDbConfig.Buses("CANBus4").DbFiles.Add(sDbcFileFolder & "all.dbc") ' End of settings 'Convert files aFoundFiles = DirListGet(sLogFileFolder, sLogFileExt, "filename", "FullFilenames") If IsArray(aFoundFiles) Then For iCount = Lbound(aFoundFiles) to Ubound(aFoundFiles) Call CANToTDM.LogSettings.LogFiles.RemoveAll Call CANToTDM.LogSettings.LogFiles.Add(aFoundFiles(iCount)) sLogFileName = FileNameSplit(aFoundFiles(iCount),"N") CANToTDM.ResultSettings.ResultFile = sResultFileFolder & sLogFileName & ".tdm" Call CANToTDM.Convert() Next End If
I have no idea what the reason for the error might be. The colleague who gave me the .blf logfile and the .dbc database files told me, that the conversion works fine for him on one pc, but on another pc he gets the same error message i get. Maybe you can help me?
Thank You,
Henning Paulsen
06-04-2012 04:32 AM
Hello,
please have a look to the DIAdem log file. Could you please post the content of the Diadem log file from the last program start to the result of the conversion?
Best regards
Hans Beckers
06-04-2012 05:47 AM
Hello,
here is the text from the logfile, it`s pretty much what i already posted. That`s part of my confusion, why does the logfile tell me to have a look at the logfile?
124 CAN Converter note: Started converting the following logfile: c:\Users\th75vo\Desktop\Test_0016_20022012_L8.blf
125 CAN Converter note: The number of data records is: 706134.
126 11:10:21 Error:
CAN Converter error: Cannot create TDM file with the extended settings. Refer to the DIAdem logfile for more information.
Best regards,
Henning Paulsen
06-04-2012 10:06 AM
Hello,
we didn't see such a behavior before. It might be, that the directory for the result files is write protected, or the disc space is to small.
The original error message is always displayed in the logfile. Therefor you find the sentence "Refer to the DIAdem logfile for more information".
But in your case no additional message is given.
You can get the whole settings of the can converter if you press "ctrl a" in the configuration dialog. It might be helpful, if you could paste this code to this forum.
Best regards
Hans Beckers
06-05-2012 01:11 AM - edited 06-05-2012 01:13 AM
Hello and thanks for your support!
The directory is not write protected and i have like 90GB of free disk space.
This is the code i get when i press "ctrl a" in the config dialog:
Call CANToTDM.Clear() CANToTDM.LogSettings.FileType = eLogFileTypeVBLF Call CANToTDM.LogSettings.LogFiles.Add("c:\Users\th75vo\Desktop\Test_0016_20022012_L8.blf") CANToTDM.BusDbConfig.Name = "AllDBCfiles" Call CANToTDM.BusDbConfig.Buses.Add("CAN1", 1) Call CANToTDM.BusDbConfig.Buses("CAN1").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CAN2", 2) Call CANToTDM.BusDbConfig.Buses("CAN2").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CAN3", 3) Call CANToTDM.BusDbConfig.Buses("CAN3").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\all.dbc") Call CANToTDM.BusDbConfig.Buses.Add("CAN4", 4) Call CANToTDM.BusDbConfig.Buses("CAN4").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\all.dbc") CANToTDM.ResultSettings.ResultFile = "c:\Users\th75vo\Desktop\CANresult\CANConverter.tdm" CANToTDM.ResultSettings.SequenceChannel = False CANToTDM.ResultSettings.TimeFilter.Active = False CANToTDM.ResultSettings.BusFilter.Active = False Call CANToTDM.Convert()
Do you have any idea what the "extended settings" are, to which the error message is refering?
EDIT: I did just notice that a .tdx file with size 0 is created in the result directory (CANConverter.tdx in this case). Maybe that helps?
Best Regards,
Henning Paulsen
06-05-2012 02:17 AM
Hello,
I have tested a conversion of blf files with DIAdem 11.1SP1 and it worked fine.
I offer you, to test this version against your files, if you are able to send them to me (ftp://ftp.ni.com.incoming). I need the DBC file and one blf file.
You could also test the conversion with the trial version of DIAdem 2011. You can get this version for a 30 day trial at: http://www.ni.com/diadem/try/
Best regards
Hans Beckers
06-05-2012 03:27 AM
Hello,
i don`t have the possibility to send you the files over the ftp service. But i did just download the trial version of DIAdem 2011. The conversion works fine for me with this version!
But i guess i need to get it working with Version 11.1 SP1.
Best Regards,
Henning Paulsen
06-05-2012 04:03 AM
Hello,
sorry for the double post. The only difference i see between the conversion in Version 2011 compard to Version 11.1SP1 is the IdMode that is set for the .dbc files. Maybe that makes an important difference?
Call CANToTDM.Clear() CANToTDM.LogSettings.FileType = eLogFileTypeVBLF Call CANToTDM.LogSettings.LogFiles.Add("c:\Users\th75vo\Desktop\Test_0016_20022012_L8.blf") CANToTDM.BusDbConfig.Name = "Noname" Call CANToTDM.BusDbConfig.Buses.Add("CAN1", 1) Dim oDbFile Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN1").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H43_CAN_SCS_LH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN1").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H44_CAN_SCS_RH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN1").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B10_SCS_CAN_SCS_2.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN1").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B13_SCS_CAN_SCS_1.dbc") oDbFile.IdMode = eDbFileIdModeDefault Call CANToTDM.BusDbConfig.Buses.Add("CAN2", 2) Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN2").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H43_CAN_SCS_LH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN2").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H44_CAN_SCS_RH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN2").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B10_SCS_CAN_SCS_2.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN2").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B13_SCS_CAN_SCS_1.dbc") oDbFile.IdMode = eDbFileIdModeDefault Call CANToTDM.BusDbConfig.Buses.Add("CAN3", 3) Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN3").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H43_CAN_SCS_LH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN3").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H44_CAN_SCS_RH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN3").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B10_SCS_CAN_SCS_2.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN3").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B13_SCS_CAN_SCS_1.dbc") oDbFile.IdMode = eDbFileIdModeDefault Call CANToTDM.BusDbConfig.Buses.Add("CAN4", 4) Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN4").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H43_CAN_SCS_LH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN4").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CPIOM_H44_CAN_SCS_RH_CU.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN4").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B10_SCS_CAN_SCS_2.dbc") oDbFile.IdMode = eDbFileIdModeDefault Set oDbFile = CANToTDM.BusDbConfig.Buses("CAN4").DbFiles.Add("C:\Program Files\Vector ICD2DBC\Bin\CRDC_B13_SCS_CAN_SCS_1.dbc") oDbFile.IdMode = eDbFileIdModeDefault CANToTDM.ResultSettings.ResultFile = "c:\Users\th75vo\Desktop\CANresult\CANConverterneu.tdm" CANToTDM.ResultSettings.EnumSubstitution = False CANToTDM.ResultSettings.SequenceChannel = False CANToTDM.ResultSettings.TimeFilter.Active = False CANToTDM.ResultSettings.BusFilter.Active = False Call CANToTDM.Convert()
Best Regards,
Henning Paulsen
06-05-2012 04:12 AM
Hello,
the idmode is a newer feature to support J1939 bus logs. It is only an addition, which is not relevant for DIAdem 11.1.
Best Regards
Hans Beckers