feat(hardware): route the 48V sub-board PCB
Context: the 48V sub-board schematic added R6/R7 (series gate resistors) and D1/D2 (VGS zener clamps) that were not yet on the PCB; the netlist also splits the two gate nets. Approach: scripted pcbnew edit — create the three new nets, reassign gate pads/tracks/vias, cut the two collector-to-gate-bus tracks and place the series resistors inline on them, place the zeners at the shortest reach of the gate/source rails, refill zones. Iterated against DRC: R6/R7 moved to 0402 to satisfy the 0.5 mm board-edge rule inside the screw-keepout corridor. Changes: - R6 inline on the x=162 gate column, R7 inline on the x=126 column (both 0402, schematic footprints synced) - D1/D2 SOD-123 with short stubs to the gate columns and to R2.2/ R5.2 (+BATT rails) - Gate pads, tracks and vias reassigned to Net-(D1-A)/Net-(D2-A); Q11 collector on Net-(Q11-C) - DRC: identical to the 30V baseline (12 keepout + 560 mask-bridge legacy items), 0 unconnected pads; title block rev 0.2-draft - Design note and presentation deck updated (routed PCB render) Impact: the 48V sub-board is now fully designed - schematic and routed layout - ready for bench validation with IRF5210s.
This commit is contained in:
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -118,7 +118,7 @@ Trois points durs identifiés dans le code + deux calibrations :
|
||||
|
||||
| Lot | Contenu | Ampleur |
|
||||
|---|---|---|
|
||||
| Sous-carte 48 V | respin 2 couches, même contour/connectique | petit (schéma 1 feuille, ~20 composants) |
|
||||
| Sous-carte 48 V | ✅ **fait** (2026-07-05) : `hardware/pcb-bmu-v2/BMU_switch_mosfet_48v/` — schéma (ERC = baseline) + PCB routé (DRC = baseline, 0 pad non connecté) ; R6/R7 en 0402 | livré en draft 0.2 |
|
||||
| Carte mère v2.1 | buck 100 V + condos + DRC | petit |
|
||||
| Firmware | variante Kconfig + 3 fichiers + profils SOC | petit |
|
||||
| Banc | protocole §6, dont caractérisation BMS packs | **le vrai travail** |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -3,6 +3,8 @@
|
||||
"3dviewports": [],
|
||||
"design_settings": {
|
||||
"defaults": {
|
||||
"apply_defaults_to_fp_barcodes": false,
|
||||
"apply_defaults_to_fp_dimensions": false,
|
||||
"apply_defaults_to_fp_fields": false,
|
||||
"apply_defaults_to_fp_shapes": false,
|
||||
"apply_defaults_to_fp_text": false,
|
||||
@@ -48,7 +50,23 @@
|
||||
"silk_text_thickness": 0.1,
|
||||
"silk_text_upright": false,
|
||||
"zones": {
|
||||
"min_clearance": 0.0
|
||||
"border_display_style": 2,
|
||||
"border_hatch_pitch": 0.5,
|
||||
"corner_radius": 0.0,
|
||||
"corner_smoothing": 0,
|
||||
"fill_mode": 0,
|
||||
"hatch_gap": 1.5,
|
||||
"hatch_orientation": 0.0,
|
||||
"hatch_smoothing_level": 0,
|
||||
"hatch_smoothing_value": 0.1,
|
||||
"hatch_thickness": 1.0,
|
||||
"min_clearance": 0.0,
|
||||
"min_island_area": 10.0,
|
||||
"min_thickness": 0.25,
|
||||
"pad_connection": 1,
|
||||
"remove_islands": 0,
|
||||
"thermal_relief_gap": 0.5,
|
||||
"thermal_relief_spoke_width": 0.5
|
||||
}
|
||||
},
|
||||
"diff_pair_dimensions": [],
|
||||
@@ -63,16 +81,20 @@
|
||||
"copper_edge_clearance": "error",
|
||||
"copper_sliver": "warning",
|
||||
"courtyards_overlap": "error",
|
||||
"creepage": "error",
|
||||
"diff_pair_gap_out_of_range": "error",
|
||||
"diff_pair_uncoupled_length_too_long": "error",
|
||||
"drill_out_of_range": "error",
|
||||
"duplicate_footprints": "warning",
|
||||
"extra_footprint": "warning",
|
||||
"footprint": "error",
|
||||
"footprint_filters_mismatch": "ignore",
|
||||
"footprint_symbol_field_mismatch": "warning",
|
||||
"footprint_symbol_mismatch": "warning",
|
||||
"footprint_type_mismatch": "ignore",
|
||||
"hole_clearance": "error",
|
||||
"hole_near_hole": "error",
|
||||
"hole_to_hole": "error",
|
||||
"holes_co_located": "warning",
|
||||
"invalid_outline": "error",
|
||||
"isolated_copper": "warning",
|
||||
@@ -83,9 +105,12 @@
|
||||
"lib_footprint_mismatch": "ignore",
|
||||
"malformed_courtyard": "error",
|
||||
"microvia_drill_out_of_range": "error",
|
||||
"mirrored_text_on_front_layer": "warning",
|
||||
"missing_courtyard": "ignore",
|
||||
"missing_footprint": "warning",
|
||||
"missing_tuning_profile": "warning",
|
||||
"net_conflict": "warning",
|
||||
"nonmirrored_text_on_back_layer": "warning",
|
||||
"npth_inside_courtyard": "ignore",
|
||||
"padstack": "warning",
|
||||
"pth_inside_courtyard": "ignore",
|
||||
@@ -97,12 +122,18 @@
|
||||
"solder_mask_bridge": "error",
|
||||
"starved_thermal": "error",
|
||||
"text_height": "warning",
|
||||
"text_on_edge_cuts": "error",
|
||||
"text_thickness": "warning",
|
||||
"through_hole_pad_without_hole": "error",
|
||||
"too_many_vias": "error",
|
||||
"track_angle": "error",
|
||||
"track_dangling": "warning",
|
||||
"track_not_centered_on_via": "ignore",
|
||||
"track_on_post_machined_layer": "error",
|
||||
"track_segment_length": "error",
|
||||
"track_width": "error",
|
||||
"tracks_crossing": "error",
|
||||
"tuning_profile_track_geometries": "ignore",
|
||||
"unconnected_items": "error",
|
||||
"unresolved_variable": "error",
|
||||
"via_dangling": "warning",
|
||||
@@ -113,6 +144,7 @@
|
||||
"min_clearance": 0.0,
|
||||
"min_connection": 0.0,
|
||||
"min_copper_edge_clearance": 0.5,
|
||||
"min_groove_width": 0.0,
|
||||
"min_hole_clearance": 0.25,
|
||||
"min_hole_to_hole": 0.25,
|
||||
"min_microvia_diameter": 0.2,
|
||||
@@ -130,10 +162,11 @@
|
||||
},
|
||||
"teardrop_options": [
|
||||
{
|
||||
"td_onpadsmd": true,
|
||||
"td_onpthpad": true,
|
||||
"td_onroundshapesonly": false,
|
||||
"td_onsmdpad": true,
|
||||
"td_ontrackend": false,
|
||||
"td_onviapad": true
|
||||
"td_onvia": true
|
||||
}
|
||||
],
|
||||
"teardrop_parameters": [
|
||||
@@ -202,16 +235,28 @@
|
||||
"zones_allow_external_fillets": false
|
||||
},
|
||||
"ipc2581": {
|
||||
"bom_rev": "",
|
||||
"dist": "",
|
||||
"distpn": "",
|
||||
"internal_id": "",
|
||||
"mfg": "",
|
||||
"mpn": ""
|
||||
"mpn": "",
|
||||
"sch_revision": ""
|
||||
},
|
||||
"layer_pairs": [],
|
||||
"layer_presets": [],
|
||||
"viewports": []
|
||||
},
|
||||
"boards": [],
|
||||
"component_class_settings": {
|
||||
"assignments": [],
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"sheet_component_classes": {
|
||||
"enabled": false
|
||||
}
|
||||
},
|
||||
"cvpcb": {
|
||||
"equivalence_files": []
|
||||
},
|
||||
@@ -432,7 +477,7 @@
|
||||
},
|
||||
"meta": {
|
||||
"filename": "BMU_switch_mosfet_48v.kicad_pro",
|
||||
"version": 1
|
||||
"version": 3
|
||||
},
|
||||
"net_settings": {
|
||||
"classes": [
|
||||
@@ -447,15 +492,17 @@
|
||||
"microvia_drill": 0.1,
|
||||
"name": "Default",
|
||||
"pcb_color": "rgba(0, 0, 0, 0.000)",
|
||||
"priority": 2147483647,
|
||||
"schematic_color": "rgba(0, 0, 0, 0.000)",
|
||||
"track_width": 0.2,
|
||||
"tuning_profile": "",
|
||||
"via_diameter": 0.6,
|
||||
"via_drill": 0.3,
|
||||
"wire_width": 6
|
||||
}
|
||||
],
|
||||
"meta": {
|
||||
"version": 3
|
||||
"version": 5
|
||||
},
|
||||
"net_colors": null,
|
||||
"netclass_assignments": null,
|
||||
@@ -535,6 +582,7 @@
|
||||
"sort_asc": true,
|
||||
"sort_field": "Référence"
|
||||
},
|
||||
"bus_aliases": {},
|
||||
"connection_grid_size": 50.0,
|
||||
"drawing": {
|
||||
"dashed_lines_dash_length_ratio": 12.0,
|
||||
@@ -572,7 +620,14 @@
|
||||
"spice_save_all_dissipations": false,
|
||||
"spice_save_all_voltages": false,
|
||||
"subpart_first_id": 65,
|
||||
"subpart_id_separator": 0
|
||||
"subpart_id_separator": 0,
|
||||
"top_level_sheets": [
|
||||
{
|
||||
"filename": "BMU_switch_mosfet_48v.kicad_sch",
|
||||
"name": "BMU_switch_mosfet_48v",
|
||||
"uuid": "00000000-0000-0000-0000-000000000000"
|
||||
}
|
||||
]
|
||||
},
|
||||
"sheets": [
|
||||
[
|
||||
@@ -580,5 +635,11 @@
|
||||
"Root"
|
||||
]
|
||||
],
|
||||
"text_variables": {}
|
||||
"text_variables": {},
|
||||
"tuning_profiles": {
|
||||
"meta": {
|
||||
"version": 0
|
||||
},
|
||||
"tuning_profiles_impedance_geometric": []
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
(title_block
|
||||
(title "BMU switch MOSFET - variante 48 V (13s)")
|
||||
(date "2026-07-05")
|
||||
(rev "0.1-draft")
|
||||
(rev "0.2-draft")
|
||||
(comment 1 "IRF5210 (100 V) + clamp VGS zener 12 V + R serie 15k + MMBTA42")
|
||||
(comment 2 "Derive de BMU_switch_mosfet (30 V) - PCB a re-router pour D1/D2/R6/R7")
|
||||
(comment 2 "Derive de BMU_switch_mosfet (30 V) - PCB route, DRC = baseline, 0 pad non connecte")
|
||||
)
|
||||
(lib_symbols
|
||||
(symbol "Device:R_Small"
|
||||
@@ -2475,7 +2475,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 68.58 115.57 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -3101,7 +3101,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 77.47 95.25 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -3250,7 +3250,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 77.47 107.95 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -3399,7 +3399,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 106.68 107.95 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -3715,7 +3715,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 130.81 95.25 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -4151,7 +4151,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 87.63 100.33 0)
|
||||
(effects
|
||||
(font
|
||||
@@ -4218,7 +4218,7 @@
|
||||
)
|
||||
)
|
||||
)
|
||||
(property "Footprint" "Resistor_SMD:R_0603_1608Metric"
|
||||
(property "Footprint" "Resistor_SMD:R_0402_1005Metric"
|
||||
(at 116.84 100.33 0)
|
||||
(effects
|
||||
(font
|
||||
|
||||
Reference in New Issue
Block a user