Prototype. BattINFO is in active development, so content and tools are still changing.
BattINFO

Step 1 of publishing your data →

Convert your cycler data

Every instrument speaks its own format, the first wall between your data and anyone else’s tools. ws.convert() turns what your cycler wrote into BDF: one tidy, documented table format that every later step (and every colleague) can read.

in your terminal
import battinfo
ws = battinfo.workspace(".")

ws.convert()          # NEWARE / Biologic / Excel / MATLAB auto-detected
ws.convert("*.csv")   # Digatron / Landt / Novonix / generic CSV exports
# -> bdf/*.bdf.csv    one tidy, documented table format for all of them

What converts

What the converter can do today.

This table is checked against the library’s own guidance in CI, so it cannot overpromise.

Auto-detected, just run ws.convert()

ExtensionInstrument
.ndaxNEWARE
.ndaNEWARE (legacy)
.mptBiologic (EC-Lab text export)
.xlsxExcel
.matMATLAB

With a pattern, ws.convert("*.csv")

ExtensionInstrument
.csvDigatron / Landt / Novonix / generic CSV
.txtBasytec / Landt text

Export a CSV first

ExtensionInstrument
.resArbin
.mprBiologic binary
rawMaccor

Proprietary binaries: export CSV from the vendor software, then ws.convert("*.csv").

What you get back

bdf/*.bdf.csv, cycle, step, time, voltage, current, and capacity columns under one documented schema (run ws.bdf_columns() for the full list). From there, the publishing journey attaches the converted file to a linked test record with provenance intact.

The semantic layer

Want JSON-LD? See what the real transform emits.

Records become EMMO-aligned JSON-LD at publish time. The examples gallery shows genuine before/after pairs, generated by the actual Python transform, drift-checked in CI, never mocked in the browser.