AnasSarkiz/ble-pedometer
This code defines and configures various electronic hardware components such as surface-mount resistors, crystals, diodes, transistors, connectors, and switches with their physical footprints, schematic symbols, and 3D CAD models for PCB assembly.
- Version
- 1.0.7
- License
- unset
- Stars
- 0
mcu-signal-fanout.tsx
import { Fragment } from "react"
import { pcbLayout } from "./pcb-layout"
// Stagger the north-side vias: 0.5 mm pin pitch is not enough for a straight
// row of 0.45 mm via pads. Offsets are in board axes from the MCU placement.
export const mcuSignalFanouts = [
{ name: "V_MCU_SCL", pin: "DIO24_A7", net: "I2C_SCL", x: -1.5, y: 2.95 },
{ name: "V_MCU_GAUGE_INT", pin: "DIO20_A11", net: "GAUGE_INT_N", x: 0.25, y: 2.95 },
{ name: "V_MCU_CHG_INT", pin: "DIO21_A10", net: "CHG_INT_N", x: -0.28, y: 2.45 },
{ name: "V_MCU_SDA", pin: "DIO12", net: "I2C_SDA", x: 3.25, y: 0.95 },
{ name: "V_MCU_PG", pin: "DIO6_A1", net: "CHG_PG_N", x: -1.6, y: -2.8 },
] as const
export const McuSignalFanout = () => <>
{mcuSignalFanouts.map(({ name, pin, net, x, y }) => <Fragment key={name}>
<via name={name} pcbX={pcbLayout.U1_MCU.pcbX + x} pcbY={pcbLayout.U1_MCU.pcbY + y}
fromLayer="top" toLayer="bottom" holeDiameter="0.3mm" outerDiameter="0.45mm"
connectsTo={`net.${net}`} />
<trace name={`${name}_escape`} from={`.U1_MCU > .${pin}`} to={`.${name} > .bottom`}
width="0.127mm" pcbPath={[`.${name} > .bottom`]} />
</Fragment>)}
</>