Skip to content
Snippets Groups Projects
Commit aebd0488 authored by Sam Calisch's avatar Sam Calisch
Browse files

make bc832 single sided, add button for programming reset

parent c66cb684
No related branches found
No related tags found
No related merge requests found
Pipeline #
bc832-ftdi/bc832-nrf-ftdi-interior.png

6.88 KiB | W: | H:

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

6.35 KiB | 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 KiB | W: | H:

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

147 KiB | 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 KiB | W: | H:

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

12.3 KiB | 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)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment