From 8ee17b605428711e59bf4b0d5b642957cec75fc9 Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Sun, 13 Dec 2020 13:45:25 -0700 Subject: [PATCH] starting schematic for a CSM84 I/O fanout board based on Marek's work --- Makefile | 4 + Notebook | 134 +++++++++++++++++++ csm84io.sch | 363 ++++++++++++++++++++++++++++++++++++++++++++++++++++ gafrc | 3 + project | 12 ++ project.lht | 9 ++ 6 files changed, 525 insertions(+) create mode 100644 Makefile create mode 100644 Notebook create mode 100644 csm84io.sch create mode 100644 gafrc create mode 100644 project create mode 100644 project.lht diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..532e9d0 --- /dev/null +++ b/Makefile @@ -0,0 +1,4 @@ +PROJECT=csm84io +SCHEMATICS=csm84io.sch + +include ../altusmetrum/pcb-rnd.mk diff --git a/Notebook b/Notebook new file mode 100644 index 0000000..61756e0 --- /dev/null +++ b/Notebook @@ -0,0 +1,134 @@ +2010.12.25 +- thinking more about a bluetooth TeleDongle variant. the basic idea is to + use a cc2540 soc to provide usb and/or bluetooth interfaces, and a cc1101 + transceiver on one SPI port for our RF modes. Thus the code runs on the + bluetooth part unlike all our other designs. + + swrr072 is a USB dongle design that shows use of a Johanson integrated balun + that's 0.68 at q100 with a pcb trace antenna on 2.4ghz .. pcb is 4 layers + and 1.616 x 0.632" .. looks like I could take the RF end of the design as is + for the 2.4gzh end. Maybe make the board wider to fit some hammond box? + + using a Hammond 1591XXMTBU or 1591XXLTBU, could put the 2.4ghz antenna on + one of the long sides, and UHF SMA and USB+power switch on opposite small + sides? Can I find a suitable lipo to mount on the non-2.4ghz side? + + 38 x 27 x 3mm 330mAh + http://cgi.ebay.com/3-7V-330mAh-lithium-battery-Polymer-Ipod-Mp3-GPS-/220713108705?pt=US_Batteries&hash=item336386c4e1 + + 62 x 35 x 3mm 765mAh + http://cgi.ebay.com/3-7V-765mAh-lithium-battery-Polymer-Ipod-Mp3-GPS-/220713108713?pt=US_Batteries&hash=item336386c4e9 + + 43 x 30 x 4mm 450mAh + http://cgi.ebay.com/LiPo-Lithium-Polymer-Battery-3-7V-450mAh-MP3-MP4-GPS-/300427570775?pt=US_Batteries&hash=item45f2e0ee57 + + 52 x 34 x 4mm 600mAh *good choice?* $2.30 plus shipping + http://cgi.ebay.com/Lithium-Polymer-Battery-3-7V-600mAh-MP3-MP4-GPS-NAT-/290433981343?pt=US_Batteries&hash=item439f36db9f + +2010.12.30 +- after much online discussion, the new plan is to use a cc1111 and a Rayson + BTM-182 bluetooth module .. the latter should be budgeted at about $15 each + in quantity 100 .. uses async serial, less dev effort, no regulatory issues + +2011.03.31 +- Raysom BTM-182 peak current draw is 58mA, Roving Networks RN-42 peaks at 50mA + + Raysom gave us a quote of $10 per delivered at q100 + + RovingNetworks replied to our quote request but we don't have a number yet + + Rough estimate of cogs puts us at retail price of $150 + +2011.04.13 +- Pondering how much to clip off the SMA end of the PCB to ensure the SMA + flange fits inside the box. + + Our connector needs 3.81 mm "above" the PCB which for TeleBT actually + means between the PCB bottom surface and the base of the box. The box + boss height is specified as 4mm, so that fits in a purely vertical sense, + but I'm worried about the box wall to base radius, and the fact that the + box walls aren't exactly vertical. + + Hammond doesn't specify the radius between the wall and base of the 1551K + box. Given other things they do specify, it might be that 1 mm is a + conservative guess. The specification for the inside dimensions of the lip + around the lid is 10 mils smaller than the max PCB dimensions, and it *looks* + like that inside edge might be about where the wall radius ends. The drawing + shows the lid inside as 6.73mm less than box outside dimension, which seems + reasonably consistent with my estimate of a 2mm wall thickness, about 1mm + for the lid lip, and some mold tolerances. So, let's use the box lid lip + inside dimensions as a proxy for the box base inside dimensions until proven + otherwise. + + So we need to peel 5 mils off to account for the box radius. The flange + itself is 40 mils. And I'm nervous about the guesstimates so I'll add + another 5 mils of margin. So we need to take 50 mils off the SMA end of + the PCB. + + As a sanity check, on TeleDongle the closes screw hole is 78 mils from the + SMA edge of the PCB, which is 50 mils less than a maximum-size PCB would + have. If anything, the TeleDongle SMA ends up inside the wall a bit more + that necessary, such that tightening the SMA nut deflects the wall inward. + So, 50 mils might indeed be a good choice for TeleBT. We'll give it a try! + +2011.06.07 +- as I start to work on rotating the design, noting the changes between the + max 1551 board outline and what I used for v0.1: + + outline layer: + + - Line[278543 24606 291339 24606 1000 2000 "lock"] + - Line[291339 24606 291339 129921 1000 2000 "lock"] + - Line[287402 133854 24606 133854 1000 2000 "lock"] + - Arc[287402 129921 3937 3937 1000 2000 90 90 "lock"] + + Line[278543 24606 286338 24606 1000 2000 "lock"] + + Line[286338 133854 24606 133854 1000 2000 "lock"] + + Line[286338 24606 286338 133854 1000 2000 "lock"] + + similar changes on the top layer: + + - Line[287402 133854 24606 133854 100 2000 "clearline,lock"] + - Line[24606 133854 24606 121063 100 2000 "clearline,lock"] + - Line[12795 109252 0 109252 100 2000 "clearline,lock"] + - Line[3927 0 266732 0 100 2000 "clearline,lock"] + - Line[291339 24606 291339 129921 100 2000 "clearline,lock"] + - Line[278543 24606 291339 24606 100 2000 "clearline,lock"] + - Line[266732 0 266732 12795 100 2000 "clearline,lock"] + - Line[0 109252 0 3937 100 2000 "clearline,lock"] + - Arc[3937 3937 3937 3937 100 2000 270 90 "clearline,lock"] + - Arc[278543 12795 11811 11811 100 2000 0 90 "clearline,lock"] + - Arc[287402 129921 3937 3937 100 2000 90 90 "clearline,lock"] + - Arc[12795 121063 11811 11811 100 2000 180 90 "clearline,lock"] + + Line[286338 24606 286338 133854 600 2000 "clearline,lock"] + + Line[286338 133854 24606 133854 600 2000 "clearline,lock"] + + Line[24606 133854 24606 121063 600 2000 "clearline,lock"] + + Line[12795 109252 0 109252 600 2000 "clearline,lock"] + + Line[3927 0 266732 0 600 2000 "clearline,lock"] + + Line[278543 24606 286338 24606 600 2000 "clearline,lock"] + + Line[266732 0 266732 12795 600 2000 "clearline,lock"] + + Line[0 109252 0 3937 600 2000 "clearline,lock"] + + Arc[3937 3937 3937 3937 600 2000 270 90 "clearline,lock"] + + Arc[278543 12795 11811 11811 600 2000 0 90 "clearline,lock"] + + Arc[12795 121063 11811 11811 600 2000 180 90 "clearline,lock"] + +2013.01.25 +- reviewing design with an eye towards moving to production + + - we have the ability to sample v_lipo, but is it useful? + +- need to move design to current preferred parts list +- verify button fits cleanly through box wall +- artwork is solid .. did a lot for v0.3 + +2013.04.08 +- problems in v1.0 build fixed for v1.1 + + companion and debug connectors should be rotated so cable dresses + towards center of board like TD + + update D1 footprint to clearly indicate cathode end so we don't + mess that up again + + we're not loading the flash part, so just remove it + +2016.03.20 +- to build a TeleBT with BTle: + + swap out Rayson module for DK BM70BLES1FC2-0002AA-ND + ? swap out CPU for STM32F042, since it has in-built USB bootloader diff --git a/csm84io.sch b/csm84io.sch new file mode 100644 index 0000000..1900fbe --- /dev/null +++ b/csm84io.sch @@ -0,0 +1,363 @@ +v 20201211 2 +N 70300 59500 75900 59500 4 +N 72100 59500 72100 60000 4 +T 88800 41800 9 30 1 0 0 0 1 +CSM84 I/O +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MMA7260QT-ND +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MCP9700-E/TO-ND +N 69500 60900 71000 60900 4 +{ +T 69500 61000 5 10 1 1 0 0 1 +netname=v_usb +} +N 71000 60500 70900 60500 4 +N 70900 60500 70900 60900 4 +C 72700 54600 1 0 0 resistor.sym +{ +T 73000 55000 5 10 0 0 0 0 1 +device=RESISTOR +T 73000 55000 5 10 1 1 180 0 1 +refdes=R13 +T 73500 55000 5 10 1 1 180 0 1 +value=1k +T 72700 54600 5 10 0 0 90 0 1 +footprint=0402 +} +C 74500 54600 1 90 0 gnd.sym +T 92400 40400 9 10 1 0 0 0 1 +1 +T 90000 40400 9 10 1 0 0 0 1 +1 +T 90600 40400 9 10 1 0 0 0 1 +1 +T 87700 40400 9 10 1 0 0 0 1 +csm84io.sch +T 87700 40100 9 10 1 0 0 0 1 +http://altusmetrum.org/ +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MMA7260QT-ND +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MCP9700-E/TO-ND +C 73900 60900 1 0 0 3.3V-plus.sym +N 73100 60900 75900 60900 4 +C 73800 54600 1 0 0 led.sym +{ +T 74000 55050 5 10 1 1 180 0 1 +refdes=D2 +T 73700 55200 5 10 0 0 0 0 1 +device=LED +T 73750 54600 5 10 0 1 0 0 1 +footprint=0603diode +T 74300 54900 5 10 1 1 0 0 1 +value=red +} +N 73800 54700 73600 54700 4 +C 74300 59900 1 90 0 capacitor.sym +{ +T 73600 60100 5 10 0 0 90 0 1 +device=CAPACITOR +T 74200 60500 5 10 1 1 0 0 1 +refdes=C37 +T 73400 60100 5 10 0 0 90 0 1 +symversion=0.1 +T 74200 60000 5 10 1 1 0 0 1 +value=1uF +T 74300 59900 5 10 0 0 0 0 1 +footprint=0402 +} +N 74100 60800 74100 60900 4 +C 72900 60500 1 270 0 capacitor.sym +{ +T 73600 60300 5 10 0 0 270 0 1 +device=CAPACITOR +T 73200 60200 5 10 1 1 0 0 1 +refdes=C38 +T 73800 60300 5 10 0 0 270 0 1 +symversion=0.1 +T 73200 59700 5 10 1 1 0 0 1 +value=10nF +T 72900 60500 5 10 0 0 270 0 1 +footprint=0402 +} +C 71000 60000 1 0 0 TC2185.sym +{ +T 71395 61195 5 10 1 1 0 0 1 +refdes=U1 +T 71595 60695 5 10 0 1 0 0 1 +device=IC +T 70995 59995 5 10 0 1 0 0 1 +footprint=SOT23-5 +T 71000 60000 5 10 1 1 0 0 1 +value=TC2185-3.3 +} +C 72700 54000 1 0 0 resistor.sym +{ +T 73000 54400 5 10 0 0 0 0 1 +device=RESISTOR +T 73000 53900 5 10 1 1 180 0 1 +refdes=R12 +T 73500 53900 5 10 1 1 180 0 1 +value=1k +T 72700 54000 5 10 0 0 90 0 1 +footprint=0402 +} +C 74500 54000 1 90 0 gnd.sym +C 73800 54000 1 0 0 led.sym +{ +T 74100 53950 5 10 1 1 180 0 1 +refdes=D3 +T 73700 54600 5 10 0 0 0 0 1 +device=LED +T 73750 54000 5 10 0 1 0 0 1 +footprint=0603diode +T 74300 53800 5 10 1 1 0 0 1 +value=blue +} +N 73800 54100 73600 54100 4 +C 50000 40000 0 0 0 title-E.sym +T 50000 40000 8 10 0 1 0 0 1 +value=On/Off +C 72000 59200 1 0 0 gnd.sym +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MMA7260QT-ND +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MCP9700-E/TO-ND +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MMA7260QT-ND +T 13300 -8600 8 10 0 1 0 0 1 +vendor_part_number=MCP9700-E/TO-ND +C 70500 59900 1 90 0 capacitor.sym +{ +T 69800 60100 5 10 0 0 90 0 1 +device=CAPACITOR +T 70200 60500 5 10 1 1 0 6 1 +refdes=C6 +T 69600 60100 5 10 0 0 90 0 1 +symversion=0.1 +T 70200 60100 5 10 1 1 0 6 1 +value=1uF +T 70500 59900 5 10 0 0 0 0 1 +footprint=0402 +} +N 70300 60800 70300 60900 4 +C 59200 41300 1 0 1 conn-4.sym +{ +T 59200 41300 5 10 0 0 0 6 1 +footprint=0-215079-4 +T 59200 41300 5 10 0 0 0 6 1 +loadstatus=noload +T 59200 41300 5 10 0 0 0 6 1 +device=CONNECTOR +T 58800 42900 5 10 1 1 0 6 1 +refdes=J6 +T 59000 41100 5 10 1 1 0 6 1 +value=Debug +} +C 59500 42300 1 0 1 gnd.sym +N 59400 42600 59200 42600 4 +N 59200 42200 60300 42200 4 +{ +T 60300 42300 5 10 1 1 0 6 1 +netname=reset_n +} +N 59800 45300 59200 45300 4 +{ +T 59300 45400 5 10 1 1 0 0 1 +netname=v_usb +} +C 59300 43400 1 0 1 gnd.sym +C 67900 51800 1 0 0 3.3V-plus.sym +N 68100 51200 68100 51800 4 +N 68100 51400 69300 51400 4 +N 68900 51400 68900 51200 4 +N 68500 51400 68500 51200 4 +C 68800 42000 1 0 0 gnd.sym +N 68500 42300 69300 42300 4 +N 69300 42400 69300 42300 4 +N 68900 42400 68900 42300 4 +N 68500 42400 68500 42300 4 +N 62900 50500 64200 50500 4 +{ +T 62900 50600 5 10 1 1 0 0 1 +netname=reset_n +} +C 59200 43300 1 0 1 USBmicroB.sym +{ +T 58845 43695 5 10 0 1 0 6 1 +footprint=11071 +T 59200 43300 5 10 0 0 0 0 1 +device=CONNECTOR +T 59200 43300 5 10 0 0 0 0 1 +value=USBmicroB +T 58205 45700 5 10 1 1 0 6 1 +refdes=J5 +} +N 64200 44900 61000 44900 4 +{ +T 63400 45000 5 10 1 1 0 0 1 +netname=usbdm +} +N 64200 44500 61000 44500 4 +{ +T 63400 44600 5 10 1 1 0 0 1 +netname=usbdp +} +C 64000 49800 1 0 0 gnd.sym +N 64100 50100 64200 50100 4 +N 59200 41800 60900 41800 4 +{ +T 59700 41900 5 10 1 1 0 0 1 +netname=swdio +} +N 59200 41400 61300 41400 4 +{ +T 59700 41500 5 10 1 1 0 0 1 +netname=swclk +} +C 69900 52100 1 0 0 capacitor.sym +{ +T 70100 52800 5 10 0 0 0 0 1 +device=CAPACITOR +T 70100 53000 5 10 0 0 0 0 1 +symversion=0.1 +T 69900 52100 5 10 0 1 0 0 1 +footprint=0402 +T 69800 52400 5 10 1 1 0 0 1 +refdes=C601 +T 70500 52400 5 10 1 1 0 0 1 +value=1uF +} +C 69900 51600 1 0 0 capacitor.sym +{ +T 70100 52300 5 10 0 0 0 0 1 +device=CAPACITOR +T 70100 52500 5 10 0 0 0 0 1 +symversion=0.1 +T 69900 51600 5 10 0 1 0 0 1 +footprint=0402 +T 69800 51900 5 10 1 1 0 0 1 +refdes=C602 +T 70500 51900 5 10 1 1 0 0 1 +value=0.1uF +} +C 68400 51700 1 0 0 inductor.sym +{ +T 68600 52200 5 10 0 0 0 0 1 +device=INDUCTOR +T 68600 52400 5 10 0 0 0 0 1 +symversion=0.1 +T 68400 51700 5 10 0 1 0 0 1 +footprint=0402 +T 68600 52000 5 10 1 1 0 0 1 +refdes=L600 +T 68600 51600 5 10 1 1 0 0 1 +value=bead +} +N 68400 51800 68100 51800 4 +N 69300 51800 69900 51800 4 +{ +T 69200 51900 5 10 1 1 0 0 1 +netname=vdda +} +N 69700 51800 69700 51200 4 +C 70900 51500 1 0 0 gnd.sym +N 71000 52300 71000 51800 4 +N 71000 51800 70800 51800 4 +N 71000 52300 70800 52300 4 +N 72700 54700 71300 54700 4 +{ +T 71800 54800 5 10 1 1 0 0 1 +netname=led_red +} +N 71600 54100 72700 54100 4 +{ +T 72400 54350 5 10 1 1 180 0 1 +netname=led_blue +} +N 69300 51400 69300 51200 4 +C 61000 44800 1 0 1 resistor.sym +{ +T 60700 45200 5 10 0 0 0 6 1 +device=RESISTOR +T 61000 44800 5 10 0 1 0 0 1 +footprint=0402 +T 60500 45100 5 10 1 1 0 6 1 +refdes=R54 +T 60900 45100 5 10 1 1 0 6 1 +value=22 +} +C 61000 44400 1 0 1 resistor.sym +{ +T 60700 44800 5 10 0 0 0 6 1 +device=RESISTOR +T 61000 44400 5 10 0 1 0 0 1 +footprint=0402 +T 60500 44200 5 10 1 1 0 6 1 +refdes=R55 +T 60900 44200 5 10 1 1 0 6 1 +value=22 +} +N 60100 44900 59200 44900 4 +N 59200 44500 60100 44500 4 +C 59200 44000 1 0 0 nc-right.sym +{ +T 59300 44500 5 10 0 0 0 0 1 +value=NoConnection +T 59300 44700 5 10 0 0 0 0 1 +device=DRC_Directive +} +N 70300 59900 70300 59500 4 +C 75200 59900 1 90 0 capacitor.sym +{ +T 74500 60100 5 10 0 0 90 0 1 +device=CAPACITOR +T 74300 60100 5 10 0 0 90 0 1 +symversion=0.1 +T 75200 59900 5 10 0 1 90 0 1 +footprint=0402 +T 75100 60500 5 10 1 1 0 0 1 +refdes=C51 +T 75100 60100 5 10 1 1 0 0 1 +value=0.1uF +} +C 76100 59900 1 90 0 capacitor.sym +{ +T 75400 60100 5 10 0 0 90 0 1 +device=CAPACITOR +T 75200 60100 5 10 0 0 90 0 1 +symversion=0.1 +T 76100 59900 5 10 0 1 90 0 1 +footprint=0402 +T 76000 60500 5 10 1 1 0 0 1 +refdes=C52 +T 76000 60100 5 10 1 1 0 0 1 +value=0.1uF +} +C 64200 42400 1 0 0 STM32F042-48.sym +{ +T 57800 40800 5 10 0 0 0 0 1 +device=IC +T 79400 51000 5 10 1 1 0 6 1 +value=STM32F042C +T 64500 42700 5 10 0 1 0 0 1 +footprint=lqfp48 +T 64495 50995 5 10 1 1 0 0 1 +refdes=U7 +} +N 69900 52300 69700 52300 4 +N 69700 52300 69700 51800 4 +N 64200 44100 60900 44100 4 +N 60900 41800 60900 44100 4 +N 64200 43700 61300 43700 4 +N 61300 43700 61300 41400 4 +T 86800 40800 9 10 1 0 0 0 2 + Copyright 2020 by Bdale Garbee +Licensed under the TAPR Open Hardware License, http://www.tapr.org/OHL +N 75000 60800 75000 60900 4 +N 75900 60800 75900 60900 4 +N 73100 59500 73100 59600 4 +N 74100 59900 74100 59500 4 +N 75000 59900 75000 59500 4 +N 75900 59900 75900 59500 4 diff --git a/gafrc b/gafrc new file mode 100644 index 0000000..9e10ee9 --- /dev/null +++ b/gafrc @@ -0,0 +1,3 @@ +; empty the library path and populate it with only our own symbols +(reset-component-library) +(load "../altusmetrum/gafrc") diff --git a/project b/project new file mode 100644 index 0000000..afdb8ee --- /dev/null +++ b/project @@ -0,0 +1,12 @@ +# List all the schematics to be netlisted and laid out on the pc board +schematics csm84io.sch + +# for an output-name of foo, gsch2pcb generates files foo.net, foo.pcb, +# and foo.new.pcb. if there is no output name specified, the file names +# are derived from the first listed schematic... +output-name csm84io + +elements-dir ../altusmetrum/packages + +# stick to newlib elements, don't use the older/odder m4 stuff +skip-m4 diff --git a/project.lht b/project.lht new file mode 100644 index 0000000..948c273 --- /dev/null +++ b/project.lht @@ -0,0 +1,9 @@ +li:pcb-rnd-conf-v1 { + ha:overwrite { + ha:rc { + li:library_search_paths { + ../altusmetrum/packages + } + } + } +} -- 2.30.2