file_formats:ekhoivs
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
file_formats:ekhoivs [2024/12/06 18:43] – created ibchadmin | file_formats:ekhoivs [2024/12/06 19:44] (current) – ibchadmin | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== .ekhoivs ====== | ====== .ekhoivs ====== | ||
+ | **Version: | ||
===== Overview ===== | ===== Overview ===== | ||
Line 10: | Line 11: | ||
===== Format Structure ===== | ===== Format Structure ===== | ||
- | The EKHO IVS file is an ASCII-encoded, | + | The EKHO IVS file is an ASCII-encoded, |
Line 19: | Line 20: | ||
The file contains two parts: | The file contains two parts: | ||
- | - a **header** that describes how the data was recorded and processed. | + | * a **header** that describes how the data was recorded and processed. |
- | - a **list** of IV-curves. | + | |
===== Header fields ===== | ===== Header fields ===== | ||
The file header is a JSON object that contains the following required members: | The file header is a JSON object that contains the following required members: | ||
- | * - **File Type** (string) — "Ekho IVS" | + | * **File Type** (string) — "Ekho IVS" |
- | * - **Format Version** (string) — Represents the version of the EKHO IVS format. So, for this document (version 1.0), the value should be " | + | * **Format Version** (string) — Represents the version of the EKHO IVS format. So, for this document (version 1.0), the value should be " |
- | * - **Generated By** (string) — a version number for the conversion software that created it. Each version of each program that generates .ekhoivs files shall have its own unique version string. | + | * **Generated By** (string) — a version number for the conversion software that created it. Each version of each program that generates .ekhoivs files shall have its own unique version string. |
- | * - **Points Per Curve** (number) — the number of points in each IV curve. | + | * **Points Per Curve** (number) — the number of points in each IV curve. |
- | * - **Min Voltage** (number) — the voltage value that corresponds with the current in the first point of the recorded IV curves. | + | * **Min Voltage** (number) — the voltage value that corresponds with the current in the first point of the recorded IV curves. |
- | * - **Max Voltage** (number) — the voltage value that corresponds with the current in the last point of the recorded IV curves. The voltages will be assigned evenly between the Min and Max voltage values. | + | * **Max Voltage** (number) — the voltage value that corresponds with the current in the last point of the recorded IV curves. The voltages will be assigned evenly between the Min and Max voltage values. |
Line 36: | Line 36: | ||
- | * - **Firmware Version** (string) — represents the version of the firmware that created the file, probably directly copied from the EKHORAW file. | + | * **Firmware Version** (string) — represents the version of the firmware that created the file, probably directly copied from the EKHORAW file. |
- | * - **Firmware Build Date** (string) — the **day**, **month**, and **year** that the firmware was compiled. So, for April 3, 2020, should be " | + | * **Firmware Build Date** (string) — the **day**, **month**, and **year** that the firmware was compiled. So, for April 3, 2020, should be " |
- | * - **Controller Version** (string) — the version of the teensy that produced the file. Something like " | + | * **Controller Version** (string) — the version of the teensy that produced the file. Something like " |
- | * - **Board Version** (string) - the version of the Ekho recorder board used to record the data. | + | * **Board Version** (string) - the version of the Ekho recorder board used to record the data. |
- | * - **Sampling Rate** (number) — the number of samples per second. | + | * **Sampling Rate** (number) — the number of samples per second. |
- | * - **Samples Per Curve** (number) — the number of samples per batch (explanation below). | + | * **Samples Per Curve** (number) — the number of samples per batch (explanation below). |
- | * — **Curve Fitting Technique** (string) — a description of the curve fitting technique used to create these curves. Yes, if we know the software versions, we could go back and figure this out, but it would be nice to included it for readability. | + | * **Curve Fitting Technique** (string) — a description of the curve fitting technique used to create these curves. Yes, if we know the software versions, we could go back and figure this out, but it would be nice to included it for readability. |
===== IV Curves ===== | ===== IV Curves ===== | ||
Each IV Curve is a JSON Object, with the following members: | Each IV Curve is a JSON Object, with the following members: | ||
- | * - **TimeStamp** (number) — the time (in milliseconds) since the recording began. This allows for up to 49 days of continuous recording in one file. | + | * **TimeStamp** (number) — the time (in milliseconds) since the recording began. This allows for up to 49 days of continuous recording in one file. |
- | * - **Currents** (array of numbers) — This array stores the currents, in amps, for the IV curve. The length of this array needs to match the **Points Per Curve** listed in the header. | + | * **Currents** (array of numbers) — This array stores the currents, in amps, for the IV curve. The length of this array needs to match the **Points Per Curve** listed in the header. |
file_formats/ekhoivs.1733510581.txt.gz · Last modified: 2024/12/06 18:43 by ibchadmin