]> git.gag.com Git - hw/altusmetrum/commitdiff
toggle switches chosen for QuantiMotor
authorBdale Garbee <bdale@gag.com>
Thu, 12 Jun 2025 19:05:40 +0000 (13:05 -0600)
committerBdale Garbee <bdale@gag.com>
Thu, 12 Jun 2025 19:05:40 +0000 (13:05 -0600)
datasheets/dailywell/Dailywell_10082019_1M_Series-1660460.pdf [new file with mode: 0644]
packages/switches/.gitignore
packages/switches/1MS1T1B4M7.py [new file with mode: 0755]
packages/switches/Makefile
preferred-parts.ods

diff --git a/datasheets/dailywell/Dailywell_10082019_1M_Series-1660460.pdf b/datasheets/dailywell/Dailywell_10082019_1M_Series-1660460.pdf
new file mode 100644 (file)
index 0000000..118043a
Binary files /dev/null and b/datasheets/dailywell/Dailywell_10082019_1M_Series-1660460.pdf differ
index 720d469b7454bc1fa05630edd05056558b3ee218..1c7c369a80fd4e5a2a2cdf2b8722df0aff418f02 100644 (file)
@@ -1,5 +1,7 @@
+.gitignore
 20571.fp
 cus-12.fp
 lph.fp
 PNswitchDPDT.fp
 SK12F17.fp
+1MS1T1B4M7.fp
diff --git a/packages/switches/1MS1T1B4M7.py b/packages/switches/1MS1T1B4M7.py
new file mode 100755 (executable)
index 0000000..9b9c105
--- /dev/null
@@ -0,0 +1,108 @@
+#!/usr/bin/python3
+# Copyright 2025 by Bdale Garbee <bdale@gag.com>.  GPLv3
+#
+# Program to emit PCB footprint for Dailywell SPDT right-angle vertical switch
+#
+
+# dimensions in mm from dailywell/Dailywell_10082019_1M_Series-1660460.pdf
+BodyX = 12.7
+BodyY = 6.86
+
+MntY = 5.08
+PinSpacing = 3.81
+
+Drill = 1.85           # diameter of drill hole
+Thickness = 2.85       # outer diameter of copper annulus
+Clearance = 1          # delta in diameter above Thickness for plane clearance
+Mask = 3.0             # mask opening diameter 
+
+SilkWidth = 10 # in units of 1/1000 inch 
+SilkNative = SilkWidth * 100 
+
+import sys
+
+# we're going to use the 1/100 of a mil fundamental unit form
+def mm2mils100( mm ):
+       return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
+
+print('# author: Bdale Garbee')
+print('# email: bdale@gag.com')
+print('# dist-license: GPL 3')
+print('# use-license: unlimited')
+
+print('Element[0x0 "1MS1T1B4M7" "" "" 0 0 0 0 0 100 0x0]')
+print("(")
+print('   Pin[',\
+       mm2mils100(BodyX+2*PinSpacing), \
+       0, \
+       mm2mils100(Thickness), \
+       mm2mils100(Clearance), \
+       mm2mils100(Mask), \
+       mm2mils100(Drill), \
+       '"pin1" "1" 0x0101]')
+
+print('   Pin[',\
+       mm2mils100(BodyX+PinSpacing), \
+       0, \
+       mm2mils100(Thickness), \
+       mm2mils100(Clearance), \
+       mm2mils100(Mask), \
+       mm2mils100(Drill), \
+       '"pin2" "2" 0x0001]')
+
+print('   Pin[',\
+       mm2mils100(BodyX), \
+       0, \
+       mm2mils100(Thickness), \
+       mm2mils100(Clearance), \
+       mm2mils100(Mask), \
+       mm2mils100(Drill), \
+       '"pin3" "3" 0x0001]')
+
+print('   Pin[',\
+       0, \
+       mm2mils100(MntY/2), \
+       mm2mils100(Thickness), \
+       mm2mils100(Clearance), \
+       mm2mils100(Mask), \
+       mm2mils100(Drill), \
+       '"GND" "4" 0x0001]')
+
+print('   Pin[',\
+       0, \
+       mm2mils100(-MntY/2), \
+       mm2mils100(Thickness), \
+       mm2mils100(Clearance), \
+       mm2mils100(Mask), \
+       mm2mils100(Drill), \
+       '"GND" "4" 0x0001]')
+
+print('   ElementLine[',\
+        0, \
+        mm2mils100(-BodyY/2), \
+        0, \
+        mm2mils100(BodyY/2), \
+        SilkNative, ']')
+
+print('   ElementLine[',\
+        0, \
+        mm2mils100(-BodyY/2), \
+        mm2mils100(BodyX), \
+        mm2mils100(-BodyY/2), \
+        SilkNative, ']')
+
+print('   ElementLine[',\
+        mm2mils100(BodyX), \
+        mm2mils100(-BodyY/2), \
+        mm2mils100(BodyX), \
+        mm2mils100(BodyY/2), \
+        SilkNative, ']')
+
+print('   ElementLine[',\
+        0, \
+        mm2mils100(BodyY/2), \
+        mm2mils100(BodyX), \
+        mm2mils100(BodyY/2), \
+        SilkNative, ']')
+
+print(")")
index 09a72b3a0b758bf1c0e904ff016b8d70c6de79ea..6c6c0fbe0176f54edaf4429ec21730c0b36ac216 100644 (file)
@@ -5,7 +5,8 @@ FOOTPRINTS = \
        cus-12.fp \
        lph.fp \
        PNswitchDPDT.fp \
-       SK12F17.fp 
+       SK12F17.fp \
+       1MS1T1B4M7.fp
 
 .5c.fp:
        nickle $*.5c -o $@
index 8fe20f3d60a7c364f1d2683e4749b0558d0ce979..cb1899a629ed0db00e43249bfdd08cf1c02856b0 100644 (file)
Binary files a/preferred-parts.ods and b/preferred-parts.ods differ