jettos/powercore16-revc-complete-board-model
This code defines the hardware layout for a power distribution and control circuit featuring high-current power inputs, multiple output switches with programmable fuses, MCU-based control, input connectors, and communication interfaces, all represented with specific component footprints and connectivity zones.
- Version
- 0.4.8
- License
- unset
- Stars
- 0
src/connectionMap.ts
export type ConnectionObject = {
from: string
to: string
net: string
widthClass: "high-current" | "medium-current" | "low-current" | "sense-control"
note: string
}
export const connectionObjects: ConnectionObject[] = [
{ from: "J_BAT_POS", to: "U_REVERSE_CONTROLLER/Q_REVPROT_A/Q_REVPROT_B", net: "VBAT_IN", widthClass: "high-current", note: "Main battery feed into reverse protection; M6/M8 stud or busbar candidate." },
{ from: "U_REVERSE_CONTROLLER/Q_REVPROT_A/Q_REVPROT_B", to: "VBAT_PROTECTED_BUS_COPPER_REGION", net: "VBAT_PROTECTED", widthClass: "high-current", note: "Protected high-current bus region feeding outputs and power supplies." },
{ from: "J_BAT_GND", to: "PWR_GND_PLANE_REGION", net: "PWR_GND", widthClass: "high-current", note: "Main return and surge return path." },
{ from: "D_LOAD_DUMP_TVS/C_BULK_INPUT", to: "J_BAT_GND", net: "PWR_GND", widthClass: "high-current", note: "Load dump / TVS return requires validation." },
{ from: "U_5V_BUCK", to: "5V_INTERNAL", net: "5V_INTERNAL", widthClass: "low-current", note: "Automotive 12V to 5V internal rail." },
{ from: "U_3V3_LDO", to: "3V3_INTERNAL", net: "3V3_INTERNAL", widthClass: "low-current", note: "Internal logic rail, exposed only on J_DEBUG." },
{ from: "U_SENSOR_5V_A_LIMIT", to: "J_IN_A pin 9", net: "5V_SENSOR_A_PROTECTED", widthClass: "low-current", note: "Current-limited sensor supply A." },
{ from: "U_SENSOR_5V_B_LIMIT", to: "J_IN_B pin 9", net: "5V_SENSOR_B_PROTECTED", widthClass: "low-current", note: "Current-limited sensor supply B." },
{ from: "U_CAN_TRANSCEIVER", to: "J_DASH_16 pins 1/2", net: "CAN_H/CAN_L", widthClass: "low-current", note: "CAN path near Dash connector with ESD and DNI CMC/termination." },
...Array.from({ length: 16 }, (_, i) => {
const n = i + 1
return { from: `VBAT_PROTECTED_BUS_COPPER_REGION/U_OUT${n}`, to: `OUT${n}_HS connector pin`, net: `OUT${n}_HS`, widthClass: n <= 4 ? "high-current" : "medium-current", note: `Smart high-side output OUT${n} to connector with thermal copper region.` } as ConnectionObject
}),
...Array.from({ length: 16 }, (_, i) => {
const n = i + 1
return { from: `U_OUT${n}/R_OUT${n}_IS`, to: "U_MCU ADC_CURRENT_SENSE_INTERFACE", net: `OUT${n}_IS`, widthClass: "sense-control", note: `Output current-sense path for EFUSE_OUT${n}.` } as ConnectionObject
}),
...Array.from({ length: 16 }, (_, i) => {
const n = i + 1
return { from: "U_MCU GPIO_OUTPUT_CONTROL_INTERFACE", to: `U_OUT${n}`, net: `OUT${n}_EN`, widthClass: "sense-control", note: `MCU enable/control path for programmable fuse OUT${n}.` } as ConnectionObject
}),
...Array.from({ length: 16 }, (_, i) => {
const n = i + 1
return { from: `J_IN_${n <= 8 ? "A" : "B"} pin ${n <= 8 ? n : n - 8}`, to: `D_IN${n}_TVS/R_IN${n}_SER/C_IN${n}_RC/U_MCU`, net: `IN${n}`, widthClass: "low-current", note: `Protected input channel IN${n}.` } as ConnectionObject
}),
]