mohan-bee/rc-link-breakaway-panel
A four-layer RC link panel combining an STM32/E28 2.4‑GHz transmitter with USB-RP2040 socket and an STM32/E28 receiver providing six buffered PWM servo outputs, regulated 3.3‑V power, headers, controls, and protection/decoupling.
- Version
- 0.1.5
- License
- unset
- Stars
- 0
circuits/transmitter/XiaoSocket.tsx
// XIAO RP2040, component side, USB-C toward +Y. Two 1x7 sockets.
// Module is installed above the carrier on sockets, not reflowed onto it.
const labels = {
pin1: ["D0", "GP26"], pin2: ["D1", "GP27"],
pin3: ["D2", "GP28"], pin4: ["D3", "GP29"],
pin5: ["D4", "GP6"], pin6: ["D5", "GP7"],
pin7: ["D6", "GP0", "TX"], pin8: ["D7", "GP1", "RX"],
pin9: ["D8", "GP2"], pin10: ["D9", "GP4"],
pin11: ["D10", "GP3"], pin12: ["V3V3"],
pin13: ["GND"], pin14: ["VBUS"],
} as const;
export function XiaoSocket() {
return <chip name="U_TX_USB" manufacturerPartNumber="Seeed XIAO RP2040 socket carrier"
doNotPlace layer="top" pcbStyle={{silkscreenTextVisibility:"hidden"}} pcbX={-18} pcbY={19.5}
pinAttributes={{pin1:{isInput:true},pin2:{isInput:true},pin3:{isOutput:true},pin6:{isOutput:true},pin7:{isOutput:true},pin8:{isInput:true},pin12:{providesPower:true,providesVoltage:"3.3V"},pin13:{requiresGround:true},pin14:{requiresPower:true,providesPower:true,providesVoltage:"5V"}}}
schX={0} schY={0} schWidth={1.77} schHeight={1.6}
schSectionName="USB controller" schSheetName="TX_usb" pinLabels={labels}
schPinArrangement={{ leftSide: { direction: "top-to-bottom", pins: [1,2,3,4,5,6,7] },
rightSide: { direction: "bottom-to-top", pins: [8,9,10,11,12,13,14] } }}
footprint={<footprint>
{Array.from({length: 14}, (_, index) => {
const pin = index + 1;
return <platedhole key={pin} portHints={[`pin${pin}`]}
shape="circle" holeDiameter={1} outerDiameter={1.8}
pcbX={pin <= 7 ? -7.62 : 7.62}
pcbY={pin <= 7 ? 7.62 - index * 2.54 : -7.62 + (index - 7) * 2.54} />;
})}
<silkscreenrect pcbX={0} pcbY={0} width={17.8} height={21} strokeWidth={0.15} />
<courtyardrect pcbX={0} pcbY={0} width={18.4} height={21}/>
<silkscreentext pcbX={0} pcbY={5} text="USB-C" fontSize={1.2} />
<silkscreentext pcbX={0} pcbY={1} text="XIAO" fontSize={1.2} />
<silkscreentext pcbX={0} pcbY={-1} text="RP2040" fontSize={1} />
</footprint>} />;
}