add footprint generator for 4ucon 11071 micro USB connector with tangs
authorBdale Garbee <bdale@gag.com>
Mon, 5 Nov 2018 19:55:30 +0000 (12:55 -0700)
committerBdale Garbee <bdale@gag.com>
Mon, 5 Nov 2018 19:55:30 +0000 (12:55 -0700)
packages/11071.5c [new file with mode: 0644]
packages/Makefile

diff --git a/packages/11071.5c b/packages/11071.5c
new file mode 100644 (file)
index 0000000..9dbe26d
--- /dev/null
@@ -0,0 +1,71 @@
+/*
+ * Copyright © 2018 Bdale Garbee <bdale@gag.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+/* 4ucon 11071 USB micro B with solder tangs. Y origin is the board edge */
+
+load "footprint.5c"
+import Footprint;
+
+real pad_width = 0.4;
+real pad_height = 1.35;
+real pad_spacing = 0.65;
+real pad_y = 1.45 + 3.35 - pad_height/2;
+
+real tab_width = 1.9;
+real tab_height = 1.9;
+real tab_x = 0.2 + tab_width / 2;
+real tab_y = 1.45;
+
+real tang_y = 1.45;
+real tang_width = 0.45;
+real tang_radius = tang_width / 2;
+real tang_length = 1.55 - tang_width;
+real tang_x = 6.4/2;
+real tang_copper = (2.15 - 1.55) / 2;
+
+real wing_width = 1.6;
+real wing_height = 1.4;
+real wing_x = 3.2;
+real wing_y = 1.45 + 2.25;
+
+element_start("11071");
+
+pad_mm(pad_spacing* 2, pad_y, pad_width, pad_height, "VBUS", "1");
+pad_mm(pad_spacing* 1, pad_y, pad_width, pad_height, "D-", "2");
+pad_mm(pad_spacing* 0, pad_y, pad_width, pad_height, "D+", "3");
+pad_mm(pad_spacing*-1, pad_y, pad_width, pad_height, "HS", "4");
+pad_mm(pad_spacing*-2, pad_y, pad_width, pad_height, "GND", "5");
+
+/* "Wings", which are next to the signal pads */
+
+pad_mm_space(-wing_x, wing_y, wing_width, wing_height, 0, "GND", "5");
+pad_mm_space( wing_x, wing_y, wing_width, wing_height, 0, "GND", "5");
+
+/* Tabs under package */
+
+pad_mm_space(-tab_x, tab_y, tab_width, tab_height, 0, "GND", "5");
+pad_mm_space( tab_x, tab_y, tab_width, tab_height, 0, "GND", "5");
+
+/* tangs at edges of package */
+
+pin_mm_space(-tang_x, tang_y - tang_length / 2, tang_radius * 2, tang_copper, 0, "GND", "5");
+pin_mm_space(-tang_x, tang_y + tang_length / 2, tang_radius * 2, tang_copper, 0, "GND", "5");
+
+pin_mm_space( tang_x, tang_y - tang_length / 2, tang_radius * 2, tang_copper, 0, "GND", "5");
+pin_mm_space( tang_x, tang_y + tang_length / 2, tang_radius * 2, tang_copper, 0, "GND", "5");
+
+element_end();
index b42c55abe67769a924f49012f3a4bee2e36699a3..219ead4fe1befbf600456607008af974dff1dc97 100644 (file)
@@ -116,7 +116,8 @@ FOOTPRINTS= \
        JTIBM15.fp \
        s-pqfp-g32.fp \
        A29100-009.fp \
-       506CD.fp
+       506CD.fp \
+       11071.fp
 
 .5c.fp:
        nickle $*.5c -o $@