Open battery cycler files without BTSDA, EC-Lab or MITS Pro
Battery testers write their measurements in closed binary formats, and the software that reads them only runs on the lab PC. This converter decodes Neware, BioLogic and Arbin files directly and gives you the same data as a clean CSV with consistent column names and SI units, a per-cycle summary (capacity, Coulombic and energy efficiency, mean voltages, capacity retention), smoothed dQ/dV curves and an Excel workbook with charts — so a collaborator on a Mac or Linux laptop can work with your data, and your analysis scripts only have to understand one layout.
What to upload
| Instrument | Files | Versions checked |
|---|---|---|
| Neware (BTS) | .ndax | BTS 8.0 / 8.0.1 / 9.x, data file versions 2, 5, 11, 14, 16, 17 |
.nda | BTS 7.x, 8 and 9.1, file versions 8, 22, 23, 26, 29, 130 | |
| BioLogic (EC-Lab, BT-Lab) | .mpr | EC-Lab 10.x – 11.62 and BT-Lab 1.7x, old and new (11.50+) layouts |
.mpt | EC-Lab / BT-Lab text exports, . or , decimal separator | |
| Arbin (MITS Pro) | .res | result files from MITS Pro 4.x – 7.x (schemas 1.14 – 20171213) |
Upload the raw file the tester wrote, not a file you exported from it. Several files (up to 20 cells) can be converted together. BioLogic galvanostatic techniques (GCPL, MB, CP, CA, BCD…), cyclic/linear sweep voltammetry, open-circuit and impedance (PEIS/GEIS) files are all accepted.
What you get
- Tidy data (CSV) — every data point, one row each, columns below.
- Cycle summary (CSV) — one row per cycle.
- dQ/dV (CSV) — smoothed incremental capacity for every cycle, charge and discharge.
- Excel workbook — cycle summary with native Excel charts (capacity and Coulombic efficiency vs cycle), the data sheet (up to Excel's 1,048,575 rows), dQ/dV and an Info sheet with the file's metadata and every column explained.
- For several files, a combined cycle summary with one row per cycle and file.
- Impedance files: a CSV with frequency, Z′, −Z″, |Z| and phase.
The preview shows the file's instrument and software version, the number of cycles and points, capacity and efficiency charts, voltage-capacity and dQ/dV curves for a few cycles and the first rows of the table, so you can check the conversion before downloading.
Columns of the tidy CSV
| Column | Unit | Meaning |
|---|---|---|
record | row number | |
time_s | s | test time since the start of the test |
datetime | wall-clock time of the point (instrument local time) | |
cycle | cycle number, 1-based (as the instrument software numbers it, or by the rule you choose) | |
step | running step counter, +1 at every program step | |
step_index | step number in the test program (Neware Step Index, EC-Lab Ns, Arbin Step_Index) | |
step_type | CC_Chg, CV_Chg, CCCV_Chg, CC_DChg, Rest, … (Neware's own; inferred for BioLogic and Arbin) | |
state | charge, discharge or rest | |
current_A | A | current, positive = charge |
voltage_V | V | cell voltage (BioLogic: working-electrode potential Ewe) |
charge_capacity_Ah | Ah | charge passed since the start of the cycle |
discharge_capacity_Ah | Ah | discharge passed since the start of the cycle |
charge_energy_Wh, discharge_energy_Wh | Wh | energy since the start of the cycle |
step_time_s | s | time since the start of the step |
temperature_C | °C | first auxiliary temperature probe, when recorded |
aux<n>_temperature_C, aux<n>_voltage_V | °C, V | further auxiliary channels |
The cycle summary has, per cycle: start/end time, duration, points, charge and discharge
capacity and energy, coulombic_efficiency_pct, energy_efficiency_pct,
capacity_retention_pct, mean charge and discharge voltage (energy ÷ capacity), their
difference (hysteresis), end-of-charge and end-of-discharge voltage, minimum and maximum
voltage, temperature, and specific capacities/energies in mAh/g when the active mass is known.
How the numbers are computed
- Capacity and energy come from the instrument's own counters (Neware, Arbin, BioLogic
dq), accumulated per cycle; only when a file has no counter is the current integrated over time. - Coulombic efficiency = discharge ÷ charge capacity of the same cycle. When the test starts with a discharge (anode half-cells), it is charge ÷ discharge. Brief pulses (e.g. resistance checks) do not decide which comes first.
- Capacity retention is relative to the first complete cycle, or to the cycle you choose.
- dQ/dV: for each cycle and direction the capacity increments are summed into fixed voltage bins (1–10 mV, from the data density, or your setting), divided by the bin width and smoothed with a Gaussian of σ = 1.5 bins. Constant-voltage steps are left out (dQ/dV diverges there). The unsmoothed values are in the CSV too.
- Active mass: taken from the file when the operator entered one (BioLogic, Arbin, Neware .nda); the software's placeholder values are ignored. Enter it in the options to be sure.
Using the files
- Excel: open the
.xlsx; the Charts sheet already plots capacity and Coulombic efficiency. The CSV opens directly too (comma separated,.as decimal point). - Origin: import the CSV with the header line as long names; units are in the column names.
- Python:
pandas.read_csv("cell.csv", parse_dates=["datetime"])orpolars.read_csv("cell.csv", try_parse_dates=True); plotvoltage_Vagainstdischarge_capacity_Ahfor onecycle, or use the cycle summary directly. - MATLAB:
readtable("cell.csv").
Accuracy
Neware conversions were compared point by point with BTSDA exports of the same files (27 files
covering all the file versions above): voltage, current, time and cycle numbers agree to the
export's precision, and per-cycle charge and discharge capacities and energies agree to within
BTSDA's rounding (better than 0.001 % for normal cells). BioLogic .mpr conversions were
compared with EC-Lab's own .mpt exports of 61 files: the recorded columns agree, and cycle
numbers, currents and per-cycle capacities match EC-Lab's. Arbin files were cross-checked value
by value with an independent Access-database reader.
Privacy
Files are processed on our server and deleted when the conversion finishes; the results are deleted automatically after 30 minutes. Nothing is kept or looked at, and operator names, comments and similar free-text fields from the files are not copied into the outputs.
Limitations
- Arbin
.resfrom MITS Pro 4 – 7 (Access database) are supported; the newer MITS 10 formats and Arbin's Excel/CSV exports are not needed here (they are already open). - Neware
.ndaxstores the operator's mass without a unit, so specific capacity is only added for.ndaxwhen you enter the mass. - Excel holds 1,048,575 rows per sheet; longer tests are complete in the CSV.
- Files with more than 20 million data points per file are not accepted online.
- Other brands (Maccor, Landt/Lanhe, Gamry, PalmSens, Ivium…) are not supported yet.