Commit aebd0488 authored by Sam Calisch's avatar Sam Calisch
Browse files

make bc832 single sided, add button for programming reset

parent c66cb684
Pipeline #577 passed with stage
in 1 second
bc832-ftdi/bc832-nrf-ftdi-interior.png

6.88 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-interior.png

6.35 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-interior.png
bc832-ftdi/bc832-nrf-ftdi-interior.png
bc832-ftdi/bc832-nrf-ftdi-interior.png
bc832-ftdi/bc832-nrf-ftdi-interior.png
  • 2-up
  • Swipe
  • Onion skin
bc832-ftdi/bc832-nrf-ftdi-layout.png

154 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-layout.png

147 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-layout.png
bc832-ftdi/bc832-nrf-ftdi-layout.png
bc832-ftdi/bc832-nrf-ftdi-layout.png
bc832-ftdi/bc832-nrf-ftdi-layout.png
  • 2-up
  • Swipe
  • Onion skin
bc832-ftdi/bc832-nrf-ftdi-traces.png

12.3 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-traces.png

12.3 KB | W: | H:

bc832-ftdi/bc832-nrf-ftdi-traces.png
bc832-ftdi/bc832-nrf-ftdi-traces.png
bc832-ftdi/bc832-nrf-ftdi-traces.png
bc832-ftdi/bc832-nrf-ftdi-traces.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -21,6 +21,15 @@ class TagConnectPDI(Component):
]
class R_0805_small(Component):
''' 0805 Resistor
'''
_pad_0805 = s2d.rectangle(-.017,.017, -.026, .026)
pins = [Pin(-0.04, 0, _pad_0805), Pin(0.04, 0, _pad_0805)]
prefix = 'R'
vias = []
class Button(Component):
''' SW262CT-ND
'''
......@@ -85,7 +94,7 @@ class Header_FTDI(Component):
'''
_pad_header = chamfered_rectangle(-0.06, 0.08,-0.025, 0.025,.007)
pins = [
Pin(0, -0.25, _pad_header, 'RTS'),
#Pin(0, -0.25, _pad_header, 'RTS'),
Pin(0, -0.15, _pad_header, 'RX'),
Pin(0, -0.05, _pad_header, 'TX'),
Pin(0, 0.05, _pad_header, 'VCC'),
......@@ -212,7 +221,7 @@ class Hole(Component):
width = .9
height = .69
height = .7
pcb = PCB(0,0,width,height,chamfer_distance=.02)
......@@ -230,7 +239,7 @@ def connectM(pin1,pin2,dx,width=.012):
ftdi = Header_FTDI(.2,.32,180,'ftdi')
ftdi = Header_FTDI(.2,.33,180,'ftdi')
pcb += ftdi
reg = Regulator_SOT23(ftdi.x+.13,ftdi['GND'].y+.03,-90,'3.3v')
pcb += reg
......@@ -246,7 +255,6 @@ pcb.connectD(C_in[1],[C_in[1].x,C_in[1].y-.02],reg['GND'])
pcb.connectV(reg['IN'],C_in[0],width=.02)
pcb.connectH(reg['OUT'],C_out[0],width=.02)
pcb.connectH(reg['GND'],C_out[1],width=.02)
connectG(C_in[1],-.01,-.05)
mdb = BC832(ftdi.x+.5,ftdi.y+.1,-90,'Fanstel\nBC832\nNRF52')
pcb += mdb
......@@ -254,36 +262,36 @@ pcb += mdb
pcb.connectD(mdb['P8'],[mdb['P8'].x-.01,mdb['P8'].y],[ftdi['TX'].x+.31,ftdi['TX'].y+.03],[ftdi['TX'].x+.03,ftdi['TX'].y-.019],ftdi['TX'],width=.014)
pcb.connectD(mdb['P6'],[mdb['P6'].x,mdb['P6'].y+.02],[mdb['P6'].x-.07,mdb['P6'].y+.035],[ftdi['RX'].x+.28,ftdi['RX'].y-.043],[ftdi['RX'].x+.1,ftdi['RX'].y-.088],[ftdi['RX'].x+.09,ftdi['RX'].y-.03],ftdi['RX'],width=.012)
connectG(mdb['GND'],0,.07,width=.016)
swd = TagConnectSWD(ftdi.x+.17,mdb.y+.1,-90,'swd')
pcb += swd
pcb.connectD(swd['SWDCLK'],[swd['SWDCLK'].x+.02,swd['SWDCLK'].y],[mdb['SWDCLK'].x-.24,mdb['SWDCLK'].y+.01],[mdb['SWDCLK'].x-.02,mdb['SWDCLK'].y+.055],mdb['SWDCLK'],width=.014)
pcb.connectD(swd['SWDIO'],[swd['SWDIO'].x+.02,swd['SWDIO'].y],[mdb['SWDIO'].x-.32,mdb['SWDIO'].y+.04],[mdb['SWDIO'].x-.03,mdb['SWDIO'].y+.087],mdb['SWDIO'],width=.014)
pcb.connectD(swd['SWDCLK'],[swd['SWDCLK'].x+.02,swd['SWDCLK'].y],[mdb['SWDCLK'].x-.24,mdb['SWDCLK'].y+.01],[mdb['SWDCLK'].x-.02,mdb['SWDCLK'].y+.05],mdb['SWDCLK'],width=.012)
pcb.connectD(swd['SWDIO'],[swd['SWDIO'].x+.02,swd['SWDIO'].y],[mdb['SWDIO'].x-.32,mdb['SWDIO'].y+.04],[mdb['SWDIO'].x-.03,mdb['SWDIO'].y+.079],mdb['SWDIO'],width=.012)
#pcb.connectD(ftdi['RTS'],[ftdi['RTS'].x,ftdi['RTS'].y+.03],[mdb['DFU'].x-.05,mdb['DFU'].y+.12],mdb['DFU'],width=.014)
Rrts1 = R_0805(ftdi.x-.13,ftdi['RTS'].y+.07,0,'2k')
pcb += Rrts1
Rrts2 = R_0805(Rrts1.x+.13,Rrts1.y,0,'1k')
pcb += Rrts2
pcb.connectV(mdb['RESET'],[ftdi.x-.11,ftdi['TX'].y-.05],Rrts1[0],width=.014)
pcb.connectV(Rrts1[0],Rrts2[1])
pcb.connectV(Rrts2[0],ftdi['RTS'])
pcb.connectV(Rrts1[1],ftdi['GND'])
button = Button(ftdi.x-.01,ftdi.y+.26,0)
pcb += button
pcb.connectH(ftdi['GND'],[button[1].x-.07,button[1].y],button[1])
pcb.connectV(mdb['RESET'],[ftdi.x-.11,ftdi['TX'].y-.05],button[3],width=.014)
pcb.connectV(button[3],button[0])
pcb.connectV(button[1],button[2])
pcb.connectD(mdb['GND'],[mdb['GND'].x,mdb['GND'].y+.03],[button.x+.15,mdb['GND'].y+.108],button[2],width=.012)
C2 = C_0805(C_out.x,C_out.y+.13,-90,'C2\n10uF',label_size=.02)
pcb += C2
pcb.connectV(C2[1],C_in[1],width=.02)
pcb.connectH(C2[0],C_out[0],width=.02)
x1 = Crystal_FC135(mdb['XL1'].x+.03,mdb.y-.3,90,'X1\n32.768',label_size=.025)
x1 = Crystal_FC135(mdb['XL1'].x+.03,mdb.y-.32,90,'X1\n32.768',label_size=.025)
pcb += x1
cx1 = C_0805(x1.x-.1,x1[0].y-.01,0,'CX1\n22pF',label_size=.02)
cx2 = C_0805(x1.x-.1,x1[1].y+.01,180,'CX2\n22pF',label_size=.02)
cx1 = C_0805(x1.x-.1,x1[0].y-.022,0,'CX1\n22pF',label_size=.02)
cx2 = C_0805(x1.x-.1,x1[1].y+.005,180,'CX2\n22pF',label_size=.02)
pcb += cx1
pcb += cx2
pcb.connectD(x1[0],mdb['XL1'])
......@@ -291,8 +299,8 @@ pcb.connectD(mdb['XL2'],[mdb['XL2'].x,mdb['XL2'].y-.052],[mdb['XL2'].x+.03,mdb['
pcb.connectV(cx2[0],cx1[1])
pcb.connectV(x1[0],cx1[0])
pcb.connectV(x1[1],cx2[1])
pcb.connectD(cx1[1],[cx1[1].x-.02,cx1[1].y],[C2[1].x+.06,C2[1].y-.03],C2[1])
pcb.connectD(mdb['VDD'],[mdb['VDD'].x,mdb['VDD'].y-.22],[cx2.x-.07,cx2.y-.07],[C_out[0].x+.05,C_out[0].y-.04],C_out[0])
pcb.connectD(cx1[1],[C2[1].x+.091,C2[1].y-.03],C2[1],width=.012)
pcb.connectD(mdb['VDD'],[mdb['VDD'].x,mdb['VDD'].y-.22],[cx2.x-.075,cx2.y-.052],[C_out[0].x+.051,C_out[0].y-.04],C_out[0])
led = R_0805(mdb['P26'].x+.01,mdb['P26'].y-.2,0,'led',label_size=.03)
pcb += led
......@@ -303,14 +311,14 @@ pcb.connectV(mdb['VDD'],led[0])
pcb.connectV(mdb['P27'],R_led[0])
pcb.connectH(swd[4],swd[1])
connectG(swd[1],-.04,.05)
#header
#h1 = Header_Daughter(mdb.x+.07,mdb.y+.32,90,'h1')
#pcb += h1
pcb.connectD(swd[1],button[2])
R1 = R_0805_small(mdb['RESET'].x-.076,mdb['RESET'].y-.07,0,'10k',label_size=.03)
pcb += R1
pcb.connectV(mdb['RESET'],R1[0])
pcb.connectH(C2[0],R1[1])
cad.shapes = pcb.layout()
cad.shape = pcb.traces+(pcb.cutout-pcb.cutout)
cad.shape = pcb.cutout+(pcb.traces-pcb.traces)
#cad.shape = pcb.traces+(pcb.cutout-pcb.cutout)
#cad.shape = pcb.cutout+(pcb.traces-pcb.traces)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment