From 7b99bda1f6a418a1496106a696758ccecbae6d36 Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Tue, 16 Nov 2021 19:54:01 -0700 Subject: [PATCH] footprint for the eeprom used on Pi HAT cards --- packages/udfn8.5c | 78 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 packages/udfn8.5c diff --git a/packages/udfn8.5c b/packages/udfn8.5c new file mode 100644 index 0000000..52be72b --- /dev/null +++ b/packages/udfn8.5c @@ -0,0 +1,78 @@ +/* + * Copyright © 2021 Bdale Garbee + * GPL v3 + */ + +/* intended for use with the onsemi CAT24C32 eeprom and similar chips */ + +load "footprint.5c" +import Footprint; + +real pad_width = 0.68; +real pad_height = 0.30; +real pad_spacing = 0.50; /* center to center, along the pads */ +real pad_center = 3.40-pad_width; /* center to center, across the part */ + +real center_width = 1.45; +real center_height = 1.56; + +real package_width = 3; +real package_height = 2; + +real pad_x_off = pad_center / 2; + +real num_pad = 4; /* per side */ + +element_start("udfn8"); + +real pad_off(int n) { + return pad_spacing * (n - (num_pad - 1) / 2); +} + +real corner(int dx, int dy) { + real x = dx * package_width / 2; + real y = dy * package_height / 2; + real len = 0.4; + + line(x, y, x - dx * len, y); + line(x, y, x, y - dy * len); +} + +corner(-1, -1); +corner(1, -1); +corner(-1, 1); +corner(1, 1); + +real dot_off = -.3; + +line(-package_width/2 + dot_off, -package_height/2 + dot_off, + -package_width/2 + dot_off, -package_height/2 + dot_off); + +for (int pad = 0; pad < num_pad; pad++) { + /* left side (1-4) */ + + pad_mm(-pad_x_off, + pad_off(pad), + pad_width, + pad_height, + sprintf("%d", pad + 1), + sprintf("%d", pad + 1)); + + /* right side (5-8) */ + + pad_mm(pad_x_off, + -pad_off(pad), + pad_width, + pad_height, + sprintf("%d", pad + 5), + sprintf("%d", pad + 5)); + +} + +/* center pad */ +pad_mm(0, 0, + center_width, + center_height, + "9", "9"); + +element_end(); -- 2.47.2