Cable size, voltage drop and earth fault loop check
size_cableSizes a UK final circuit or sub-main and shows the working: design current (with cooker diversity), protective device rating, the smallest cable size that passes current-carrying capacity, voltage drop (3% lighting, 5% other) and earth fault loop impedance (Zs against the maximum for B, C or D breakers), plus a cpc adiabatic check. Returns recommended (size and every check with status pass, fail, indicative_pass, needs_input), sizes_considered (one line per size), must_check_against_regs (points the electrician confirms in BS 7671) and sources. Current-carrying capacity comes from a cautious heat-flow model, not BS 7671 tables, so it is marked indicative; give cable_size_mm2 plus tabulated_capacity_a from the regs for a firm check. Voltage drop and Zs are calculated from physics and are firm for the inputs given. Typical call: a 9.5 kW shower on an 18 m run clipped direct: {"circuit_type":"shower","load_kw":9.5,"run_length_m":18,"installation_method":"clipped_direct"}.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"circuit_type": "<circuit_type>",
"run_length_m": "<run_length_m>",
"installation_method": "<installation_method>"
},
"name": "size_cable"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cores | No | SWA only: number of cores. Defaults to 3 single phase (spare core as cpc) or 4 three phase. With 2 the armour is the cpc: give armour_resistance_mohm_per_m. | |
| trade | No | Optional. The electrician's own business details (Nero Trade Profile v1). Used to prefill certificate contractor fields and to give a stable nero_trade_ref. Not stored by Spark Pack. | |
| phases | No | Defaults to 1. | |
| load_kw | No | Load in kW (for example 9.5 for a shower, 7.4 for a 32 A EV charger). Give this or design_current_a. | |
| ze_ohms | No | Measured external earth fault loop impedance Ze, ohms. Without it the typical network maximum is used (0.35 TN-C-S, 0.8 TN-S). | |
| earthing | No | Supply earthing. Defaults to tn_c_s (PME). | |
| ambient_c | No | Ambient temperature, C. Defaults to 30 in air, 20 in the ground. | |
| cable_type | No | Defaults to twin_and_earth, or swa_xlpe for buried runs and sub-mains. | |
| circuit_type | Yes | What the circuit feeds. ring_final and radial_sockets can be sized without a load (the device rating is used). | |
| cpc_size_mm2 | No | Override the circuit protective conductor size (twin and earth sizes are known). | |
| power_factor | No | Defaults to 1 (resistive loads, EV chargers). Use about 0.95 for heat pumps or mixed sub-main loads. | |
| run_length_m | Yes | Cable length from the board to the furthest point, metres. For a ring, the total ring length. | |
| cable_size_mm2 | No | Check this specific size as well as finding the smallest that passes. | |
| grouping_factor | No | Grouping factor Cg from the regs for the arrangement, if known. Without it Spark Pack uses a cautious estimate. | |
| design_current_a | No | Design current Ib in amps, if already known. Overrides load_kw. | |
| grouped_circuits | No | Number of circuits bunched together along the run, including this one. Defaults to 1. | |
| cooker_has_socket | No | Cooker only: the cooker control unit has a socket outlet. | |
| protective_device | No | The breaker or fuse. Leave rating_a out to let Spark Pack choose the smallest standard rating at or above the design current. | |
| installation_method | Yes | How the cable is run. clipped_direct: Clipped direct to a wall or surface, in free air; in_conduit_or_trunking_on_wall: In conduit or trunking fixed on a wall; in_conduit_in_insulated_wall: In conduit in a thermally insulated wall; touching_insulation_one_side: In a stud wall or ceiling void, touching thermal insulation on one side; surrounded_by_insulation: Totally surrounded by thermal insulation (deep loft insulation, insulated stud wall); above_ceiling_insulation_under_100mm: Clipped to a joist above a plasterboard ceiling, insulation 100 mm or less, cable not covered; buried_direct: Buried direct in the ground (about 0.7 m deep); in_duct_underground: In a duct in the ground (about 0.7 m deep). If the run passes through several, give the worst one (usually insulation). | |
| tabulated_capacity_a | No | Tabulated current-carrying capacity It for cable_size_mm2 and this method, read from BS 7671 Appendix 4 by the electrician. Makes the capacity check firm. | |
| apply_cooker_diversity | No | Cooker only: apply the usual domestic cooker diversity (default true). | |
| soil_thermal_resistivity | No | Buried runs: soil thermal resistivity K.m/W, defaults to 2.5 (cautious). | |
| armour_resistance_mohm_per_m | No | SWA armour resistance from the cable datasheet, milliohms per metre, when the armour is the cpc. | |
| upstream_voltage_drop_percent | No | Voltage drop already used upstream (for a circuit fed from a sub-board), percent. |