TOB1

TOB1 files can be generated by LoggerNet when outputting data files to the PC. This binary file format is typically only used when it is essential to minimize the file size or when other software requires this format. It has the following structure:

ASCII header line 1
ASCII header line2
ASCII header line3
ASCII header line 4
ASCII header line5
Binary Records

An example of a TOB1 ASCII header:

"TOB1","STATION","CR9000","1000","1.00","CPU:BIG.DLD","25871","VALUES"
"SECONDS","NANOSECONDS","RECORD","Array(1)","Array(2)","Fast","my_string"
"","","RN","mVolts","mVolts","mVolts"
"","","","Smp","Smp","Smp"
"ULONG","ULONG","ULONG","IEEE4","IEEE4","FP2","ASCII(25)"

Header line one describes the file environment with the following eight fields:

  • Data file type (TOB1).

  • Station name (STATION). (Note that, by default, the station name is the name given to the datalogger in the network map. If the Use Reported Station Name check box is selected, the station name from the Status Table will be used.)

  • Model name of the datalogger (CR9000).

  • Serial number of the datalogger (1000).

  • Operating system on the datalogger (1.00).

  • Name of the program running in the datalogger (CPU:BIB.DLD).

  • Signature of the program running in the datalogger (25871).

  • The name of the datalogger table (VALUES).

Header line two consists of a set of comma-delimited strings identifying the names of the fields in the table of the datalogger program.

Header line three describes the units associated with each field in the record. Units are optional and are specified in the datalogger program, if included. If no units are provided in the program, then an empty string placeholder is left in this line for that specific field.

Header line four describes the processing performed in the datalogger to produce the value for each field in the record; for example, sample, average, min, max, etc. If there is no known processing for a field, that field will be assigned an empty processing string. There will be one value on this line for each field name given on header line two.

Header line five describes the data type for each field and supports the following values: IEEE4, IEEE8, FP2, ULONG, LONG, SecNano, BOOL, and ASCII(len).

NOTE: BOOL is a single-byte Boolean value that represents true as 0xFF and false as 0x00. The four-byte CRBasic BOOLEAN data type will be converted to the one-byte BOOL.

Each data record following the header is a sequence of binary values. The length of each value is determined by the data type assigned to it in header line five and the length of the entire record is the sum of the individual data value lengths. There are no characters that separate records so the application that reads the TOB1 file must understand the file header so that the record length can be calculated.

The timestamp and record number for each record are an optional output in a TOB1 file. If these elements are present, a “SECONDS”, “NANOSECONDS”, and “RECORD” column will be generated as names in the field list of header line two.