imrishabh18/boost-converter
This code defines a PCB schematic and 3D model layout focusing on a power conversion circuit with components like USB-C connector, MT3608 step-up regulator, inductor, diode, input/output capacitors, and resistors arranged on a double-layer PCB.
- Version
- 1.0.2
- License
- unset
- Stars
- 0
index.circuit.tsx
PCB
Schematic
import { MT3608 } from "imports/MT3608"
import { USBC } from "imports/USBC"
import { Capacitor1206 } from "imports/Capcitor1206"
import { Inductor } from "imports/Inductor"
import { TerminalConnector } from "imports/TerminalConnector"
const INCH = 25.4
const BOARD_W = 1.43 * INCH
const BOARD_H = 0.6 * INCH
const BOARD_CENTER_X_IN = 0.565
const BOARD_CENTER_Y_IN = 0.3
const g = (xIn: number, yIn: number) => ({
x: (xIn - BOARD_CENTER_X_IN) * INCH,
y: (yIn - BOARD_CENTER_Y_IN) * INCH,
})
const ss34SmaFootprint = "sma_p4.1148mm_pl1.27mm_pw1.471mm"
const inputCap = g(0.265, 0.17795)
const outputCap = g(0.735, 0.41795)
const inductor = g(0.43495, 0.45)
const diode = g(0.654, 0.188)
const controller = g(0.42995, 0.22495)
const rLow = g(0.50235, 0.05)
const rHigh = g(0.70735, 0.05)
const usbC = { x: -14.35, y: 0 }
const cc1 = { x: -9.7, y: 1.25 }
const cc2 = { x: -10, y: -1.75 }
const terminal = g(1.115, 0.3)
export default () => (
<board
width={`${BOARD_W}mm`}
height={`${BOARD_H}mm`}
layers={2}
autorouter="auto-local"
minTraceWidth="0.5mm"
nominalTraceWidth="0.25mm"
minTraceToPadEdgeClearance="0.05mm"
minPadEdgeToPadEdgeClearance="0.05mm"
minBoardEdgeClearance="0mm"
pcbStyle={{ silkscreenFontSize: "0.75mm" }}
>
<USBC
name="USB1"
pcbX={usbC.x}
pcbY={usbC.y}
pcbRotation={-90}
schX={-7}
schY={0}
connections={{
A4B9: "net.V5",
B4A9: "net.V5",
A1B12: "net.GND",
B1A12: "net.GND",
}}
/>
<resistor
name="R_CC1"
resistance="5.1k"
manufacturerPartNumber="0402WGF5101TCE"
supplierPartNumbers={{ jlcpcb: ["C25905"] }}
footprint="0402"
pcbX={cc1.x}
pcbY={cc1.y}
schX={-5.4}
schY={-2.5}
connections={{ pin1: ".USB1 > .A5", pin2: "net.GND" }}
/>
<resistor
name="R_CC2"
resistance="5.1k"
manufacturerPartNumber="0402WGF5101TCE"
supplierPartNumbers={{ jlcpcb: ["C25905"] }}
footprint="0402"
pcbX={cc2.x}
pcbY={cc2.y}
schX={-4.2}
schY={-2.5}
connections={{ pin1: ".USB1 > .B5", pin2: "net.GND" }}
/>
<TerminalConnector
name="X1"
manufacturerPartNumber="WJ2EDGV-5.08-2P"
supplierPartNumbers={{ jlcpcb: ["C8461"] }}
pcbX={terminal.x}
pcbY={terminal.y}
schX={7}
schY={0}
pinLabels={{ pin1: "pin1", pin2: "pin2" }}
connections={{ pin1: "net.VOUT_12V", pin2: "net.GND" }}
pcbRotation={-270}
/>
<MT3608
name="U1"
manufacturerPartNumber="MT3608"
pcbRotation={90}
pcbX={controller.x}
pcbY={controller.y}
schX={0}
schY={0}
pinLabels={{
pin1: "SW",
pin2: "GND",
pin3: "FB",
pin4: "EN",
pin5: "IN",
pin6: "NC",
}}
schPinArrangement={{
leftSide: { direction: "top-to-bottom", pins: ["SW", "GND", "FB"] },
rightSide: { direction: "bottom-to-top", pins: ["EN", "IN", "NC"] },
}}
connections={{
SW: "net.SW",
GND: "net.GND",
FB: "net.FB",
EN: "net.V5",
IN: "net.V5",
}}
/>
<Inductor
name="L1"
displayName="10uH"
manufacturerPartNumber="0630CDMCCDS-100MC"
supplierPartNumbers={{ jlcpcb: ["C167292"] }}
pcbX={inductor.x}
pcbY={inductor.y}
schX={-2.7}
schY={2.5}
connections={{ pin1: "net.V5", pin2: "net.SW" }}
/>
<diode
name="D1"
manufacturerPartNumber="SS36"
supplierPartNumbers={{ jlcpcb: ["C16015"] }}
footprint={ss34SmaFootprint}
pcbX={diode.x}
pcbY={diode.y}
schX={2.9}
schY={2.5}
connections={{ anode: "net.SW", cathode: "net.VOUT_12V" }}
/>
<Capacitor1206
name="C1"
pcbRotation={-90}
pcbX={inputCap.x}
pcbY={inputCap.y}
schX={-4}
schY={-1.7}
connections={{ pin1: "net.V5", pin2: "net.GND" }}
/>
<Capacitor1206
name="C2"
pcbRotation={-90}
pcbX={outputCap.x}
pcbY={outputCap.y}
schX={4.3}
schY={-1.7}
connections={{ pin1: "net.VOUT_12V", pin2: "net.GND" }}
/>
<resistor
name="R1"
resistance="62k"
manufacturerPartNumber="0603WAF6202T5E"
supplierPartNumbers={{ jlcpcb: ["C23221"] }}
footprint="0603"
pcbX={rHigh.x}
pcbY={rHigh.y}
schX={4.8}
schY={0.4}
connections={{ pin1: "net.VOUT_12V", pin2: "net.FB" }}
/>
<resistor
name="R2"
resistance="3.3k"
manufacturerPartNumber="0603WAF3301T5E"
supplierPartNumbers={{ jlcpcb: ["C22978"] }}
footprint="0603"
pcbX={rLow.x}
pcbY={rLow.y}
schX={4.8}
schY={-1.4}
connections={{ pin1: "net.FB", pin2: "net.GND" }}
/>
{/* <copperpour connectsTo="net.GND" layer="top" clearance="0.25mm" />
<copperpour connectsTo="net.GND" layer="bottom" clearance="0.25mm" /> */}
</board>
)