pvsld 0.6.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (113) hide show
  1. pvsld/__init__.py +21 -0
  2. pvsld/_data/datasheets/records/.gitkeep +0 -0
  3. pvsld/_data/datasheets/records/conductors/.gitkeep +0 -0
  4. pvsld/_data/datasheets/records/conductors/viakon-pv-wire-2000v.yaml +41 -0
  5. pvsld/_data/datasheets/records/inverters/.gitkeep +0 -0
  6. pvsld/_data/datasheets/records/inverters/growatt-min-tl-x2.yaml +47 -0
  7. pvsld/_data/datasheets/records/inverters/huawei-sun2000-ktl-l1.yaml +51 -0
  8. pvsld/_data/datasheets/records/modules/.gitkeep +0 -0
  9. pvsld/_data/datasheets/records/modules/etsolar-et-m672bh.yaml +39 -0
  10. pvsld/_data/datasheets/records/modules/jinko-jkm-60hl4.yaml +39 -0
  11. pvsld/_data/datasheets/records/modules/jinko-jkm-66hl4m-bdv.yaml +39 -0
  12. pvsld/_data/datasheets/records/protection/.gitkeep +0 -0
  13. pvsld/_data/datasheets/records/protection/eaton-bussmann-pv-10x38.yaml +47 -0
  14. pvsld/_data/datasheets/records/protection/littelfuse-spf.yaml +44 -0
  15. pvsld/_data/datasheets/records/protection/schneider-acti9-c60pv-dc.yaml +40 -0
  16. pvsld/_data/datasheets/records/protection/squared-qo-2p.yaml +50 -0
  17. pvsld/_data/datasheets/records/protection/suntree-siso-40.yaml +43 -0
  18. pvsld/_data/datasheets/records/protection/suntree-sl7n-63.yaml +61 -0
  19. pvsld/_data/examples/residential_7p7kwp.yaml +127 -0
  20. pvsld/_data/plugins/pv-unifilar/skills/catalogo/SKILL.md +30 -0
  21. pvsld/_data/plugins/pv-unifilar/skills/diagrama/SKILL.md +39 -0
  22. pvsld/_data/plugins/pv-unifilar/skills/pro/SKILL.md +35 -0
  23. pvsld/_data/sheet_templates/a3_plantilla_v1.dxf +9544 -0
  24. pvsld/_data/symbols/pvsld-symbols.dxf +62244 -0
  25. pvsld/backends/__init__.py +9 -0
  26. pvsld/backends/base.py +40 -0
  27. pvsld/backends/dxf.py +377 -0
  28. pvsld/backends/preview.py +147 -0
  29. pvsld/backends/readback.py +369 -0
  30. pvsld/catalogue/__init__.py +91 -0
  31. pvsld/catalogue/cli.py +259 -0
  32. pvsld/catalogue/common.py +90 -0
  33. pvsld/catalogue/conductors.py +119 -0
  34. pvsld/catalogue/errors.py +37 -0
  35. pvsld/catalogue/inverters.py +368 -0
  36. pvsld/catalogue/local.py +199 -0
  37. pvsld/catalogue/modules.py +242 -0
  38. pvsld/catalogue/protection.py +563 -0
  39. pvsld/catalogue/registry.py +302 -0
  40. pvsld/cli.py +678 -0
  41. pvsld/core/__init__.py +15 -0
  42. pvsld/core/calc.py +495 -0
  43. pvsld/core/diagram.py +532 -0
  44. pvsld/core/layers.py +69 -0
  45. pvsld/core/layout.py +1662 -0
  46. pvsld/core/layout_sheet.py +684 -0
  47. pvsld/core/model.py +556 -0
  48. pvsld/core/policy.py +62 -0
  49. pvsld/core/rules.py +585 -0
  50. pvsld/core/severity.py +13 -0
  51. pvsld/core/sheet.py +39 -0
  52. pvsld/core/tables.py +255 -0
  53. pvsld/core/validation.py +109 -0
  54. pvsld/design/__init__.py +17 -0
  55. pvsld/design/pipeline.py +296 -0
  56. pvsld/design/pro.py +743 -0
  57. pvsld/design/quick_template.yaml +72 -0
  58. pvsld/finishers/__init__.py +32 -0
  59. pvsld/finishers/console_log.py +189 -0
  60. pvsld/finishers/core_console.py +613 -0
  61. pvsld/finishers/fake.py +119 -0
  62. pvsld/finishers/outputs.py +266 -0
  63. pvsld/mcp/__init__.py +18 -0
  64. pvsld/mcp/__main__.py +8 -0
  65. pvsld/mcp/catalogue_tool.py +114 -0
  66. pvsld/mcp/design_tool.py +369 -0
  67. pvsld/mcp/handshake.py +84 -0
  68. pvsld/mcp/models.py +219 -0
  69. pvsld/mcp/preview.py +87 -0
  70. pvsld/mcp/prompts.py +66 -0
  71. pvsld/mcp/sandbox.py +162 -0
  72. pvsld/mcp/server.py +1067 -0
  73. pvsld/mcp/sizing_tools.py +273 -0
  74. pvsld/py.typed +0 -0
  75. pvsld/report/__init__.py +27 -0
  76. pvsld/report/bom.py +267 -0
  77. pvsld/report/memoria.py +1193 -0
  78. pvsld/report/project_sheet.py +546 -0
  79. pvsld/resources.py +34 -0
  80. pvsld/service.py +196 -0
  81. pvsld/sheets/__init__.py +5 -0
  82. pvsld/sheets/a3_plantilla_v1.py +103 -0
  83. pvsld/sheets/cli.py +74 -0
  84. pvsld/sheets/importer.py +94 -0
  85. pvsld/sheets/loader.py +252 -0
  86. pvsld/sizing/__init__.py +59 -0
  87. pvsld/sizing/adapters.py +147 -0
  88. pvsld/sizing/bos.py +570 -0
  89. pvsld/sizing/engine.py +806 -0
  90. pvsld/sizing/io.py +68 -0
  91. pvsld/sizing/models.py +461 -0
  92. pvsld/sizing/report.py +118 -0
  93. pvsld/sizing/strings.py +328 -0
  94. pvsld/symbols/__init__.py +37 -0
  95. pvsld/symbols/cfe/__init__.py +35 -0
  96. pvsld/symbols/cfe/build.py +422 -0
  97. pvsld/symbols/cfe/cli.py +184 -0
  98. pvsld/symbols/cfe/definitions.py +2373 -0
  99. pvsld/symbols/cfe/dwg.py +122 -0
  100. pvsld/symbols/cfe/loader.py +132 -0
  101. pvsld/symbols/cfe/model.py +323 -0
  102. pvsld/symbols/cfe/validate.py +185 -0
  103. pvsld/transports/__init__.py +15 -0
  104. pvsld/transports/com.py +754 -0
  105. pvsld/transports/fake.py +646 -0
  106. pvsld/transports/pipe.py +336 -0
  107. pvsld/transports/protocol.py +175 -0
  108. pvsld/transports/streams.py +213 -0
  109. pvsld-0.6.0.dist-info/METADATA +76 -0
  110. pvsld-0.6.0.dist-info/RECORD +113 -0
  111. pvsld-0.6.0.dist-info/WHEEL +4 -0
  112. pvsld-0.6.0.dist-info/entry_points.txt +3 -0
  113. pvsld-0.6.0.dist-info/licenses/LICENSE +21 -0
