Resource library

Uploading your own hardware

The general upload workflow for PAN and OND files, plus how to fix common upload failures.

Most users only need to upload hardware when the SolarLayout managed catalog doesn't have the exact module or inverter they need. The per-format details (where to source the file, what gets parsed out) live on PAN files and OND files — this page covers the general workflow and the upload failures you might hit.

The general workflow

Open the Resource library

In the Home sidebar, click Resource library. The Modules (.PAN) and Inverters (.OND) tabs each have their own Upload button in the table toolbar.

Click the matching Upload button

Pick the tab matching your file:

  • Modules (.PAN) tab → click Upload .PAN for solar modules.
  • Inverters (.OND) tab → click Upload .OND for inverters.

The native file picker opens, filtered to the right extension. The filter is case-insensitive — .PAN, .pan, .Pan are all accepted.

Pick the file

Select your .PAN or .OND file. SolarLayout reads the file on the server, extracts the catalog fields, and writes a new row to your account library. The Upload button shows "Uploading…" while the request is in flight.

The file size cap is 256 KiB. .PAN and .OND files are typically 1–4 KB — the cap exists to bounce wrong-file picks (e.g. a 12 MB datasheet PDF) with a friendly message instead of a server timeout.

Confirm the row

The uploaded hardware appears at the top of the relevant tab without a Managed chip (it's in your tier; only managed-catalog rows get that chip). It's now available in every project's hardware picker.

File compatibility

SolarLayout reads the industry-standard PAN and OND text formats used by every major module and inverter manufacturer. The parser is format-version-agnostic: it walks the PVObject_=pvModule (for .PAN) or PVObject_=pvGInverter (for .OND) blocks and reads named fields. As long as the file has the right object header and the required identifiers (Manufacturer, Model, and PNom for modules / PNomConv for inverters), it imports.

What gets validated on upload

The importer's checks are deliberately narrow:

  • Right object header — the file must contain PVObject_=pvModule (for .PAN) or PVObject_=pvGInverter (for .OND). Files without it are rejected with "Not a valid PAN file" or "Not a valid OND file".
  • Required identifiers presentManufacturer, Model, and the primary rating (PNom / PNomConv) must be readable. Other fields are optional and stored as null if absent.
  • Size cap — under 256 KiB.

What's not validated in v0.1:

  • No physical-plausibility check — a 10 kWp single module or a 100 MW inverter will import without complaint if the file parses. Sanity-check parsed values against the datasheet before using the row in a project.
  • No duplicate detection — uploading the same Manufacturer + Model twice creates two rows. The second upload is not blocked. Use the row-action menu (three-dot icon on user-tier rows) to delete the older copy if you want to clean up.

Common upload failures

"Not a valid PAN file" / "Not a valid OND file"

The file doesn't contain the expected object header. Causes:

  • The file is the wrong type for the tab — a .PAN clicked from the Inverters tab, or vice versa.
  • The file was exported from a tool that uses a non-standard format.
  • The file is corrupted.

Fix:

  1. Confirm the file extension matches the tab.
  2. Re-download from the manufacturer.
  3. Open the file in a plain-text editor and check the first line — it should contain something like PVObject_=pvModule (for .PAN) or PVObject_=pvGInverter (for .OND).

"Required field missing: <field>"

The file is structurally valid but doesn't include one of the three required identifiers — Manufacturer, Model, PNom (modules) or PNomConv (inverters).

Fix: open the file in a text editor and look for the named field. .PAN and .OND files are plain text. If the field is present but renamed (some old / non-standard exports use different keys), the cleanest path is to ask the manufacturer for a fresh standard export.

"<filename> is <size> — too large for a .PAN/.OND file"

The file is over 256 KiB. .PAN and .OND files are typically 1–4 KB — a multi-MB file is almost always a datasheet PDF or other document picked by mistake.

Fix: confirm the file extension and contents. If you actually do need to upload a very large hardware file (rare; we haven't seen one in the wild), email support with the file attached.

When to ask for help

The pattern that says "this needs help, not more reading":

  • Repeated upload failures with the same file across multiple re-downloads.
  • File from a major manufacturer (Waaree, Vikram, Adani, Premier, Sungrow, Sineng, etc.) that SolarLayout can't read — that's a bug we want to know about, not a user problem.
  • Hardware you need but can't find a PAN/OND for anywhere.

In any of those, email support with the file attached. Most uploads we can't read get fixed in the next release.

On this page