How to rescue alive data from broken data files written in CF card
2008/10/12 CLIMATEC, Inc. support dev.
If you can not use this method, please contact to us
First of all >> make backup file from original raw file and make compressed file from raw file.
If TOB3/2 files made on CF card by CR1000, CR3000 or CR5000 have error,
please refer this method.
If you are not familiar on computer technique, please contact to us.
( In this comment, use “h” for hex and use “x” for decimal format. )
Ii is recommended to use flash memory for ex. USB memory drive to do this method for fast processing.
Ex.1) Skip of unused data after header( before first frame )
0) Basic file format
TOB3/TOB2 file format used in CR1000 etc is bellow.
FILE structure is bellow.
Frame structure is bellow
Frame header(TOB3:12byte, TOB2:8byte : time of first data and record number)
Data record(binary 2 or 4 byte ) * n of record in frame
Frame footer(4byte, normal, Mark or EOF)
1)Read data header by RDtob
You can read TOB2/3 file whenever there is any error in file.
In this example, “Start time” and “End time” are strange(year 2026).
From header information, we can get followings.
Number of record in a frame:45
From above information, 1 frame length is
2) Research by Binary editor
You can get binary editor(Japanese version) from here(Stirling)
1) Normal data file example
From 200ｈ, data frame is started.
200-20Bh First 12 bye: Header of frame( time stamp)
In header frame, “00 00 00 00” is included.
200h + 1006x(3DEh) = 5EEh
5EA-5EDh: frame footer(4 byte) of 1st frame
5EE-60Fh: frame header(12byte) of 2nd frame
610-625h: DATA46(1st data in 2nd frame)
2)Incorrect data example
200h: there is no “00 00 00 00” in frame header
It can be expected that there is a first header in other place.
So, we try to find header key word “00 00 00 00” by searching option.
We can get following result.
54E-551: Frame footer in before frame
552-55D: Frame header
It seemed data before footer and after header of frame.
So, we should find next frame(search again), and we get next header(below).
940-94Bh: frame header
940h-552h= 3FEh = 1006x
So, we got the frame interval is just 1006 bye.
If we skip 200h to 551h(850x byte), we have possibility to get data.
3) Skip data by RDtob
3-1) Read start data
Click EDIT button.
It will be appear new window, please input numeric 850 for skip data,
and click OK button.
Take off Check mark on “Auto search end of data” option.
And start reading again from data file by Open TOB2/3 button.
This time, we can read data normally.
Start of data frame is ok.
Next is searching of end of data
3-2) Searching of end of data
If “Auto search end of data” option does no work well,
please find end of data by hand method.
Take off Check mark on “Data Read” and click “NextMark>>” button.
We can see counter and time stamp increment in text box of Frame Header.
In above option, computer can read speedy.
If computer read after data, there appear time stamp as “1990/01/01”,
then click stop button.
Next, click “<<Prev Mark” button, after a while, you can see time stamp.
Repeat above process and use “Next frame>” or “Prev frame” for a step reading.
To slowdown reading, check mark “Data read” option.
It takes more time to read data, so you can easily find the last data.
Next frame> one frame forward reading
Next Mark>> continuous readnig( Prev is reverse reading)
Input specific frame number below “STOP” button and click “Next Mark>>” button,
you can jump to the specific frame.
3-3) Output data to file
Input End text box of “Out Frame ” option.
After that, please click “Output to File” button to write collected data to files.
200h in Hex is below.
200h in HEX is 512x in decimal number.
It can easily convert only click decimal number button.
Addition or subtraction can be done on each mode.
Mixed(HEX or Oct) addition or subtraction also can be done on each mode