tscircuit/sparkfun-boards
This code defines a detailed PCB schematic and physical footprint layout for various embedded hardware modules, mapping electrical pins, mechanical mounting holes, and silk-screen annotations for manufacturing and assembly.
- Version
- 0.0.32
- License
- unset
- Stars
- 3
boards/SparkFun-Breakout-Board-for-XBee-Module/SparkFun-Breakout-Board-for-XBee-Module.circuit.tsx
import { sel } from "tscircuit"
const JP1PinLabels = {
pin1: ["VCC"],
pin2: ["DOUT"],
pin3: ["DIN"],
pin4: ["DO8"],
pin5: ["RST"],
pin6: ["PWM0"],
pin7: ["PWM1"],
pin8: ["RSV"],
pin9: ["DTR"],
pin10: ["GND"],
}
const JP2PinLabels = {
pin1: ["AD0"],
pin2: ["AD1"],
pin3: ["AD2"],
pin4: ["AD3"],
pin5: ["RTS"],
pin6: ["AD5"],
pin7: ["VREF"],
pin8: ["ON"],
pin9: ["CTS"],
pin10: ["AD4"],
}
const chipPinLabels = {
pin1: ["VDD"],
pin2: ["DOUT"],
pin3: ["DIN"],
pin4: ["DIO12"],
pin5: ["RESET"],
pin6: ["RSSI"],
pin7: ["DIO11"],
pin8: ["RES"],
pin9: ["DTR"],
pin10: ["GND"],
pin11: ["DIO4"],
pin12: ["CTS"],
pin13: ["DIO9"],
pin14: ["RES"],
pin15: ["DIO5"],
pin16: ["RTS"],
pin17: ["DIO3"],
pin18: ["DIO2"],
pin19: ["DIO1"],
pin20: ["DIO0"],
}
export default () => (
<board width="26mm" height="26mm">
<chip
name="U1"
pinLabels={chipPinLabels}
footprint="dip20_id0.8_od1.4_w22_p1.9"
schWidth={2}
pcbY={-2.5}
connections={{
pin1: sel.JP1.pin1,
pin2: sel.JP1.pin2,
pin3: sel.JP1.pin3,
pin4: sel.JP1.pin4,
pin5: sel.JP1.pin5,
pin6: sel.JP1.pin6,
pin7: sel.JP1.pin7,
pin8: sel.JP1.pin8,
pin9: sel.JP1.pin9,
pin10: sel.JP1.pin10,
pin11: sel.JP2.pin10,
pin12: sel.JP2.pin9,
pin13: sel.JP2.pin8,
pin14: sel.JP2.pin7,
pin15: sel.JP2.pin6,
pin16: sel.JP2.pin5,
pin17: sel.JP2.pin4,
pin18: sel.JP2.pin3,
pin19: sel.JP2.pin2,
pin20: sel.JP2.pin1,
}}
manufacturerPartNumber="XBEE"
/>
<silkscreentext text="UP" fontSize={2} pcbY={11} pcbX={-10} />
<silkscreentext
text="DOWN"
fontSize={2}
layer="bottom"
pcbY={11}
pcbX={-10}
/>
<silkscreentext text="1" fontSize={2} pcbY={8.5} pcbX={-11} />
<silkscreentext text="20" fontSize={2} pcbY={8.5} pcbX={11} />
<silkscreentext
text="XBee"
fontSize={2}
pcbX={3.5}
pcbY={0}
layer="bottom"
pcbRotation={-90}
/>
<silkscreentext
text="Breakout"
fontSize={2}
layer="bottom"
pcbX={2}
pcbRotation={-90}
/>
<silkscreentext
text="sparkfun.com"
fontSize={2}
layer="bottom"
pcbX={-2}
pcbRotation={-90}
/>
<jumper
schWidth={0.65}
schX={-3}
name="JP1"
schPinArrangement={{
rightSide: {
direction: "top-to-bottom",
pins: [
"pin1",
"pin2",
"pin3",
"pin4",
"pin5",
"pin6",
"pin7",
"pin8",
"pin9",
"pin10",
],
},
}}
pinLabels={JP1PinLabels}
pcbX={-6.431}
pcbRotation={-90}
pcbY={-0.35}
cadModel={null}
footprint="pinrow10_id1.016mm_od1.626mm_p2.53mm_nosquareplating_pinlabelverticallyinverted_pinlabeltextalignright_pinlabelorthogonal_doublesidedpinlabel"
/>
<jumper
schWidth={0.65}
schX={3}
schDirection="left"
name="JP2"
pinLabels={JP2PinLabels}
pcbX={6.431}
pcbY={-0.35}
pcbRotation={-90}
cadModel={null}
footprint="pinrow10_id1.016mm_od1.626mm_p2.53mm_nosquareplating_pinlabelverticallyinverted_pinlabeltextalignleft_pinlabelorthogonal_doublesidedpinlabel"
/>
</board>
)