{
  "name": "Solar string sizing JSON endpoint",
  "description": "Returns cold-weather panel Voc, safe series limits, recommended series/parallel wiring, MPPT voltage/current margins, clipping risk, and watch-outs from panel and controller specs.",
  "publisher": {
    "name": "OffGridRVHub",
    "url": "https://www.offgridrvhub.com"
  },
  "source": {
    "endpoint": "https://www.offgridrvhub.com/tools/api/solar-string-sizing.json",
    "fullCalculator": "https://www.offgridrvhub.com/tools/solar-string-sizing-calculator",
    "assumptions": "https://www.offgridrvhub.com/tools/calculator-assumptions",
    "documentation": "https://www.offgridrvhub.com/tools/calculator-api"
  },
  "caveat": "This is a planning estimate for RV education and comparison. It is not electrical, plumbing, safety, or installation advice.",
  "input": {
    "panelCount": 4,
    "panelWatts": 200,
    "panelVoc": 24.3,
    "panelVmp": 20.4,
    "panelIsc": 10.4,
    "panelImp": 9.8,
    "controllerMaxVoc": 100,
    "controllerMaxInputAmps": 40,
    "controllerMaxOutputAmps": 50,
    "batteryVoltage": 12,
    "coldestTempF": 14,
    "vocTempCoefficientPercentC": 0.28
  },
  "result": {
    "coldVocPerPanel": 26.7,
    "coldVocFactor": 1.098,
    "maxSafeSeriesPanels": 3,
    "recommendedConfig": {
      "seriesCount": 2,
      "parallelStrings": 2,
      "usedPanelCount": 4,
      "unusedPanelCount": 0,
      "arrayWatts": 800,
      "arrayVmp": 40.8,
      "coldVoc": 53.4,
      "arrayIsc": 20.8,
      "estimatedOutputAmps": 64,
      "clippedWatts": 200,
      "voltageMarginPercent": 47,
      "inputCurrentMarginAmps": 19.2,
      "outputCurrentMarginAmps": -14,
      "isSafe": true,
      "issues": [
        "Array wattage can exceed the entered controller output-current limit and may clip."
      ]
    },
    "configs": [
      {
        "seriesCount": 2,
        "parallelStrings": 2,
        "usedPanelCount": 4,
        "unusedPanelCount": 0,
        "arrayWatts": 800,
        "arrayVmp": 40.8,
        "coldVoc": 53.4,
        "arrayIsc": 20.8,
        "estimatedOutputAmps": 64,
        "clippedWatts": 200,
        "voltageMarginPercent": 47,
        "inputCurrentMarginAmps": 19.2,
        "outputCurrentMarginAmps": -14,
        "isSafe": true,
        "issues": [
          "Array wattage can exceed the entered controller output-current limit and may clip."
        ]
      },
      {
        "seriesCount": 3,
        "parallelStrings": 1,
        "usedPanelCount": 3,
        "unusedPanelCount": 1,
        "arrayWatts": 600,
        "arrayVmp": 61.2,
        "coldVoc": 80.1,
        "arrayIsc": 10.4,
        "estimatedOutputAmps": 48,
        "clippedWatts": 0,
        "voltageMarginPercent": 20,
        "inputCurrentMarginAmps": 29.6,
        "outputCurrentMarginAmps": 2,
        "isSafe": true,
        "issues": []
      },
      {
        "seriesCount": 1,
        "parallelStrings": 4,
        "usedPanelCount": 4,
        "unusedPanelCount": 0,
        "arrayWatts": 800,
        "arrayVmp": 20.4,
        "coldVoc": 26.7,
        "arrayIsc": 41.6,
        "estimatedOutputAmps": 64,
        "clippedWatts": 200,
        "voltageMarginPercent": 73,
        "inputCurrentMarginAmps": -1.6,
        "outputCurrentMarginAmps": -14,
        "isSafe": false,
        "issues": [
          "Array short-circuit current exceeds the entered controller PV input-current limit.",
          "Array wattage can exceed the entered controller output-current limit and may clip."
        ]
      }
    ],
    "safeConfigCount": 2,
    "controllerUsableWatts": 600,
    "recommendedControllerOutputAmps": 70,
    "verdictTitle": "The string layout is safe, but the controller may clip",
    "verdictDetail": "2S2P uses 4 panels, reaches about 53.4V cold Voc, and sends about 20.8A Isc into the controller.",
    "recommendedNextMove": "Decide whether clipping is acceptable or step up to a larger controller before buying hardware.",
    "watchOuts": [
      "Use the controller's PV open-circuit voltage limit, PV short-circuit/input-current limit, and output-current limit from the manual. Those are not the same number.",
      "Cold-weather voltage is based on the panel Voc temperature coefficient and an entered low temperature. Use local record lows if the RV sits outside in winter.",
      "This screens string math only. It does not size fuses, combiner boxes, disconnects, rooftop wiring, grounding, or code-required protection.",
      "The controller may clip meaningful power in strong sun. Clipping is not always bad, but it should be intentional."
    ]
  }
}