pvsld/__init__.py ADDED
@@ -0,0 +1,21 @@
1
+ """pvsld: generator of Mexican photovoltaic single-line diagrams for AutoCAD and DXF.
2
+
3
+ Layers, as decided in ADR-0001 (``docs/decisions/ADR-0001-claude-autocad-integration.md``):
4
+
5
+ * ``pvsld.core``: deterministic core (parameter model, calculations, rule-pack validation and a
6
+ backend-neutral diagram model). Pure Python, no CAD dependency.
7
+ * ``pvsld.backends``: render backends that materialize the diagram model (ezdxf DXF first).
8
+ * ``pvsld.transports``: channels to out-of-process CAD hosts (AutoCAD COM spike, named pipe).
9
+ * ``pvsld.finishers``: optional post-processors (DXF to DWG 2018 and PDF).
10
+
11
+ The MCP server (L1) that exposes these layers to Claude arrives in Stage 2.3.
12
+ """
13
+
14
+ from importlib.metadata import PackageNotFoundError, version
15
+
16
+ try:
17
+ __version__ = version("pvsld")
18
+ except PackageNotFoundError: # running from a source tree that was never installed
19
+ __version__ = "0.0.0+unknown"
20
+
21
+ __all__ = ["__version__"]
File without changes
File without changes
@@ -0,0 +1,41 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per size.
2
+ # Sizes 14 AWG to 4/0 AWG only: the schema's conductor sizes stop at 4/0 (250-1000 kcmil are left out).
3
+ component_type: conductor
4
+ family_id: VIAKON-PV-WIRE-2000V
5
+ manufacturer: Viakon (Conductores Monterrey)
6
+ range_name: Cable de cobre tipo fotovoltaico, PV Wire, XLPE 2000 V, 90 °C
7
+ material: Cu
8
+ insulation: XLPE (PV Wire, RHW-2)
9
+ application: pv
10
+ rated_voltage_v: 2000
11
+ max_conductor_temp_c: 90
12
+ standards: [UL 4703, UL 44]
13
+ listings: [PV Wire, RHW-2, Sun Res, RoHS]
14
+ min_temp_c: -40
15
+ variants:
16
+ - {component_id: VIAKON-PV2000-14AWG, size: "14 AWG", area_mm2: 2.082, strands: 19, conductor_diameter_mm: 1.8, insulation_mm: 1.91, outer_diameter_mm: 6.0, weight_kg_per_100m: 5, ampacity_a: [15, 20, 25]}
17
+ - {component_id: VIAKON-PV2000-12AWG, size: "12 AWG", area_mm2: 3.307, strands: 19, conductor_diameter_mm: 2.26, insulation_mm: 1.91, outer_diameter_mm: 6.5, weight_kg_per_100m: 6, ampacity_a: [20, 25, 30]}
18
+ - {component_id: VIAKON-PV2000-10AWG, size: "10 AWG", area_mm2: 5.26, strands: 19, conductor_diameter_mm: 2.87, insulation_mm: 1.91, outer_diameter_mm: 7.1, weight_kg_per_100m: 9, ampacity_a: [30, 35, 40]}
19
+ - {component_id: VIAKON-PV2000-8AWG, size: "8 AWG", area_mm2: 8.367, strands: 19, conductor_diameter_mm: 3.61, insulation_mm: 2.16, outer_diameter_mm: 8.3, weight_kg_per_100m: 12, ampacity_a: [40, 50, 55]}
20
+ - {component_id: VIAKON-PV2000-6AWG, size: "6 AWG", area_mm2: 13.3, strands: 7, conductor_diameter_mm: 4.55, insulation_mm: 2.16, outer_diameter_mm: 9.2, weight_kg_per_100m: 18, ampacity_a: [55, 65, 75]}
21
+ - {component_id: VIAKON-PV2000-4AWG, size: "4 AWG", area_mm2: 21.15, strands: 7, conductor_diameter_mm: 5.72, insulation_mm: 2.16, outer_diameter_mm: 10.4, weight_kg_per_100m: 26, ampacity_a: [70, 85, 95]}
22
+ - {component_id: VIAKON-PV2000-2AWG, size: "2 AWG", area_mm2: 33.62, strands: 7, conductor_diameter_mm: 7.19, insulation_mm: 2.16, outer_diameter_mm: 11.9, weight_kg_per_100m: 38, ampacity_a: [95, 115, 130]}
23
+ - {component_id: VIAKON-PV2000-1AWG, size: "1 AWG", area_mm2: 42.41, strands: 19, conductor_diameter_mm: 8.18, insulation_mm: 2.67, outer_diameter_mm: 14.1, weight_kg_per_100m: 49, ampacity_a: [110, 130, 145]}
24
+ - {component_id: VIAKON-PV2000-1-0AWG, size: "1/0 AWG", area_mm2: 53.48, strands: 19, conductor_diameter_mm: 9.19, insulation_mm: 2.67, outer_diameter_mm: 15.1, weight_kg_per_100m: 60, ampacity_a: [125, 150, 170]}
25
+ - {component_id: VIAKON-PV2000-2-0AWG, size: "2/0 AWG", area_mm2: 67.43, strands: 19, conductor_diameter_mm: 10.31, insulation_mm: 2.67, outer_diameter_mm: 16.2, weight_kg_per_100m: 74, ampacity_a: [145, 175, 195]}
26
+ - {component_id: VIAKON-PV2000-3-0AWG, size: "3/0 AWG", area_mm2: 85.01, strands: 19, conductor_diameter_mm: 11.58, insulation_mm: 2.67, outer_diameter_mm: 17.5, weight_kg_per_100m: 91, ampacity_a: [165, 200, 225]}
27
+ - {component_id: VIAKON-PV2000-4-0AWG, size: "4/0 AWG", area_mm2: 107.2, strands: 19, conductor_diameter_mm: 13.0, insulation_mm: 2.67, outer_diameter_mm: 18.9, weight_kg_per_100m: 113, ampacity_a: [195, 230, 260]}
28
+ source:
29
+ filename: C-BT-UL-PV-2000V-1-CU-XLPE.pdf
30
+ sha256: c251c6216a621e17f2142977f839851d2bd69e493a86549f2dbca56933e2fd07
31
+ title: Viakon, Cable de cobre tipo fotovoltaico, PV Wire, XLPE 2000V, 90 °C (revisión 08-jun-2026)
32
+ pages: [1, 2]
33
+ extraction_method: pdf_text_layer
34
+ extraction_date: 2026-10-09
35
+ reviewed_by: edu3250
36
+ review_date: 2026-10-09
37
+ notes: >-
38
+ Provided by the owner on 2026-10-09 (the cable they use). Text extracted from the PDF text layer with pypdfium2.
39
+ Dimensions are approximate and subject to manufacturing tolerances (datasheet note); the ampacity columns are the
40
+ datasheet's reading of NOM Table 310-15(b)(16) at 30 °C. The datasheet lists no 3 AWG size. Page 1 also gives 130 °C
41
+ emergency and 250 °C short-circuit conductor temperatures (ICEA P-32-382).
File without changes
@@ -0,0 +1,47 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per model.
2
+ component_type: string_inverter
3
+ family_id: GROWATT-MIN-TL-X2
4
+ manufacturer: Growatt
5
+ model_family: MIN 2500-6000TL-X2
6
+ startup_voltage_v: 50
7
+ rated_input_voltage_v: 360
8
+ mppt_count: 2
9
+ inputs_per_mppt: 1
10
+ max_input_current_per_mppt_a: 16
11
+ max_short_circuit_current_per_mppt_a: 24
12
+ mppt_efficiency_pct: 99.9
13
+ grid: single_phase
14
+ rated_ac_voltage_v: [230] # range 160-300 V, depends on the country grid code
15
+ max_ac_current_reference_voltage_v: 220 # max_ac_output_current_a is specified at 220 V (owner confirmed 2026-10-07)
16
+ frequency_hz: [50, 60] # 45-55 / 54-65 Hz
17
+ power_factor_range: [-0.8, 0.8]
18
+ thd_max_pct: 3
19
+ protection: {dc_reverse_polarity: true, dc_switch: true, dc_spd: "class II", ac_spd: "class III", insulation_monitoring: true, ac_short_circuit: true, grid_monitoring: true, anti_islanding: true, residual_current_monitoring: true, afci: true}
20
+ topology: transformerless
21
+ operating_temp_c: [-30, 60]
22
+ altitude_m: 4000
23
+ ip_rating: IP66
24
+ weight_kg: 10.8
25
+ dimensions_mm: [375, 350, 158]
26
+ night_power_w: 1
27
+ dc_connector: H4/MC4
28
+ variants: # max_input_voltage_v and mppt_voltage_range_v differ by model -> stored per variant
29
+ - {component_id: GROWATT-MIN-2500TL-X2, recommended_max_pv_power_wp: 3750, max_input_voltage_v: 500, mppt_voltage_range_v: [40, 500], rated_ac_power_w: 2500, max_apparent_power_va: 2500, max_ac_output_current_a: 11.3, max_efficiency_pct: 98.2, euro_efficiency_pct: 97.1}
30
+ - {component_id: GROWATT-MIN-3000TL-X2, recommended_max_pv_power_wp: 4500, max_input_voltage_v: 500, mppt_voltage_range_v: [40, 500], rated_ac_power_w: 3000, max_apparent_power_va: 3000, max_ac_output_current_a: 13.6, max_efficiency_pct: 98.2, euro_efficiency_pct: 97.1}
31
+ - {component_id: GROWATT-MIN-3600TL-X2, recommended_max_pv_power_wp: 5250, max_input_voltage_v: 550, mppt_voltage_range_v: [40, 550], rated_ac_power_w: 3600, max_apparent_power_va: 3600, max_ac_output_current_a: 16.0, max_efficiency_pct: 98.2, euro_efficiency_pct: 97.2}
32
+ - {component_id: GROWATT-MIN-4200TL-X2, recommended_max_pv_power_wp: 6300, max_input_voltage_v: 550, mppt_voltage_range_v: [40, 550], rated_ac_power_w: 4200, max_apparent_power_va: 4200, max_ac_output_current_a: 19.0, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.5}
33
+ - {component_id: GROWATT-MIN-4600TL-X2, recommended_max_pv_power_wp: 6900, max_input_voltage_v: 550, mppt_voltage_range_v: [40, 550], rated_ac_power_w: 4600, max_apparent_power_va: 4600, max_ac_output_current_a: 20.9, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.5}
34
+ - {component_id: GROWATT-MIN-5000TL-X2, recommended_max_pv_power_wp: 7500, max_input_voltage_v: 550, mppt_voltage_range_v: [40, 550], rated_ac_power_w: 5000, max_apparent_power_va: 5000, max_ac_output_current_a: 22.7, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.5}
35
+ - {component_id: GROWATT-MIN-6000TL-X2, recommended_max_pv_power_wp: 9000, max_input_voltage_v: 550, mppt_voltage_range_v: [40, 550], rated_ac_power_w: 6000, max_apparent_power_va: 6000, max_ac_output_current_a: 27.2, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.5}
36
+ source:
37
+ filename: MIN_2500-6000TL-X2_Hoja_de_datos_MX.pdf
38
+ sha256: 87b90d5b43613d29aa151fbe9ede28fbdefdaa22acd073cdfee33b2684ab3d97
39
+ title: MIN 2500-6000TL-X2 Hoja de datos (Mexico market, Spanish)
40
+ pages: [2]
41
+ extraction_method: rendered_page
42
+ extraction_date: 2026-10-07
43
+ reviewed_by: edu3250
44
+ review_date: 2026-10-07
45
+ notes: >-
46
+ No text layer; page 2 rendered with pypdfium2 and read visually. The 3000TL-X2 rated power cell is printed with overlapping
47
+ digits; read as 3000 W, consistent with its 3000 VA apparent power.
@@ -0,0 +1,51 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per model.
2
+ component_type: hybrid_inverter
3
+ family_id: HUAWEI-SUN2000-KTL-L1
4
+ manufacturer: Huawei
5
+ model_family: SUN2000-2/3/3.68/4/4.6/5/6KTL-L1
6
+ max_input_voltage_v: 600
7
+ startup_voltage_v: 100
8
+ rated_input_voltage_v: 360
9
+ mppt_voltage_range_v: [90, 560]
10
+ mppt_count: 2
11
+ inputs_per_mppt: 1
12
+ max_input_current_per_mppt_a: 12.5
13
+ max_short_circuit_current_per_mppt_a: 18
14
+ grid: single_phase
15
+ rated_ac_voltage_v: [220, 230, 240]
16
+ frequency_hz: [50, 60]
17
+ power_factor_range: [-0.8, 0.8] # 0.8 leading ... 0.8 lagging
18
+ thd_max_pct: 3
19
+ battery:
20
+ compatible: LUNA2000-5/10/15-S0
21
+ voltage_range_v: [350, 560]
22
+ max_current_a: 15
23
+ max_charge_power_w: 5000
24
+ protection: {anti_islanding: true, dc_reverse_polarity: true, insulation_monitoring: true, residual_current_monitoring: true, arc_fault: true, dc_spd: "type II (EN/IEC 61643-11)", ac_spd: "type II (EN/IEC 61643-11)"}
25
+ operating_temp_c: [-25, 60] # derating above 45 °C
26
+ altitude_m: 4000 # derating above 2,000 m
27
+ ip_rating: IP65
28
+ weight_kg: 12.0
29
+ dimensions_mm: [365, 375, 156]
30
+ variants:
31
+ - {component_id: HUAWEI-SUN2000-2KTL-L1, recommended_max_pv_power_wp: 3000, rated_ac_power_w: 2000, max_apparent_power_va: 2200, max_ac_output_current_a: 10.0, max_battery_discharge_w: 2200, max_efficiency_pct: 98.2, euro_efficiency_pct: 96.7}
32
+ - {component_id: HUAWEI-SUN2000-3KTL-L1, recommended_max_pv_power_wp: 4500, rated_ac_power_w: 3000, max_apparent_power_va: 3300, max_ac_output_current_a: 15.0, max_battery_discharge_w: 3300, max_efficiency_pct: 98.3, euro_efficiency_pct: 97.3}
33
+ - {component_id: HUAWEI-SUN2000-3.68KTL-L1, recommended_max_pv_power_wp: 5520, rated_ac_power_w: 3680, max_apparent_power_va: 3680, max_ac_output_current_a: 16.0, max_battery_discharge_w: 3680, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.3}
34
+ - {component_id: HUAWEI-SUN2000-4KTL-L1, recommended_max_pv_power_wp: 6000, rated_ac_power_w: 4000, max_apparent_power_va: 4400, max_ac_output_current_a: 20.0, max_battery_discharge_w: 4400, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.5}
35
+ - {component_id: HUAWEI-SUN2000-4.6KTL-L1, recommended_max_pv_power_wp: 6900, rated_ac_power_w: 4600, max_apparent_power_va: 5000, max_ac_output_current_a: 23.0, max_battery_discharge_w: 4600, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.7}
36
+ - {component_id: HUAWEI-SUN2000-5KTL-L1, recommended_max_pv_power_wp: 7500, rated_ac_power_w: 5000, max_apparent_power_va: 5500, max_ac_output_current_a: 25.0, max_battery_discharge_w: 5000, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.8}
37
+ # Footnote 1 (10,000 Wp with optimizers) is printed on the 6KTL-L1 column only; see source.notes.
38
+ - {component_id: HUAWEI-SUN2000-6KTL-L1, recommended_max_pv_power_wp: 9000, max_pv_power_with_optimizers_wp: 10000, max_pv_power_with_optimizers_ambiguous: true,
39
+ rated_ac_power_w: 6000, max_apparent_power_va: 6000, max_ac_output_current_a: 27.3, max_battery_discharge_w: 5000, max_efficiency_pct: 98.4, euro_efficiency_pct: 97.8}
40
+ source:
41
+ filename: HWI-SUN2000-5KTL-L1_FichaTecnica.pdf
42
+ sha256: 60cdebe2ab5d4896c6058db784fb76359d5574065f70298c8b381fd0c5debcff
43
+ title: SUN2000-2/3/3.68/4/4.6/5/6KTL-L1 Technical Specification, version 03-202312
44
+ pages: [2]
45
+ extraction_method: markitdown
46
+ extraction_date: 2026-10-07
47
+ reviewed_by: edu3250
48
+ review_date: 2026-10-07
49
+ notes: >-
50
+ Per-model values mapped by column order (2, 3, 3.68, 4, 4.6, 5, 6 kW). Footnote 1 (10,000 Wp with optimizers on long
51
+ strings) is attached to the 6KTL-L1 column header; whether it also applies to other models must be confirmed by the owner.
File without changes
@@ -0,0 +1,39 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per power level.
2
+ component_type: pv_module
3
+ family_id: ETSOLAR-ET-M672BH
4
+ manufacturer: ET Solar
5
+ model_family: ET-M672BH520-550WW/WB
6
+ cell_type: PERC mono-crystalline, 182x91 mm half-cut
7
+ cells: 144
8
+ bifacial: false
9
+ dimensions_mm: [2279, 1134, 35]
10
+ weight_kg: 28.9
11
+ frame: anodized aluminium alloy
12
+ front_cover: 3.2 mm tempered glass
13
+ max_system_voltage_v: 1500
14
+ max_series_fuse_a: 25
15
+ operating_temp_c: [-40, 85]
16
+ noct_c: 45 # ±2 °C
17
+ power_tolerance_w: [0, 5] # 0 ~ +5 W (watts, not percent)
18
+ temp_coef_pmax_pct_per_c: -0.35
19
+ temp_coef_voc_pct_per_c: -0.28
20
+ temp_coef_isc_pct_per_c: 0.048
21
+ junction_box: IP67
22
+ connector: MC4 compatible
23
+ cable_mm2: 4.0
24
+ certifications: [] # not stated in the extracted text
25
+ variants: # STC (1000 W/m², 25 °C, AM1.5); Voc and Isc ±3 %; noct = 800 W/m², 20 °C ambient, 1 m/s
26
+ - {component_id: ETSOLAR-ET-M672BH520, pmax_w: 520, vmp_v: 40.44, imp_a: 12.86, voc_v: 49.10, isc_a: 13.57, efficiency_pct: 20.12, noct: {pmax_w: 387, vmp_v: 37.54, imp_a: 10.32, voc_v: 46.34, isc_a: 10.96}}
27
+ - {component_id: ETSOLAR-ET-M672BH530, pmax_w: 530, vmp_v: 40.54, imp_a: 13.08, voc_v: 49.26, isc_a: 13.71, efficiency_pct: 20.51, noct: {pmax_w: 394, vmp_v: 37.86, imp_a: 10.41, voc_v: 46.50, isc_a: 11.07}}
28
+ - {component_id: ETSOLAR-ET-M672BH540, pmax_w: 540, vmp_v: 40.71, imp_a: 13.27, voc_v: 49.42, isc_a: 13.85, efficiency_pct: 20.89, noct: {pmax_w: 402, vmp_v: 38.11, imp_a: 10.56, voc_v: 46.65, isc_a: 11.19}}
29
+ - {component_id: ETSOLAR-ET-M672BH550, pmax_w: 550, vmp_v: 40.83, imp_a: 13.48, voc_v: 49.60, isc_a: 14.04, efficiency_pct: 21.28, noct: {pmax_w: 410, vmp_v: 38.25, imp_a: 10.73, voc_v: 46.82, isc_a: 11.35}}
30
+ source:
31
+ filename: ET-M672BH520-550WWWB.pdf
32
+ sha256: 7723ffc0243e1ef159b67ad8910233f39b757a52d3f4e688204bc0c789955249
33
+ title: ET-M672BH520-550WW/WB PLUS PV Module (M/ET-PD-EN-EU2019V4)
34
+ pages: [2]
35
+ extraction_method: markitdown
36
+ extraction_date: 2026-10-07
37
+ reviewed_by: edu3250
38
+ review_date: 2026-10-07
39
+ notes: WW/WB suffixes are frame/backsheet colour options with identical electrical data.
@@ -0,0 +1,39 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per power level.
2
+ component_type: pv_module
3
+ family_id: JINKO-JKM-60HL4
4
+ manufacturer: Jinko Solar
5
+ model_family: JKM460-480N-60HL4-(V) Tiger Neo N-type
6
+ cell_type: N-type mono-crystalline
7
+ cells: 120
8
+ bifacial: false
9
+ dimensions_mm: [1903, 1134, 30]
10
+ weight_kg: 24.2
11
+ frame: anodized aluminium alloy
12
+ max_system_voltage_v: 1000 # datasheet: "1000/1500VDC (IEC)"; -V models assumed 1500 V (see notes)
13
+ max_series_fuse_a: 25
14
+ operating_temp_c: [-40, 85]
15
+ noct_c: 45 # ±2 °C
16
+ power_tolerance_pct: [0, 3]
17
+ temp_coef_pmax_pct_per_c: -0.30
18
+ temp_coef_voc_pct_per_c: -0.25
19
+ temp_coef_isc_pct_per_c: 0.046
20
+ certifications: [IEC 61215 (2016), IEC 61730 (2016)]
21
+ variants: # STC (1000 W/m², 25 °C, AM1.5); noct = 800 W/m², 20 °C ambient, AM1.5, 1 m/s
22
+ - {component_id: JINKO-JKM460N-60HL4, pmax_w: 460, vmp_v: 34.72, imp_a: 13.25, voc_v: 42.05, isc_a: 13.99, efficiency_pct: 21.32, noct: {pmax_w: 346, vmp_v: 32.60, imp_a: 10.61, voc_v: 39.94, isc_a: 11.29}}
23
+ - {component_id: JINKO-JKM465N-60HL4, pmax_w: 465, vmp_v: 34.89, imp_a: 13.33, voc_v: 42.22, isc_a: 14.07, efficiency_pct: 21.55, noct: {pmax_w: 350, vmp_v: 32.77, imp_a: 10.67, voc_v: 40.10, isc_a: 11.36}}
24
+ - {component_id: JINKO-JKM470N-60HL4, pmax_w: 470, vmp_v: 35.05, imp_a: 13.41, voc_v: 42.38, isc_a: 14.15, efficiency_pct: 21.78, noct: {pmax_w: 353, vmp_v: 32.94, imp_a: 10.73, voc_v: 40.25, isc_a: 11.42}}
25
+ - {component_id: JINKO-JKM475N-60HL4, pmax_w: 475, vmp_v: 35.21, imp_a: 13.49, voc_v: 42.54, isc_a: 14.23, efficiency_pct: 22.01, noct: {pmax_w: 357, vmp_v: 33.10, imp_a: 10.79, voc_v: 40.41, isc_a: 11.49}}
26
+ - {component_id: JINKO-JKM480N-60HL4, pmax_w: 480, vmp_v: 35.38, imp_a: 13.57, voc_v: 42.71, isc_a: 14.31, efficiency_pct: 22.24, noct: {pmax_w: 361, vmp_v: 33.27, imp_a: 10.85, voc_v: 40.57, isc_a: 11.55}}
27
+ source:
28
+ filename: JKM460-480N-60HL4-(V)-F1-EN.pdf
29
+ sha256: ac1ace5685a715abd734ae1e331481d6b82656f785507ba2e805d638cff63efd
30
+ title: JKM460-480N-60HL4-(V)-F1-EN (IEC 2016), © 2021 Jinko Solar
31
+ pages: [2]
32
+ extraction_method: markitdown
33
+ extraction_date: 2026-10-07
34
+ reviewed_by: edu3250
35
+ review_date: 2026-10-07
36
+ notes: >-
37
+ The datasheet covers JKMxxxN-60HL4 and JKMxxxN-60HL4-V with identical electrical values and states "1000/1500VDC".
38
+ Following Jinko's naming convention the -V suffix is assumed to be the 1500 V version; the record keeps the
39
+ conservative 1000 V for all variants until the owner confirms which version is installed.
@@ -0,0 +1,39 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per power level.
2
+ component_type: pv_module
3
+ family_id: JINKO-JKM-66HL4M-BDV
4
+ manufacturer: Jinko Solar
5
+ model_family: JKM625-650N-66HL4M-BDV
6
+ cell_type: N-type mono-crystalline
7
+ cells: 132
8
+ bifacial: true
9
+ bifaciality_pct: {voc: 98, isc: 80, pmax: 80} # ±5 % each
10
+ dimensions_mm: [2382, 1134, 30]
11
+ weight_kg: 32.4
12
+ frame: anodized aluminium alloy
13
+ max_system_voltage_v: 1500 # IEC
14
+ max_series_fuse_a: 35
15
+ operating_temp_c: [-40, 70]
16
+ power_tolerance_pct: [0, 3] # 0 ~ +3 % (owner confirmed 2026-10-07)
17
+ temp_coef_pmax_pct_per_c: -0.29
18
+ temp_coef_voc_pct_per_c: -0.25
19
+ temp_coef_isc_pct_per_c: 0.045
20
+ connector: JK03M / JK03M2 (MC4, MC4-EVO2 on request)
21
+ cable_mm2: 4.0
22
+ certifications: [] # not stated on the page read
23
+ variants: # STC (1000 W/m², 25 °C, AM1.5); bnpi = front 1000 W/m² + rear 135 W/m²
24
+ - {component_id: JINKO-JKM625N-66HL4M-BDV, pmax_w: 625, vmp_v: 40.88, imp_a: 15.29, voc_v: 49.28, isc_a: 16.14, efficiency_pct: 23.14, bnpi: {pmax_w: 690, vmp_v: 40.88, imp_a: 16.88, voc_v: 49.26, isc_a: 17.83}}
25
+ - {component_id: JINKO-JKM630N-66HL4M-BDV, pmax_w: 630, vmp_v: 41.02, imp_a: 15.36, voc_v: 49.48, isc_a: 16.20, efficiency_pct: 23.32, bnpi: {pmax_w: 696, vmp_v: 41.04, imp_a: 16.95, voc_v: 49.46, isc_a: 17.90}}
26
+ - {component_id: JINKO-JKM635N-66HL4M-BDV, pmax_w: 635, vmp_v: 41.16, imp_a: 15.43, voc_v: 49.68, isc_a: 16.26, efficiency_pct: 23.51, bnpi: {pmax_w: 701, vmp_v: 41.17, imp_a: 17.03, voc_v: 49.66, isc_a: 17.96}}
27
+ - {component_id: JINKO-JKM640N-66HL4M-BDV, pmax_w: 640, vmp_v: 41.30, imp_a: 15.50, voc_v: 49.88, isc_a: 16.32, efficiency_pct: 23.69, bnpi: {pmax_w: 707, vmp_v: 41.33, imp_a: 17.10, voc_v: 49.86, isc_a: 18.03}}
28
+ - {component_id: JINKO-JKM645N-66HL4M-BDV, pmax_w: 645, vmp_v: 41.44, imp_a: 15.57, voc_v: 50.08, isc_a: 16.38, efficiency_pct: 23.88, bnpi: {pmax_w: 712, vmp_v: 41.46, imp_a: 17.17, voc_v: 50.06, isc_a: 18.09}}
29
+ - {component_id: JINKO-JKM650N-66HL4M-BDV, pmax_w: 650, vmp_v: 41.58, imp_a: 15.64, voc_v: 50.28, isc_a: 16.44, efficiency_pct: 24.06, bnpi: {pmax_w: 718, vmp_v: 41.61, imp_a: 17.24, voc_v: 50.26, isc_a: 18.16}}
30
+ source:
31
+ filename: JKM625-650N-66HL4M-BDV-Z1-EU.pdf
32
+ sha256: f77886ca92bded751ea135cd3a8f080df4ec9d8a3e5214155e1c80833b330ba5
33
+ title: JKM625-650N-66HL4M-BDV-Z1-EU (© 2024 Jinko Solar)
34
+ pages: [2]
35
+ extraction_method: rendered_page
36
+ extraction_date: 2026-10-07
37
+ reviewed_by: edu3250
38
+ review_date: 2026-10-07
39
+ notes: No text layer (Adobe Illustrator, fonts outlined); page 2 rendered with pypdfium2 and read visually.
File without changes
@@ -0,0 +1,47 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per rated current.
2
+ # Cylindrical (ferrule) style PV-(amp)A10F only; the bolt, PCB-tab and in-line crimp styles are other catalogue numbers.
3
+ component_type: dc_fuse
4
+ family_id: EATON-BUSSMANN-PV-10X38
5
+ manufacturer: Eaton (Bussmann series)
6
+ range_name: 10x38mm photovoltaic fuses, 1000 Vdc, 1-20 A
7
+ size: 10x38 mm
8
+ rated_voltage_v: 1000
9
+ operating_class: gPV
10
+ time_constant_ms: [1, 3]
11
+ standards: [IEC 60269-6 (gPV), UL 248-19]
12
+ certifications: [UL Listed (Guide JFGA, File E335324), CSA (File 53787, 1-15 A; 20 A pending), CCC, RoHS]
13
+ operating_temp_c: [-40, 90]
14
+ wire_range: Single conductor, 12-10 AWG 75 °C/90 °C Cu stranded PV
15
+ holders:
16
+ - CHPV1U / CHPV1IU 1-pole modular fuse holder (data sheet 10430)
17
+ - CHPV2U / CHPV2IU 2-pole modular fuse holder (data sheet 10430)
18
+ - BPVM modular PV fuse block (10265)
19
+ - HPV-DV in-line fuse holder assembly (2157)
20
+ sizing_note: No additional derating in ganged modular fuse holders without spacing, provided that the rating used is > 1.56 x Isc.
21
+ variants:
22
+ - {component_id: EATON-PV-1A10F, rated_current_a: 1, breaking_capacity_ka: 50, power_loss_w_at_08in: 0.8, power_loss_w_at_in: 1.5}
23
+ - {component_id: EATON-PV-2A10F, rated_current_a: 2, breaking_capacity_ka: 50, power_loss_w_at_08in: 0.6, power_loss_w_at_in: 1.0}
24
+ - {component_id: EATON-PV-3A10F, rated_current_a: 3, breaking_capacity_ka: 50, power_loss_w_at_08in: 0.8, power_loss_w_at_in: 1.3}
25
+ - {component_id: EATON-PV-3-5A10F, rated_current_a: 3.5, breaking_capacity_ka: 50, power_loss_w_at_08in: 0.9, power_loss_w_at_in: 1.4}
26
+ - {component_id: EATON-PV-4A10F, rated_current_a: 4, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.0, power_loss_w_at_in: 1.5}
27
+ - {component_id: EATON-PV-5A10F, rated_current_a: 5, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.0, power_loss_w_at_in: 1.6}
28
+ - {component_id: EATON-PV-6A10F, rated_current_a: 6, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.1, power_loss_w_at_in: 1.8}
29
+ - {component_id: EATON-PV-8A10F, rated_current_a: 8, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.2, power_loss_w_at_in: 2.1}
30
+ - {component_id: EATON-PV-10A10F, rated_current_a: 10, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.2, power_loss_w_at_in: 2.3}
31
+ - {component_id: EATON-PV-12A10F, rated_current_a: 12, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.5, power_loss_w_at_in: 2.7}
32
+ - {component_id: EATON-PV-15A10F, rated_current_a: 15, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.7, power_loss_w_at_in: 2.9}
33
+ - {component_id: EATON-PV-20A10F, rated_current_a: 20, breaking_capacity_ka: 50, power_loss_w_at_08in: 2.1, power_loss_w_at_in: 3.6}
34
+ source:
35
+ filename: bus-ele-ds-10121-pv10m.pdf
36
+ sha256: 2228bef55ab84da856a817b284e9a2fd2765673c2bd5ff178ad3e629f04aed51
37
+ title: Eaton Bussmann series Technical Data 10121, 10x38mm photovoltaic fuses 1000 Vdc 1-20 A (effective September 2017, supersedes July 2017)
38
+ pages: [1, 2, 4]
39
+ extraction_method: pdf_text_layer
40
+ extraction_date: 2026-10-08
41
+ reviewed_by: edu3250
42
+ review_date: 2026-10-08
43
+ notes: >-
44
+ Downloaded by the owner from eaton.com on 2026-10-08. Text extracted from the PDF text layer with pypdfium2. The
45
+ energy integrals (I2t) are not recorded: the text layer of the 8 A row reads 3 / 32 A2s, out of line with its
46
+ neighbours (6 A: 30 / 90), so that column needs the rendered table. Interrupting rating 50 kA and time constant
47
+ 1-3 ms are the page-1 ratings for the whole range. The derating sentence comes from page 4.
@@ -0,0 +1,44 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per rated current.
2
+ # Ferrule version (catalog numbers SPFxxx); the PCB version (SPFxxxR) is another catalogue number.
3
+ component_type: dc_fuse
4
+ family_id: LITTELFUSE-SPF
5
+ manufacturer: Littelfuse
6
+ range_name: POWR-GARD SPF Series, 1000 V dc, 1-30 A
7
+ size: 10x38 mm (midget)
8
+ rated_voltage_v: 1000
9
+ operating_class: gPV (IEC 60269-6)
10
+ time_constant_ms: [0, 2]
11
+ standards: [UL 248-1, UL 248-19, IEC 60269-6]
12
+ certifications: [UL Listed (File E339112), CSA (File 029862_0_000), TUV (Cert. J 50494849), RoHS]
13
+ holders: [LPHV 1000 V dc POWR-Safe series fuse holder, 125003 fuse clips]
14
+ variants:
15
+ - {component_id: LITTELFUSE-SPF001, rated_current_a: 1, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.41, power_loss_w_at_in: 0.60}
16
+ - {component_id: LITTELFUSE-SPF002, rated_current_a: 2, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.85, power_loss_w_at_in: 1.59}
17
+ - {component_id: LITTELFUSE-SPF003, rated_current_a: 3, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.82, power_loss_w_at_in: 1.50}
18
+ - {component_id: LITTELFUSE-SPF03.5, rated_current_a: 3.5, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.78, power_loss_w_at_in: 1.37}
19
+ - {component_id: LITTELFUSE-SPF004, rated_current_a: 4, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.84, power_loss_w_at_in: 1.49}
20
+ - {component_id: LITTELFUSE-SPF005, rated_current_a: 5, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.86, power_loss_w_at_in: 1.47}
21
+ - {component_id: LITTELFUSE-SPF006, rated_current_a: 6, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.77, power_loss_w_at_in: 1.35}
22
+ - {component_id: LITTELFUSE-SPF008, rated_current_a: 8, breaking_capacity_ka: 20, power_loss_w_at_08in: 0.91, power_loss_w_at_in: 1.61}
23
+ - {component_id: LITTELFUSE-SPF010, rated_current_a: 10, breaking_capacity_ka: 20, power_loss_w_at_08in: 1.00, power_loss_w_at_in: 1.76}
24
+ - {component_id: LITTELFUSE-SPF012, rated_current_a: 12, breaking_capacity_ka: 20, power_loss_w_at_08in: 1.11, power_loss_w_at_in: 1.97}
25
+ - {component_id: LITTELFUSE-SPF015, rated_current_a: 15, breaking_capacity_ka: 20, power_loss_w_at_08in: 1.38, power_loss_w_at_in: 2.28}
26
+ - {component_id: LITTELFUSE-SPF020, rated_current_a: 20, breaking_capacity_ka: 20, power_loss_w_at_08in: 1.57, power_loss_w_at_in: 2.81}
27
+ - {component_id: LITTELFUSE-SPF025, rated_current_a: 25, breaking_capacity_ka: 50, power_loss_w_at_08in: 1.88, power_loss_w_at_in: 3.33}
28
+ - {component_id: LITTELFUSE-SPF030, rated_current_a: 30, breaking_capacity_ka: 50, power_loss_w_at_08in: 2.15, power_loss_w_at_in: 3.85}
29
+ source:
30
+ filename: SPF-Fuse-datasheet-052925.pdf
31
+ sha256: 4586921fbb43aa839ff056fc49a966467a0e9e198ea076e64b0a586b4229948e
32
+ title: Littelfuse POWR-GARD Fuse SPF Series, 1000 V dc 1-30 A (revised 05/29/2025)
33
+ pages: [1, 2, 3]
34
+ extraction_method: pdf_text_layer
35
+ extraction_date: 2026-10-08
36
+ reviewed_by: edu3250
37
+ review_date: 2026-10-08
38
+ notes: >-
39
+ Downloaded by the owner from littelfuse.com on 2026-10-08. Text extracted from the PDF text layer with pypdfium2.
40
+ Interrupting rating from the page-1 specifications ("20 kA - 1 A - 20 A, 50 kA - 25 A - 30 A"); the page-3
41
+ electrical table lists 20 kA for every rating and gives the 25 and 30 A clearing I2t at both 20 and 50 kA, which
42
+ is consistent with 50 kA being their maximum. Time constant "<= 2 ms" is recorded as (0, 2). The datasheet gives
43
+ IEC 60269-6 as an applicable standard (the gPV fuse-link standard) but does not print the word gPV. No operating
44
+ temperature range is printed, only a derating curve (page 4).
@@ -0,0 +1,40 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per rating.
2
+ component_type: dc_breaker
3
+ family_id: SCHNEIDER-ACTI9-C60PV-DC
4
+ manufacturer: Schneider Electric
5
+ range_name: Acti9 C60PV-DC
6
+ poles: 2
7
+ rated_voltage_v: 800 # rated DC voltage
8
+ breaking_capacity_dc: # Icu by DC voltage (any pole count: the range is 2P only)
9
+ - {voltage_v: 650, icu_ka: 3.0}
10
+ - {voltage_v: 800, icu_ka: 1.5}
11
+ ics_pct_of_icu: 100
12
+ trip_curves: [B]
13
+ magnetic_trip: 5.5 x In
14
+ polarity_sensitive: false # protects bi-directional current
15
+ isolation_suitable: true
16
+ utilization_category: A
17
+ impulse_withstand_kv: 6
18
+ standards: [IEC/EN 60947-2]
19
+ terminals: {rigid_mm2: [1, 25], flexible_mm2: [1, 16]}
20
+ tightening_torque_nm: 2.5
21
+ operating_temp_c: [-25, 70]
22
+ mounting: DIN rail 35 mm, 8 modules of 9 mm
23
+ height_mm: 132.7
24
+ width_mm: 72
25
+ depth_mm: 77.4
26
+ weight_kg: 0.545
27
+ variants:
28
+ - {component_id: SCHNEIDER-A9N61652, rated_current_a: 20, power_loss_w_at_in: 11.8} # 588 mV, 29.4 mOhm at 20 A
29
+ source:
30
+ filename: PES_Schneider Electric_Acti9-C60HDC-Acti9-C60PVDC_A9N61652.pdf
31
+ sha256: 61a8dd4330d5cffb7f9fef4c66d7ea5db7fd77b6185232c56f9c5a7d87ccfdd5
32
+ title: Ficha técnica del producto A9N61652 (generated 7 oct 2026)
33
+ pages: [1, 2]
34
+ extraction_method: markitdown
35
+ extraction_date: 2026-10-07
36
+ reviewed_by: edu3250
37
+ review_date: 2026-10-07
38
+ notes: >-
39
+ Single-reference datasheet: the family holds one variant (A9N61652, 20 A). Rotated sidebar text of
40
+ the PDF was discarded as noise.
@@ -0,0 +1,50 @@
1
+ # Facts from the manufacturer catalogue (the PDF is not redistributed). Family + one variant per current rating.
2
+ # Standard QO plug-on, 2 poles, 120/240 Vac. The catalogue gives the interrupting rating by current range (Table 1)
3
+ # and the catalogue-number ranges (QO210-QO280, QO2110-QO2125, QO2150-QO2200), not one row per rating: the ratings
4
+ # below are the NOM 240-6(a) standard ratings inside those ranges, to be confirmed against the distributor's list.
5
+ component_type: ac_breaker
6
+ family_id: SQUARED-QO-2P
7
+ manufacturer: Schneider Electric (Square D)
8
+ range_name: QO miniature circuit breakers, plug-on, 2 poles
9
+ poles: 2
10
+ rated_voltage: 120/240 Vac
11
+ voltage_v: 240
12
+ mounting: plug-on (QO load centers)
13
+ standards: [UL 489, CSA C22.2 No. 5, NOM/ANCE, NEMA AB1]
14
+ certifications: [UL Listed (File E84967), CSA (Master Contract 153555)]
15
+ terminals: 10-30 A 14-8 AWG; 35-70 A 8-2 AWG; 80-125 A 4-2/0 AWG; 150-200 A 4 AWG-300 kcmil (Al/Cu)
16
+ variants:
17
+ - {component_id: SQUARED-QO210, rated_current_a: 10, interrupting_ka: 10}
18
+ - {component_id: SQUARED-QO215, rated_current_a: 15, interrupting_ka: 10}
19
+ - {component_id: SQUARED-QO220, rated_current_a: 20, interrupting_ka: 10}
20
+ - {component_id: SQUARED-QO225, rated_current_a: 25, interrupting_ka: 10}
21
+ - {component_id: SQUARED-QO230, rated_current_a: 30, interrupting_ka: 10}
22
+ - {component_id: SQUARED-QO235, rated_current_a: 35, interrupting_ka: 10}
23
+ - {component_id: SQUARED-QO240, rated_current_a: 40, interrupting_ka: 10}
24
+ - {component_id: SQUARED-QO245, rated_current_a: 45, interrupting_ka: 10}
25
+ - {component_id: SQUARED-QO250, rated_current_a: 50, interrupting_ka: 10}
26
+ - {component_id: SQUARED-QO260, rated_current_a: 60, interrupting_ka: 10}
27
+ - {component_id: SQUARED-QO270, rated_current_a: 70, interrupting_ka: 10}
28
+ - {component_id: SQUARED-QO280, rated_current_a: 80, interrupting_ka: 10}
29
+ - {component_id: SQUARED-QO290, rated_current_a: 90, interrupting_ka: 10}
30
+ - {component_id: SQUARED-QO2100, rated_current_a: 100, interrupting_ka: 10}
31
+ - {component_id: SQUARED-QO2110, rated_current_a: 110, interrupting_ka: 10}
32
+ - {component_id: SQUARED-QO2125, rated_current_a: 125, interrupting_ka: 10}
33
+ - {component_id: SQUARED-QO2150, rated_current_a: 150, interrupting_ka: 10}
34
+ - {component_id: SQUARED-QO2175, rated_current_a: 175, interrupting_ka: 10}
35
+ - {component_id: SQUARED-QO2200, rated_current_a: 200, interrupting_ka: 10}
36
+ source:
37
+ filename: 0730CT9801.pdf
38
+ sha256: 683ff56dcb7d778ff816bfedf24eef2188079fc74f5351a227a69e0aa6760dbb
39
+ title: Square D QO and QOB Miniature Circuit Breakers, catalog 0730CT9801 (07/2008)
40
+ pages: [3, 5, 7]
41
+ extraction_method: pdf_text_layer
42
+ extraction_date: 2026-10-09
43
+ reviewed_by: edu3250
44
+ review_date: 2026-10-09
45
+ notes: >-
46
+ Downloaded from Schneider Electric (download.schneider-electric.com, document 0730CT9801) on 2026-10-09. Table 1
47
+ (page 5): QO 2-pole 10-70 A, 80-100 A and 110-200 A are all 10 kA at 120 and 120/240 Vac (10-100 A also at
48
+ 240 Vac); QO-VH 2-pole 15-200 A is 22 kA (not recorded here). Page 3: UL 489, CSA C22.2 No. 5, NOM/ANCE, NEMA AB1;
49
+ catalogue-number ranges QO280-QO210 (UL type QOA/QOB), QO2110-QO2125 (QOC), QO2150-QO2200 (QOC). Terminations
50
+ from Table 2 (page 7): 10-30 A pressure plate, 35-200 A box lugs, 75 °C conductors from 35 A.
@@ -0,0 +1,43 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per current version.
2
+ component_type: dc_switch
3
+ family_id: SUNTREE-SISO-40
4
+ manufacturer: Suntree
5
+ range_name: SISO-40 PV switch-disconnector (DC isolator)
6
+ poles: 4
7
+ utilization_category: DC-PV2 / DC-21B
8
+ insulation_voltage_v: 1500
9
+ standards: [IEC/EN 60947-3, AS 60947.3]
10
+ certifications: [TUV Rheinland, CB, CE, SAA, RoHS]
11
+ ip_rating: IP66NW enclosure, IP20 switch body
12
+ short_time_withstand: Icw 1 kA 1 s; Icm 1.7 kA; Icn 3 kA
13
+ mechanical_life_ops: 20000
14
+ electrical_life_ops: 2000
15
+ storage_temp_c: [-40, 85]
16
+ variants:
17
+ - component_id: SUNTREE-SISO-40-32
18
+ enclosed_thermal_current_a: 32
19
+ ratings: # Ie DC-PV2 by wiring: 2 poles per circuit (S1, two strings) or 4 in series (S2/S4)
20
+ - {poles_per_circuit: 2, voltage_v: 600, ie_a: 40}
21
+ - {poles_per_circuit: 2, voltage_v: 800, ie_a: 25}
22
+ - {poles_per_circuit: 2, voltage_v: 1000, ie_a: 16}
23
+ - {poles_per_circuit: 2, voltage_v: 1200, ie_a: 10}
24
+ - {poles_per_circuit: 4, voltage_v: 600, ie_a: 40}
25
+ - {poles_per_circuit: 4, voltage_v: 800, ie_a: 40}
26
+ - {poles_per_circuit: 4, voltage_v: 1000, ie_a: 32}
27
+ - {poles_per_circuit: 4, voltage_v: 1200, ie_a: 32}
28
+ source:
29
+ filename: a_pvi60006--.pdf
30
+ sha256: e7fa71b6e5cb680a0a4d5c43ad1c74640b96d3a585541f7c6f80c96cee99f3a3
31
+ title: Suntree SISO-40 PV switch-disconnector, instruction and data sheet (Suntree Electric Co., Ltd., Yueqing)
32
+ pages: [1]
33
+ extraction_method: rendered_page
34
+ extraction_date: 2026-10-09
35
+ reviewed_by: edu3250
36
+ review_date: 2026-10-09
37
+ notes: >-
38
+ The manufacturer's leaflet as published by the distributor Schrack (image.schrackcdn.com); Suntree's own site has no
39
+ download. The owner saved it on 2026-10-09. One page holding the eight leaflet pages; values read from the rendered
40
+ page (the text layer scrambles the tables). The "Identification and rating data" table and Table 1 give the same
41
+ Ie per wiring; the 2-pole rows are the per-circuit rating when two strings share the switch (S1). Ithe 32 A in a
42
+ dedicated IP66NW enclosure at 40 °C; 29 A outdoors at 60 °C with solar effects (derating curve on the leaflet).
43
+ The range is offered in 10, 16, 25, 32, 40 and 50 A versions; only the 32 A version's rating table is printed.
@@ -0,0 +1,61 @@
1
+ # Facts from the manufacturer datasheet (the PDF is not redistributed). Family + one variant per rated current.
2
+ component_type: dc_breaker
3
+ family_id: SUNTREE-SL7N-63
4
+ manufacturer: Suntree
5
+ range_name: SL7N-63 DC circuit breaker
6
+ frame_current_a: 63
7
+ pole_options: # rated service voltage Ue (DC) per pole count, chosen at design time
8
+ - {poles: 1, ue_v_options: [15, 60, 100, 180, 250]}
9
+ - {poles: 2, ue_v_options: [125, 375, 550, 600, 800]}
10
+ - {poles: 3, ue_v_options: [750, 800]}
11
+ - {poles: 4, ue_v_options: [800, 1000, 1200]}
12
+ breaking_capacity_dc: # Ics = Icu
13
+ - {poles: 2, voltage_v: 800, icu_ka: 6.0}
14
+ - {poles: 4, voltage_v: 1200, icu_ka: 6.0}
15
+ - {poles: null, voltage_v: null, icu_ka: 2.0} # "Ics=Icu=2KA" for the other configurations (ambiguous on the datasheet)
16
+ ics_pct_of_icu: 100
17
+ trip_curves: [B, C]
18
+ magnetic_trip: 10 x In # marking "Ii=10In" on the product images
19
+ insulation_voltage_v: 1250
20
+ impulse_withstand_kv: 6
21
+ overvoltage_category: III
22
+ pollution_degree: 3
23
+ standards: [IEC 60947-2, GB/T 14048.2]
24
+ certifications: [CB, CE] # marks shown; a third mark is not legible
25
+ ip_rating: IP40 body, IP20 terminals
26
+ mechanical_life_ops: 8500
27
+ electrical_life_ops: {"<125 V 1P / <250 V 2P": 1500, other: 1000}
28
+ operating_temp_c: [-30, 70]
29
+ storage_temp_c: [-40, 85]
30
+ altitude_m: 2000
31
+ humidity_max_pct: 95
32
+ height_mm: 82
33
+ depth_mm: 72
34
+ width_mm_per_pole: 17.8
35
+ weight_kg_per_pole: 0.12
36
+ accessories: [OF, SD, MX, MN, MX+OF]
37
+ variants:
38
+ - {component_id: SUNTREE-SL7N-63-6A, rated_current_a: 6}
39
+ - {component_id: SUNTREE-SL7N-63-10A, rated_current_a: 10}
40
+ - {component_id: SUNTREE-SL7N-63-16A, rated_current_a: 16}
41
+ - {component_id: SUNTREE-SL7N-63-20A, rated_current_a: 20}
42
+ - {component_id: SUNTREE-SL7N-63-25A, rated_current_a: 25}
43
+ - {component_id: SUNTREE-SL7N-63-32A, rated_current_a: 32}
44
+ - {component_id: SUNTREE-SL7N-63-40A, rated_current_a: 40}
45
+ - {component_id: SUNTREE-SL7N-63-50A, rated_current_a: 50}
46
+ - {component_id: SUNTREE-SL7N-63-63A, rated_current_a: 63}
47
+ source:
48
+ filename: DC-MCB-SL7N-63.pdf
49
+ sha256: 2695d068dcc4683853d37c58b7be253320252e507ed095721a4c7d0571d2a699
50
+ title: Suntree DC Circuit Breaker SL7N-63 (brochure)
51
+ pages: [3]
52
+ extraction_method: rendered_page
53
+ extraction_date: 2026-10-07
54
+ reviewed_by: edu3250
55
+ review_date: 2026-10-07
56
+ notes: >-
57
+ No text layer; pages rendered with pypdfium2. Ue per pole count is a list of options, so the pole/voltage
58
+ configuration is chosen at design time (e.g. 2P 550 V or 2P 800 V). Product images also show "2P 550V" and "4P 1000V"
59
+ labels. The breaking capacity row is ambiguous outside 2P 800 V / 4P 1200 V (2 kA assumed conservatively); confirm with
60
+ the manufacturer. The 2 kA fallback is kept (owner accepted it 2026-10-07): it matters mainly for battery circuits, since PV string fault currents are far below it. The model-code example (S S7N 63/1-10 OF) differs from the "SL7N-63" marking. The instantaneous
61
+ trip "10 x In" comes from a marking on the product images.