CSV decoder

The CSV decoder stores the decoded output as CSV files.

The CSV output format has wide tool support but is generally inefficient (slow and big).


Output

The CSV output data-schema always include an epoch-timestamp column named t. The remaining column names are constructed from the database used for decoding, as in the example below:

t,Speed,SpeedAccuracy,SpeedValid
1650636883.519250,0.010000,2.006000,1.000000
1650636884.090300,0.010000,2.152000,1.000000
1650636885.041350,0.010000,2.290000,1.000000
1650636886.090500,0.010000,2.419000,1.000000

Note

Output values are always formatted as decimal numbers with 6 decimal places.

If specific values exceed the MIN/MAX as defined in the database, they are included in the output as NaN, as in the example below:

t,Speed,SpeedAccuracy,SpeedValid
1650636883.519250,0.010000,NaN,1.000000
1650636884.090300,0.010000,NaN,1.000000
1650636885.041350,0.010000,NaN,1.000000
1650636886.090500,0.010000,NaN,1.000000

Warning

Output rows are skipped if all values are NaN.


Performance

Below table provides some performance numbers for different input / output scenarios.

Input records

Input size total (MB)

Input files (#)

Output size total (MB)

Output files

Exe time (s)

Exe peak memory (MB)

Note

10.000.000

190

1

858

1

11

193

One input file one output file

10.000.000

292

1000

858

1

10

3

Many input files one output file

10.000.000

190

1

858

1000

11

199

One input file many output files

Note

All tests have been performed using default input arguments on a Intel Xeon @ 3.4 GHz running Linux (x86_64)


Changelog

2.4.0

  • Change CLI version output

2.3.2

  • Fixed

    • Issue with merge of PGN source/destination addresses sometimes resulting in invalid output files

2.3.1

  • Added

    • DBC, support for float and double data types

    • Option to merge PGN source-address outputs

    • Option to merge PGN destination-address outputs

  • Changed

    • DBC, message with name “VECTOR__INDEPENDENT_SIG_MSG” ignored

    • DBC, empty attribute “BusType” now defaults to CAN-bus

    • Improved error text on invalid output dir

    • Improved error text on colliding message keys

2.2.2

  • Added

    • Support for signed data type

2.2.1

  • Added

    • Input argument dbdump to dump loaded database to JSON-file

  • Fixed

    • Better handling of special characters in DBC-file

2.1.1

  • First release


Download

Windows AMD64 / x86-64 (64-bit)

  • 2.3.2.zip (MD5: f2d213a3c0269c45830b338081a2f28c)
  • 2.3.1.zip (MD5: eb85dc50fe24f2889774a31d731ef0c2)
  • 2.2.2.zip (MD5: f7b16cc4efa3c5777606a2fcf737056b)
  • 2.2.1.zip (MD5: a025a8ce4ebe245690a1e92b66a100c3)
  • 2.1.1.zip (MD5: 6409cb1252463cde39f358532887c5e1)

Linux AMD64 / x86-64 (64-bit)

  • 2.3.2.zip (MD5: cfbf355bbd013d9e41807d9912569538)
  • 2.3.1.zip (MD5: fa826aa7f69ffae7b59446f8d8c2cd53)
  • 2.2.2.zip (MD5: ed51c25e18c4c078e118961b4ccc4c45)
  • 2.2.1.zip (MD5: 81016fe0e14f9754d2c29f761daee3f6)
  • 2.1.1.zip (MD5: e8e7b58a17157342994b1f489ab275e6)

Linux ARM64 (64-bit)

  • 2.3.2.zip (MD5: 1de3a3ee3835ba380a477bf32d828d85)
  • 2.3.1.zip (MD5: aa2eb80f940fdebef03a49ce5b49de2c)
  • 2.2.2.zip (MD5: 7b53828bafe730731b1fae7463e028b2)
  • 2.2.1.zip (MD5: 466f25137740764b4a34487aca1745d5)
  • 2.1.1.zip (MD5: b7d2d929a38d12f7dfcc72464bacc689)