├── encoder_pcb ├── LICENSE ├── README.md ├── gerber_writer.py ├── gerber_writer_core.py ├── group.py ├── output │ ├── encoder.drl │ ├── encoder.gbl │ ├── encoder.gbs │ ├── encoder.gko │ ├── encoder.gtl │ └── encoder.gts ├── primitives.py └── symbols.py ├── mechanical ├── Part Studio 1 - Mount.stl ├── Part Studio 1 - Stator plate 1.dxf ├── Part Studio 1 - Stator plate 3.dxf ├── Part Studio 1 - Stator spacer.dxf └── readme.md ├── motor_pcb ├── linear actuator 2 │ ├── caps.sch │ ├── caps.sch-bak │ ├── encoder.sch │ ├── encoder.sch-bak │ ├── fp-info-cache │ ├── linear actuator-backups │ │ └── linear actuator-2022-08-08_215227.zip │ ├── linear actuator-cache.lib │ ├── linear actuator-job.gbrjob │ ├── linear actuator-top-pos.csv │ ├── linear actuator.csv │ ├── linear actuator.dcm │ ├── linear actuator.kicad_pcb │ ├── linear actuator.kicad_pcb-bak │ ├── linear actuator.kicad_prl │ ├── linear actuator.kicad_pro │ ├── linear actuator.lib │ ├── linear actuator.pretty │ │ ├── L_10.4x10.4_H4.8.kicad_mod │ │ ├── L_10x7_H10.kicad_mod │ │ ├── PQFN-31_5x5_Pitch0.5mm.kicad_mod │ │ ├── QFN-16_3x3_Pitch0.5mm.kicad_mod │ │ ├── QFN-40_5x6_Pitch0.45mm.kicad_mod │ │ └── landing_pad.kicad_mod │ ├── linear actuator.pro │ ├── linear actuator.sch │ ├── linear actuator.sch-bak │ ├── linear actuator_bk.kicad_pcb │ ├── magnetic.sch │ ├── magnetic.sch-bak │ ├── phase.sch │ ├── phase.sch-bak │ ├── power.sch │ ├── power.sch-bak │ └── sym-lib-table ├── linear actuator 3 │ ├── caps.kicad_sch │ ├── caps.sch │ ├── caps.sch-bak │ ├── encoder.kicad_sch │ ├── encoder.sch │ ├── encoder.sch-bak │ ├── fp-info-cache │ ├── linear actuator-backups │ │ ├── linear actuator-2022-08-08_215227.zip │ │ ├── linear actuator-2022-08-16_221548.zip │ │ ├── linear actuator-2022-08-16_222116.zip │ │ ├── linear actuator-2022-08-16_223101.zip │ │ ├── linear actuator-2022-08-16_224522.zip │ │ └── linear actuator-2022-08-16_225637.zip │ ├── linear actuator-cache.lib │ ├── linear actuator-job.gbrjob │ ├── linear actuator-top-pos.csv │ ├── linear actuator.csv │ ├── linear actuator.dcm │ ├── linear actuator.kicad_pcb │ ├── linear actuator.kicad_pcb-bak │ ├── linear actuator.kicad_prl │ ├── linear actuator.kicad_pro │ ├── linear actuator.kicad_sch │ ├── linear actuator.lib │ ├── linear actuator.pretty │ │ ├── L_10.4x10.4_H4.8.kicad_mod │ │ ├── L_10x7_H10.kicad_mod │ │ ├── PQFN-31_5x5_Pitch0.5mm.kicad_mod │ │ ├── QFN-16_3x3_Pitch0.5mm.kicad_mod │ │ ├── QFN-40_5x6_Pitch0.45mm.kicad_mod │ │ └── landing_pad.kicad_mod │ ├── linear actuator.pro │ ├── linear actuator.sch │ ├── linear actuator.sch-bak │ ├── linear actuator_bk.kicad_pcb │ ├── magnetic.kicad_sch │ ├── magnetic.sch │ ├── magnetic.sch-bak │ ├── phase.kicad_sch │ ├── phase.sch │ ├── phase.sch-bak │ ├── power.kicad_sch │ ├── power.sch │ ├── power.sch-bak │ └── sym-lib-table ├── linear actuator │ ├── caps.sch │ ├── caps.sch-bak │ ├── encoder.sch │ ├── encoder.sch-bak │ ├── fp-info-cache │ ├── linear actuator-cache.lib │ ├── linear actuator-job.gbrjob │ ├── linear actuator-top-pos.csv │ ├── linear actuator.dcm │ ├── linear actuator.kicad_pcb │ ├── linear actuator.kicad_pcb-bak │ ├── linear actuator.lib │ ├── linear actuator.pretty │ │ ├── PQFN-31_5x5_Pitch0.5mm.kicad_mod │ │ └── landing_pad.kicad_mod │ ├── linear actuator.pro │ ├── linear actuator.sch │ ├── linear actuator.sch-bak │ ├── linear actuator_bk.kicad_pcb │ ├── phase.sch │ ├── phase.sch-bak │ └── sym-lib-table ├── motor_pcb.py └── readme.md ├── readme.md └── simulator ├── Untitledtest.ans ├── Untitledtest.fem ├── femmoutfiletest ├── idtestn0.bmp ├── readme.md ├── simtest.lua └── simulator.py /encoder_pcb/README.md: -------------------------------------------------------------------------------- 1 | # Gerber generator for encoder PCB 2 | 3 | 4 | 5 | 6 | What is GLIF? 7 | ======================== 8 | GLIF is a Gerber writer written in python. It takes graphical primitives such as lines, arcs, circles, polygons, and ASCII text and writes out valid RS-274X "Gerber" files. These files are typically used to manufacture PCBs. 9 | -------------------------------------------------------------------------------- /encoder_pcb/gerber_writer.py: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------------------ 2 | # Gerber Writer - A Wrapper for Gerber Writer Core 3 | #------------------------------------------------------------------------------ 4 | # 5 | # Author: Jason White 6 | # Licence: GPLv2 7 | # 8 | # a high-ish level gerber RS274X writer 9 | # Takes in the 5 graphical primitives and 10 | # outputs a gerber file in MM mode 11 | # with positive polarity (do not feed 12 | # groups to the gerber writer please) 13 | # 14 | # Apertures are taken care of here. 15 | # 16 | # all coodinates expected to be integer and in micrometers (6 zeros, 1mm=1000000um) 17 | # but thickness and is expected in milimeters, floating point 18 | # 19 | # check out test_gerber_writer() for an example of how to make it work 20 | # 21 | 22 | from math import pi, radians, sin, cos 23 | 24 | from gerber_writer_core import * 25 | from primitives import * 26 | from symbols import * 27 | 28 | 29 | class gerber_writer: 30 | def __init__(self, filename, primitives=[]): 31 | self.filename = filename 32 | self.f = open(filename, "w") 33 | self.apertures = [] 34 | self.primitives = primitives 35 | 36 | def write(self): 37 | write_start(self.f) 38 | 39 | self.define_apertures() 40 | 41 | write_apertures(self.f, self.apertures) 42 | 43 | self.write_primitives() 44 | 45 | write_end(self.f) 46 | 47 | def write_primitives(self): 48 | for i, p in enumerate(self.primitives): 49 | self.write_primitive(i, p) 50 | 51 | def write_primitive(self, i, p): 52 | if isinstance(p, line): 53 | write_line(self.f, p.aperture, [p.start.x, p.start.y], [p.end.x, p.end.y]) 54 | elif isinstance(p, arc): 55 | self.write_arc(p) 56 | elif isinstance(p, circle): 57 | write_line(self.f, p.aperture, [p.location.x, p.location.y], [p.location.x, p.location.y]) 58 | elif isinstance(p, text): 59 | self.write_text(p) 60 | elif isinstance(p, polygon): 61 | write_polygon(self.f, p.location.x, p.location.y, p.points) 62 | else: 63 | print("Error unsupported primitive %s" % p) 64 | 65 | def rotate_point(self, point, angle, offset=(0.0, 0.0)): 66 | angle = radians(angle) 67 | 68 | delta_x = point[0] 69 | delta_y = point[1] 70 | 71 | x = offset[0] + (cos(angle) * delta_x) - (sin(angle) * delta_y) 72 | y = offset[1] + (sin(angle) * delta_x) + (cos(angle) * delta_y) 73 | return (x, y) 74 | 75 | def write_text(self, p): 76 | offset = 0 77 | center = (p.location.x, p.location.y) 78 | 79 | for char in p.text: 80 | 81 | for i in SYMBOLS[char].elements: 82 | start_point = (offset + i.x1 * p.height, i.y1 * p.height) 83 | end_point = (offset + i.x2 * p.height, i.y2 * p.height) 84 | 85 | start_location = self.rotate_point(start_point, p.angle, center) 86 | end_location = self.rotate_point(end_point, p.angle, center) 87 | 88 | write_line(self.f, p.aperture, start_location, end_location) 89 | 90 | offset += SYMBOLS[char].size * p.height 91 | 92 | def limit_range(self, value, minimum, maximum): 93 | if value < minimum: 94 | return minimum 95 | if value > maximum: 96 | return maximum 97 | 98 | return value 99 | 100 | def write_arc(self, p): 101 | x = p.location.x 102 | y = p.location.y 103 | x_scale = abs(p.x_scale) # self.limit_range(p.x_scale, 0, 1) 104 | y_scale = abs(p.y_scale) # self.limit_range(p.y_scale, 0, 1) 105 | 106 | start_angle = p.angular_dimesions.x # self.limit_range(p.angular_dimesions.x, 0 ,360) 107 | end_angle = p.angular_dimesions.y # self.limit_range(p.angular_dimesions.y, 0, 360) 108 | 109 | if start_angle > end_angle: 110 | temp = start_angle 111 | start_angle = end_angle 112 | end_angle = start_angle 113 | 114 | delta = end_angle - start_angle 115 | radius = p.radius 116 | 117 | # radius is in micrometers 118 | length = (delta / 360.0) * (2 * pi * radius * 0.000001) 119 | 120 | # One segment for every 0.1mm 121 | segments = int(round(length * 10) + 1) 122 | 123 | # compute delta per segment 124 | delta /= float(segments) 125 | 126 | current_angle = float(start_angle) 127 | for i in range(segments): 128 | x1 = x + round(x_scale * cos(radians(current_angle)) * radius) 129 | y1 = y + round(y_scale * sin(radians(current_angle)) * radius) 130 | 131 | current_angle += delta 132 | 133 | x2 = x + round(x_scale * cos(radians(current_angle)) * radius) 134 | y2 = y + round(y_scale * sin(radians(current_angle)) * radius) 135 | 136 | write_line(self.f, p.aperture, (x1, y1), (x2, y2)) 137 | 138 | def define_apertures(self): 139 | for i, p in enumerate(self.primitives): 140 | self.define_aperture(i, p) 141 | 142 | def define_aperture(self, i, p): 143 | # All other types (line, arc, circle, text) use custom width apertures 144 | if isinstance(p, polygon): 145 | return 146 | 147 | a = aperture("C", p.design_rules.thickness) 148 | if isinstance(p, line): 149 | a.type = p.shape 150 | 151 | p.aperture = self.check_duplicate(a) 152 | 153 | if type(p.aperture) != int: 154 | p.aperture = len(self.apertures) 155 | self.apertures.append(a) 156 | 157 | def check_duplicate(self, aperture): 158 | for i, a in enumerate(self.apertures): 159 | 160 | if a.type == aperture.type and a.size == aperture.size: 161 | return i 162 | return False 163 | 164 | 165 | def rect_outline(x1, y1, x2, y2): 166 | return [line(x1 * 1e6, y1 * 1e6, x1 * 1e6, y2 * 1e6, "C", 0, "copper", thickness=0.1, clearance=None), 167 | line(x1 * 1e6, y2 * 1e6, x2 * 1e6, y2 * 1e6, "C", 0, "copper", thickness=0.1, clearance=None), 168 | line(x2 * 1e6, y2 * 1e6, x2 * 1e6, y1 * 1e6, "C", 0, "copper", thickness=0.1, clearance=None), 169 | line(x2 * 1e6, y1 * 1e6, x1 * 1e6, y1 * 1e6, "C", 0, "copper", thickness=0.1, clearance=None)] 170 | 171 | 172 | def rect(x1, y1, x2, y2): 173 | return polygon(0, 0, 1, [(x1 * 1e6, y1 * 1e6), (x1 * 1e6, y2 * 1e6), (x2 * 1e6, y2 * 1e6), (x2 * 1e6, y1 * 1e6)], 0, 174 | "copper", thickness=0.0, clearance=None) 175 | 176 | 177 | def rect_center(x, y, w, h): 178 | return rect(x - w / 2, y - h / 2, x + w / 2, y + h / 2) 179 | 180 | 181 | def strip(x1, x2, y_center, h, n, offset=0): 182 | out = [] 183 | w = abs(x1 - x2) / n / 2 184 | for i in range(n): 185 | out.append(rect_center(w * (i * 2 + 0.5 + (offset * 2)), y_center, w, h)) 186 | 187 | return out 188 | 189 | 190 | def out_of_phase_strip(x1, x2, y_center, h, n, phase_offset=(0, 0.5)): 191 | y_offset = 0.1 192 | return [ 193 | *strip(x1, x2, y_center + h / 4 + y_offset, h / 2, n, offset=phase_offset[0]), 194 | *strip(x1, x2, y_center - h / 4 - y_offset, h / 2, n, offset=phase_offset[1]), 195 | ] 196 | 197 | 198 | def writer_encoder(): 199 | writer = gerber_writer("output/encoder.gko") 200 | 201 | writer.primitives = [ 202 | *rect_outline(-5, -18, 205, 18) 203 | ] 204 | 205 | writer.write() 206 | 207 | writer = gerber_writer("output/encoder.gbl") 208 | 209 | writer.primitives = [ 210 | rect(-5, -18, 205, 18) 211 | ] 212 | 213 | writer.write() 214 | 215 | alignment = 18 - 12.375 216 | 217 | writer = gerber_writer("output/encoder.gts") 218 | 219 | writer.primitives = [ 220 | rect(-5, alignment + 3.5 * 0 + 1.15, 205, alignment + 3.5 * 0 - 1.15), 221 | rect(-5, alignment + 3.5 * 1 + 1.15, 205, alignment + 3.5 * 1 - 1.15), 222 | rect(-5, alignment + 3.5 * 2 + 1.15, 205, alignment + 3.5 * 2 - 1.15), 223 | rect(-5, alignment + 3.5 * 3 + 1.15, 205, alignment + 3.5 * 3 - 1.15), 224 | 225 | rect(-5, -alignment - 3.5 * 0 + 1.15, 205, -alignment - 3.5 * 0 - 1.15), 226 | rect(-5, -alignment - 3.5 * 1 + 1.15, 205, -alignment - 3.5 * 1 - 1.15), 227 | rect(-5, -alignment - 3.5 * 2 + 1.15, 205, -alignment - 3.5 * 2 - 1.15), 228 | rect(-5, -alignment - 3.5 * 3 + 1.15, 205, -alignment - 3.5 * 3 - 1.15), 229 | ] 230 | 231 | writer.write() 232 | 233 | writer = gerber_writer("output/encoder.gbs") 234 | 235 | writer.primitives = [ 236 | rect(-5, alignment + 3.5 * 0 + 1.6, 205, alignment + 3.5 * 0 - 1.6), 237 | rect(-5, alignment + 3.5 * 1 + 1.6, 205, alignment + 3.5 * 1 - 1.6), 238 | rect(-5, alignment + 3.5 * 2 + 1.6, 205, alignment + 3.5 * 2 - 1.6), 239 | rect(-5, alignment + 3.5 * 3 + 1.6, 205, alignment + 3.5 * 3 - 1.6), 240 | 241 | rect(-5, -alignment - 3.5 * 0 + 1.6, 205, -alignment - 3.5 * 0 - 1.6), 242 | rect(-5, -alignment - 3.5 * 1 + 1.6, 205, -alignment - 3.5 * 1 - 1.6), 243 | rect(-5, -alignment - 3.5 * 2 + 1.6, 205, -alignment - 3.5 * 2 - 1.6), 244 | rect(-5, -alignment - 3.5 * 3 + 1.6, 205, -alignment - 3.5 * 3 - 1.6), 245 | ] 246 | 247 | writer.write() 248 | 249 | writer = gerber_writer("output/encoder.gtl") 250 | 251 | out_of_phase_strip(0, 200, - alignment - 3.5 * 0, 3, 128, phase_offset=(0, 0.5)) 252 | 253 | writer.primitives = [ 254 | *out_of_phase_strip(0, 200, alignment + 3.5 * 0, 2, 256, phase_offset=(0, 0.5)), 255 | *out_of_phase_strip(0, 200, alignment + 3.5 * 1, 2, 256, phase_offset=(0.25, 0.75)), 256 | *out_of_phase_strip(0, 200, alignment + 3.5 * 2, 2, 240, phase_offset=(0, 0.25)), 257 | *out_of_phase_strip(0, 200, alignment + 3.5 * 3, 2, 255, phase_offset=(0, 0.25)), 258 | 259 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 0, 2, 128, phase_offset=(0, 0.5)), 260 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 1, 2, 128, phase_offset=(0.25, 0.75)), 261 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 2, 2, 112, phase_offset=(0, 0.25)), 262 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 3, 2, 129, phase_offset=(0, 0.25)), 263 | ] 264 | 265 | writer.write() 266 | 267 | writer = gerber_writer("output/encoder.gbl") 268 | 269 | writer.primitives = [ 270 | *out_of_phase_strip(0, 200, alignment + 3.5 * 0, 3, 256, phase_offset=(0, 0.5)), 271 | *out_of_phase_strip(0, 200, alignment + 3.5 * 1, 3, 256, phase_offset=(0.25, 0.75)), 272 | *out_of_phase_strip(0, 200, alignment + 3.5 * 2, 3, 240, phase_offset=(0, 0.25)), 273 | *out_of_phase_strip(0, 200, alignment + 3.5 * 3, 3, 255, phase_offset=(0, 0.25)), 274 | 275 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 0, 3, 128, phase_offset=(0, 0.5)), 276 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 1, 3, 128, phase_offset=(0.25, 0.75)), 277 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 2, 3, 112, phase_offset=(0, 0.25)), 278 | *out_of_phase_strip(0, 200, - alignment - 3.5 * 3, 3, 129, phase_offset=(0, 0.25)), 279 | ] 280 | 281 | writer.write() 282 | 283 | 284 | if __name__ == "__main__": 285 | writer_encoder() 286 | -------------------------------------------------------------------------------- /encoder_pcb/gerber_writer_core.py: -------------------------------------------------------------------------------- 1 | #------------------------------------------------------------------------------ 2 | # Gerber Writer Core 3 | #------------------------------------------------------------------------------ 4 | # 5 | # Author: Jason White 6 | # Licence: GPLv2 7 | # 8 | # a low level gerber RS274X writer 9 | # outputs a gerber file in MM mode 10 | # with positive polarity 11 | # 12 | # Supports user creation of: 13 | # * Polygons (Suitable for most abriatary shapes) 14 | # * Lines (Suitable for lines, circles, and arcs, must supply correct aperture number) 15 | # 16 | # These two features are enough to define the all of layers of nearly any PCB board 17 | # 18 | # all coodinates expected to be in micrometers (6 zeros, 1mm=1000000um) 19 | # see function test_gerber_writer_core() for an example of how to use 20 | # 21 | 22 | class aperture: 23 | def __init__(self, type, size): 24 | self.type=type #ie "C" is a circle, "R" is a square 25 | self.size=size 26 | 27 | #------------------------------------------------------------------------------ 28 | # Example Usage 29 | #------------------------------------------------------------------------------ 30 | #This produces a gerber with a 0.5mm track in a check mark shape 31 | #and a triangular polygon 32 | # 33 | def test_gerber_writer_core(): 34 | apertures=[aperture("C", 0.5), aperture("R", 0.25)] 35 | 36 | f=open("export.gbr", "w") 37 | 38 | write_start(f) 39 | write_apertures(f, apertures) 40 | 41 | write_polyline(f, 0, [ 42 | [1000000,2000000], 43 | [2000000,1000000], 44 | [4000000,3000000]]) 45 | 46 | write_polygon(f, 0, 0, [ 47 | [1000000,4000000], 48 | [2000000,3000000], 49 | [4000000,5000000]]) 50 | 51 | write_polyline(f, 1, [ 52 | [500000,6000000], 53 | [1000000,6000000], 54 | [2000000,8000000], 55 | [1500000,9000000], 56 | [1000000,8000000], 57 | [2000000,6000000], 58 | [2500000,6000000]]) 59 | 60 | write_end(f) 61 | 62 | #------------------------------------------------------------------------------ 63 | # Writer definition 64 | #------------------------------------------------------------------------------ 65 | def write_start(f): 66 | """ Coordinate format specification: 67 | Leading 68 | zero's 69 | omitted 70 | Absolute coordinates 71 | 3 digits in the integer part 72 | 6 digits in the fractional part 73 | """ 74 | f.write("%FSLAX36Y36*%\n") 75 | 76 | # Unit set to mm 77 | f.write("%MOMM*%\n") 78 | 79 | """ 80 | Start a new level with dark polarity. This command 81 | confirms the default and makes the intention 82 | unequivocal. 83 | """ 84 | f.write("%LPD*%\n") 85 | 86 | def write_apertures(f, apertures): 87 | #define a default 0.001mm aperture at D11 88 | #D11 is used for polygons 89 | f.write("%ADD11C,0.00100*%\n") 90 | 91 | #define all user defined apertures from D12 and up 92 | for i, a in enumerate(apertures): 93 | if a.type!="C": 94 | #Assume square if the aperture is not a circle, it is square 95 | f.write("%%ADD%d%s,%0.5fX%0.5f*%%\n" % (12+i, a.type, a.size, a.size)) 96 | else: 97 | f.write("%%ADD%d%s,%0.5f*%%\n" % (12+i, a.type, a.size)) 98 | 99 | #A minimum of two points must be supplied 100 | # 101 | #The reason polyline breaks the line into segments is that 102 | #Section 4.5.1 of the Ucamco Gerber Specification states: 103 | # 104 | # "Self-intersecting contours are not allowed. 105 | # Segments can not cross, overlap or touch" 106 | # 107 | #By using seperate contours (line segments), this rule can not be violated 108 | #so it wont be an issue when it is read in another program 109 | 110 | def write_polyline(f, aperture_number, point_list): 111 | #Select aperture specifed 112 | f.write("G54D%d*\n" % (aperture_number+12) ) 113 | 114 | for i in range(len(point_list)-1): 115 | write_line(f, aperture_number, point_list[i], point_list[i+1]) 116 | 117 | def write_line(f, aperture_number, start_point, end_point): 118 | #Select aperture specifed 119 | f.write("G54D%d*\n" % (aperture_number+12)) 120 | 121 | #write the line segment 122 | f.write("X%06dY%06dD02*\n" % (start_point[0], start_point[1])) 123 | f.write("X%06dY%06dD01*\n" % (end_point[0], end_point[1])) 124 | 125 | 126 | def write_polygon(f, x, y, point_list): 127 | #Select aperture, D11, the default used for polygons 128 | f.write("G54D11*\n") 129 | 130 | #enter region (fill mode) 131 | f.write("G36*\n") 132 | 133 | #for each point in the list, write the X Y coordinates expected 134 | #First point gets D02 (end/new line) 135 | #every other point gets a D01 (continue line) 136 | for index, point in enumerate(point_list): 137 | if index==0: 138 | f.write("X%06dY%06dD02*\n" % (point[0]+x, point[1]+y)) 139 | continue 140 | f.write("X%06dY%06dD01*\n" % (point[0]+x, point[1]+y)) 141 | 142 | #insert last point 143 | #rejoin to first supplied point 144 | #gets a D02 (end line) 145 | f.write("X%06dY%06dD02*\n" % (point_list[0][0]+x, point_list[0][1]+y)) 146 | 147 | #exit region (fill) mode 148 | f.write("G37*\n"); 149 | 150 | def write_end(f): 151 | # end of file 152 | f.write("M02*\n") 153 | -------------------------------------------------------------------------------- /encoder_pcb/group.py: -------------------------------------------------------------------------------- 1 | """ 2 | Licence: GPLv2 3 | Author: Jason White 4 | 5 | Definition of Group and Coordiate classes 6 | """ 7 | import copy 8 | 9 | #Note that all coordinates are to be stored in nanometers 10 | class vector: 11 | def __init__(self, x, y): 12 | self.x=x 13 | self.y=y 14 | 15 | def __str__(self): 16 | return self.__repr__() 17 | 18 | def __repr__(self): 19 | #print the name of the class and the X/Y coordinates 20 | #__class__._name__ is used to suppport inheritance 21 | return """<%s, x=%d y=%d>""" % (self.__class__._name__ ,self.x, self.y) 22 | 23 | def __add__(self, b): 24 | return vector(self.x+b.x, self.y+b.y) 25 | 26 | def __sub__(self, b): 27 | return vector(self.x-b.x, self.y-b.y) 28 | 29 | #coordinate inherits from vector 30 | class coordinate(vector): 31 | def __init__(self, x, y): 32 | self.x=x 33 | self.y=y 34 | 35 | def __repr__(self): 36 | return """""" % (self.x, self.y) 37 | 38 | #angle_pair inherits from vector 39 | class angle_pair(vector): 40 | def __repr__(self): 41 | return """""" % (self.x, self.y) 42 | 43 | #design rules common to all primitives 44 | class design_rule: 45 | def __init__(self, thickness, clearance): 46 | self.thickness=thickness 47 | self.clearance=clearance 48 | 49 | class group: 50 | def __init__(self, x, y, layer, members, angle=0, attributes={}): 51 | #patch to fix multiple references to same object 52 | self.members=copy.deepcopy(members) 53 | self.location=coordinate(x, y) 54 | self.layer=layer 55 | self.angle=angle 56 | self.attributes=attributes 57 | 58 | """ 59 | Normal member functions 60 | """ 61 | 62 | def move(self, x, y): 63 | self.location.x=x 64 | self.location.y=y 65 | 66 | def change_layer(self, layer): 67 | self.location.layer=layer 68 | 69 | """ 70 | Default functions which make this class behave like a list 71 | """ 72 | 73 | def __iter__(self): 74 | for member in self.members: 75 | yield member 76 | 77 | def __len__(self): 78 | return len(self.members) 79 | 80 | def __getitem__(self, i): 81 | return self.members[i] 82 | 83 | def __delitem__(self, i): 84 | del self.members[i] 85 | 86 | def __setitem__(self, i, value): 87 | self.members[i] = value 88 | return self.members[i] 89 | 90 | def __str__(self): 91 | return self.__repr__() 92 | 93 | def __repr__(self): 94 | return """""" % (id(self),self.location.x, self.location.y, str(self.layer), self.members) 95 | 96 | def insert(self, i, value): 97 | self.members.insert(i, value) 98 | 99 | def append(self, value): 100 | list_index = len(self.members) 101 | self.insert(list_index, value) 102 | 103 | -------------------------------------------------------------------------------- /encoder_pcb/output/encoder.drl: -------------------------------------------------------------------------------- 1 | M48 2 | ; DRILL file {KiCad 5.1.10} date Wed Jan 19 23:00:03 2022 3 | ; FORMAT={-:-/ absolute / metric / decimal} 4 | ; #@! TF.CreationDate,2022-01-19T23:00:03-08:00 5 | ; #@! TF.GenerationSoftware,Kicad,Pcbnew,5.1.10 6 | FMAT,2 7 | METRIC 8 | T1C0.500 9 | % 10 | G90 11 | G05 12 | T1 13 | X-1.0Y0.0 14 | X-2.0Y0.0 15 | X-3.0Y0.0 16 | X-4.0Y0.0 17 | X-5.0Y0.0 18 | X0.0Y0.0 19 | X1.0Y0.0 20 | X2.0Y0.0 21 | X3.0Y0.0 22 | X4.0Y0.0 23 | X5.0Y0.0 24 | X6.0Y0.0 25 | X7.0Y0.0 26 | X8.0Y0.0 27 | X9.0Y0.0 28 | X10.0Y0.0 29 | X11.0Y0.0 30 | X12.0Y0.0 31 | X13.0Y0.0 32 | X14.0Y0.0 33 | X15.0Y0.0 34 | X16.0Y0.0 35 | X17.0Y0.0 36 | X18.0Y0.0 37 | X19.0Y0.0 38 | X20.0Y0.0 39 | X21.0Y0.0 40 | X22.0Y0.0 41 | X23.0Y0.0 42 | X24.0Y0.0 43 | X25.0Y0.0 44 | X26.0Y0.0 45 | X27.0Y0.0 46 | X28.0Y0.0 47 | X29.0Y0.0 48 | X30.0Y0.0 49 | X31.0Y0.0 50 | X32.0Y0.0 51 | X33.0Y0.0 52 | X34.0Y0.0 53 | X35.0Y0.0 54 | X36.0Y0.0 55 | X37.0Y0.0 56 | X38.0Y0.0 57 | X39.0Y0.0 58 | X40.0Y0.0 59 | X41.0Y0.0 60 | X42.0Y0.0 61 | X43.0Y0.0 62 | X44.0Y0.0 63 | X45.0Y0.0 64 | X46.0Y0.0 65 | X47.0Y0.0 66 | X48.0Y0.0 67 | X49.0Y0.0 68 | X50.0Y0.0 69 | X51.0Y0.0 70 | X52.0Y0.0 71 | X53.0Y0.0 72 | X54.0Y0.0 73 | X55.0Y0.0 74 | X56.0Y0.0 75 | X57.0Y0.0 76 | X58.0Y0.0 77 | X59.0Y0.0 78 | X60.0Y0.0 79 | X61.0Y0.0 80 | X62.0Y0.0 81 | X63.0Y0.0 82 | X64.0Y0.0 83 | X65.0Y0.0 84 | X66.0Y0.0 85 | X67.0Y0.0 86 | X68.0Y0.0 87 | X69.0Y0.0 88 | X70.0Y0.0 89 | X71.0Y0.0 90 | X72.0Y0.0 91 | X73.0Y0.0 92 | X74.0Y0.0 93 | X75.0Y0.0 94 | X76.0Y0.0 95 | X77.0Y0.0 96 | X78.0Y0.0 97 | X79.0Y0.0 98 | X80.0Y0.0 99 | X81.0Y0.0 100 | X82.0Y0.0 101 | X83.0Y0.0 102 | X84.0Y0.0 103 | X85.0Y0.0 104 | X86.0Y0.0 105 | X87.0Y0.0 106 | X88.0Y0.0 107 | X89.0Y0.0 108 | X90.0Y0.0 109 | X91.0Y0.0 110 | X92.0Y0.0 111 | X93.0Y0.0 112 | X94.0Y0.0 113 | X95.0Y0.0 114 | X96.0Y0.0 115 | X97.0Y0.0 116 | X98.0Y0.0 117 | X99.0Y0.0 118 | X100.0Y0.0 119 | X101.0Y0.0 120 | X102.0Y0.0 121 | X103.0Y0.0 122 | X104.0Y0.0 123 | X105.0Y0.0 124 | X106.0Y0.0 125 | X107.0Y0.0 126 | X108.0Y0.0 127 | X109.0Y0.0 128 | X110.0Y0.0 129 | X111.0Y0.0 130 | X112.0Y0.0 131 | X113.0Y0.0 132 | X114.0Y0.0 133 | X115.0Y0.0 134 | X116.0Y0.0 135 | X117.0Y0.0 136 | X118.0Y0.0 137 | X119.0Y0.0 138 | X120.0Y0.0 139 | X121.0Y0.0 140 | X122.0Y0.0 141 | X123.0Y0.0 142 | X124.0Y0.0 143 | X125.0Y0.0 144 | X126.0Y0.0 145 | X127.0Y0.0 146 | X128.0Y0.0 147 | X129.0Y0.0 148 | X130.0Y0.0 149 | X131.0Y0.0 150 | X132.0Y0.0 151 | X133.0Y0.0 152 | X134.0Y0.0 153 | X135.0Y0.0 154 | X136.0Y0.0 155 | X137.0Y0.0 156 | X138.0Y0.0 157 | X139.0Y0.0 158 | X140.0Y0.0 159 | X141.0Y0.0 160 | X142.0Y0.0 161 | X143.0Y0.0 162 | X144.0Y0.0 163 | X145.0Y0.0 164 | X146.0Y0.0 165 | X147.0Y0.0 166 | X148.0Y0.0 167 | X149.0Y0.0 168 | X150.0Y0.0 169 | X151.0Y0.0 170 | X152.0Y0.0 171 | X153.0Y0.0 172 | X154.0Y0.0 173 | X155.0Y0.0 174 | X156.0Y0.0 175 | X157.0Y0.0 176 | X158.0Y0.0 177 | X159.0Y0.0 178 | X160.0Y0.0 179 | X161.0Y0.0 180 | X162.0Y0.0 181 | X163.0Y0.0 182 | X164.0Y0.0 183 | X165.0Y0.0 184 | X166.0Y0.0 185 | X167.0Y0.0 186 | X168.0Y0.0 187 | X169.0Y0.0 188 | X170.0Y0.0 189 | X171.0Y0.0 190 | X172.0Y0.0 191 | X173.0Y0.0 192 | X174.0Y0.0 193 | X175.0Y0.0 194 | X176.0Y0.0 195 | X177.0Y0.0 196 | X178.0Y0.0 197 | X179.0Y0.0 198 | X180.0Y0.0 199 | X181.0Y0.0 200 | X182.0Y0.0 201 | X183.0Y0.0 202 | X184.0Y0.0 203 | X185.0Y0.0 204 | X186.0Y0.0 205 | X187.0Y0.0 206 | X188.0Y0.0 207 | X189.0Y0.0 208 | X190.0Y0.0 209 | X191.0Y0.0 210 | X192.0Y0.0 211 | X193.0Y0.0 212 | X194.0Y0.0 213 | X195.0Y0.0 214 | X196.0Y0.0 215 | X197.0Y0.0 216 | X198.0Y0.0 217 | X199.0Y0.0 218 | X200.0Y0.0 219 | X201.0Y0.0 220 | X202.0Y0.0 221 | X203.0Y0.0 222 | X204.0Y0.0 223 | T0 224 | M30 225 | -------------------------------------------------------------------------------- /encoder_pcb/output/encoder.gbs: -------------------------------------------------------------------------------- 1 | %FSLAX36Y36*% 2 | %MOMM*% 3 | %LPD*% 4 | %ADD11C,0.00100*% 5 | G54D11* 6 | G36* 7 | X-5000000Y7225000D02* 8 | X-5000000Y4025000D01* 9 | X205000000Y4025000D01* 10 | X205000000Y7225000D01* 11 | X-5000000Y7225000D02* 12 | G37* 13 | G54D11* 14 | G36* 15 | X-5000000Y10725000D02* 16 | X-5000000Y7525000D01* 17 | X205000000Y7525000D01* 18 | X205000000Y10725000D01* 19 | X-5000000Y10725000D02* 20 | G37* 21 | G54D11* 22 | G36* 23 | X-5000000Y14225000D02* 24 | X-5000000Y11025000D01* 25 | X205000000Y11025000D01* 26 | X205000000Y14225000D01* 27 | X-5000000Y14225000D02* 28 | G37* 29 | G54D11* 30 | G36* 31 | X-5000000Y17725000D02* 32 | X-5000000Y14525000D01* 33 | X205000000Y14525000D01* 34 | X205000000Y17725000D01* 35 | X-5000000Y17725000D02* 36 | G37* 37 | G54D11* 38 | G36* 39 | X-5000000Y-4025000D02* 40 | X-5000000Y-7225000D01* 41 | X205000000Y-7225000D01* 42 | X205000000Y-4025000D01* 43 | X-5000000Y-4025000D02* 44 | G37* 45 | G54D11* 46 | G36* 47 | X-5000000Y-7525000D02* 48 | X-5000000Y-10725000D01* 49 | X205000000Y-10725000D01* 50 | X205000000Y-7525000D01* 51 | X-5000000Y-7525000D02* 52 | G37* 53 | G54D11* 54 | G36* 55 | X-5000000Y-11025000D02* 56 | X-5000000Y-14225000D01* 57 | X205000000Y-14225000D01* 58 | X205000000Y-11025000D01* 59 | X-5000000Y-11025000D02* 60 | G37* 61 | G54D11* 62 | G36* 63 | X-5000000Y-14525000D02* 64 | X-5000000Y-17725000D01* 65 | X205000000Y-17725000D01* 66 | X205000000Y-14525000D01* 67 | X-5000000Y-14525000D02* 68 | G37* 69 | M02* 70 | -------------------------------------------------------------------------------- /encoder_pcb/output/encoder.gko: -------------------------------------------------------------------------------- 1 | %FSLAX36Y36*% 2 | %MOMM*% 3 | %LPD*% 4 | %ADD11C,0.00100*% 5 | %ADD12C,0.10000*% 6 | G54D12* 7 | X-5000000Y-18000000D02* 8 | X-5000000Y18000000D01* 9 | G54D12* 10 | X-5000000Y18000000D02* 11 | X205000000Y18000000D01* 12 | G54D12* 13 | X205000000Y18000000D02* 14 | X205000000Y-18000000D01* 15 | G54D12* 16 | X205000000Y-18000000D02* 17 | X-5000000Y-18000000D01* 18 | M02* 19 | -------------------------------------------------------------------------------- /encoder_pcb/output/encoder.gts: -------------------------------------------------------------------------------- 1 | %FSLAX36Y36*% 2 | %MOMM*% 3 | %LPD*% 4 | %ADD11C,0.00100*% 5 | G54D11* 6 | G36* 7 | X-5000000Y6775000D02* 8 | X-5000000Y4475000D01* 9 | X205000000Y4475000D01* 10 | X205000000Y6775000D01* 11 | X-5000000Y6775000D02* 12 | G37* 13 | G54D11* 14 | G36* 15 | X-5000000Y10275000D02* 16 | X-5000000Y7975000D01* 17 | X205000000Y7975000D01* 18 | X205000000Y10275000D01* 19 | X-5000000Y10275000D02* 20 | G37* 21 | G54D11* 22 | G36* 23 | X-5000000Y13775000D02* 24 | X-5000000Y11475000D01* 25 | X205000000Y11475000D01* 26 | X205000000Y13775000D01* 27 | X-5000000Y13775000D02* 28 | G37* 29 | G54D11* 30 | G36* 31 | X-5000000Y17275000D02* 32 | X-5000000Y14975000D01* 33 | X205000000Y14975000D01* 34 | X205000000Y17275000D01* 35 | X-5000000Y17275000D02* 36 | G37* 37 | G54D11* 38 | G36* 39 | X-5000000Y-4475000D02* 40 | X-5000000Y-6775000D01* 41 | X205000000Y-6775000D01* 42 | X205000000Y-4475000D01* 43 | X-5000000Y-4475000D02* 44 | G37* 45 | G54D11* 46 | G36* 47 | X-5000000Y-7975000D02* 48 | X-5000000Y-10275000D01* 49 | X205000000Y-10275000D01* 50 | X205000000Y-7975000D01* 51 | X-5000000Y-7975000D02* 52 | G37* 53 | G54D11* 54 | G36* 55 | X-5000000Y-11475000D02* 56 | X-5000000Y-13775000D01* 57 | X205000000Y-13775000D01* 58 | X205000000Y-11475000D01* 59 | X-5000000Y-11475000D02* 60 | G37* 61 | G54D11* 62 | G36* 63 | X-5000000Y-14975000D02* 64 | X-5000000Y-17275000D01* 65 | X205000000Y-17275000D01* 66 | X205000000Y-14975000D01* 67 | X-5000000Y-14975000D02* 68 | G37* 69 | M02* 70 | -------------------------------------------------------------------------------- /encoder_pcb/primitives.py: -------------------------------------------------------------------------------- 1 | """ 2 | Licence: GPLv2 3 | Author: Jason White 4 | 5 | Definition of the five graphical primtives 6 | * Line 7 | * Arc 8 | * Polygon 9 | * Circle 10 | * Text 11 | 12 | Unless a need is found - 13 | Graphical primtives should not have user defined attributes. 14 | 15 | Those attributes should be delagated to groups in order to 16 | promote support for amking behaviors apply to any custom shape 17 | as opposed limiting it to a single primitve. 18 | """ 19 | 20 | from group import * 21 | 22 | """ 23 | Line 24 | """ 25 | class line(): 26 | def __init__(self, x1, y1, x2, y2, shape, layer, component, thickness=None, clearance=None): 27 | self.start=coordinate(x1, y1) 28 | self.end=coordinate(x2, y2) 29 | self.shape=shape 30 | 31 | self.layer=layer 32 | self.component=component 33 | self.design_rules=design_rule(thickness, clearance) 34 | 35 | def __repr__(self): 36 | return self.__str__() 37 | 38 | def __str__(self): 39 | return "" % (self.start.x, self.start.y, self.end.x, self.end.y) 40 | 41 | """ 42 | Arc 43 | """ 44 | class arc(): 45 | def __init__(self, x, y, radius, shape, x_scale, y_scale, start_angle, end_angle, layer, component, thickness=None, clearance=None): 46 | self.location=coordinate(x, y) 47 | self.shape=shape 48 | self.angular_dimesions=angle_pair(start_angle, end_angle) 49 | self.radius=radius 50 | self.x_scale=x_scale 51 | self.y_scale=y_scale 52 | 53 | self.layer=layer 54 | self.component=component 55 | self.design_rules=design_rule(thickness, clearance) 56 | 57 | """ 58 | Polygons must have at least 3 points 59 | """ 60 | class polygon(): 61 | def __init__(self, x, y, filled, coordinate_list, layer, component, thickness=None, clearance=None): 62 | self.location=coordinate(x, y) 63 | self.filled=filled 64 | 65 | #expecting [coordinate(x, y), coordinate(x, y), coordinate(x, y)] 66 | self.points=coordinate_list 67 | 68 | self.layer=layer 69 | self.component=component 70 | self.design_rules=design_rule(thickness, clearance) 71 | 72 | """ 73 | Circle 74 | """ 75 | class circle(): 76 | def __init__(self, x, y, layer, component, thickness=None, clearance=None): 77 | self.location=coordinate(x, y) 78 | 79 | self.layer=layer 80 | self.component=component 81 | self.design_rules=design_rule(thickness, clearance) 82 | 83 | def __repr__(self): 84 | return self.__str__() 85 | 86 | def __str__(self): 87 | return "" % (id(self), self.location.x, self.location.y) 88 | """ 89 | Text 90 | """ 91 | class text(): 92 | def __init__(self, x, y, text, height, angle, layer, component, thickness=None, clearance=None): 93 | self.location=coordinate(x, y) 94 | self.height=height 95 | self.angle=angle 96 | self.text=text 97 | 98 | self.layer=layer 99 | self.component=component 100 | self.design_rules=design_rule(thickness, clearance) 101 | -------------------------------------------------------------------------------- /mechanical/Part Studio 1 - Mount.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/mechanical/Part Studio 1 - Mount.stl -------------------------------------------------------------------------------- /mechanical/readme.md: -------------------------------------------------------------------------------- 1 | # Mechanical components 2 | 3 | | File | Material | Thickness | 4 | |--------------------|------------|------------| 5 | | Mount.stl | PLA | N/A | 6 | | Stator plate 1.dxf | Mild steel | 3mm/0.119" | 7 | | Stator plate 3.dxf | Mild steel | 3mm/0.119" | 8 | | Stator spacer.dxf | 5052 | 6.4mm/.25" | 9 | 10 | The metal plates can be ordered at SendCutSend [here](https://cart.sendcutsend.com/1mcvzdwj3xs7) 11 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator-backups/linear actuator-2022-08-08_215227.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 2/linear actuator-backups/linear actuator-2022-08-08_215227.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator-job.gbrjob: -------------------------------------------------------------------------------- 1 | { 2 | "Header": 3 | { 4 | "GenerationSoftware": 5 | { 6 | "Vendor": "KiCad", 7 | "Application": "Pcbnew", 8 | "Version": "5.1.10" 9 | }, 10 | "CreationDate": "2022-03-14T20:48:02-07:00" 11 | }, 12 | "GeneralSpecs": 13 | { 14 | "ProjectId": 15 | { 16 | "Name": "linear actuator", 17 | "GUID": "6c696e65-6172-4206-9163-747561746f72", 18 | "Revision": "rev?" 19 | }, 20 | "Size": 21 | { 22 | "X": 100.050, 23 | "Y": 101.050 24 | }, 25 | "LayerNumber": 4, 26 | "BoardThickness": 1.600 27 | }, 28 | "DesignRules": 29 | [ 30 | { 31 | "Layers": "Outer", 32 | "PadToPad": 0.200, 33 | "PadToTrack": 0.200, 34 | "TrackToTrack": 0.200, 35 | "MinLineWidth": 0.250, 36 | "TrackToRegion": 0.200, 37 | "RegionToRegion": 0.200 38 | }, 39 | { 40 | "Layers": "Inner", 41 | "PadToPad": 0.200, 42 | "PadToTrack": 0.200, 43 | "TrackToTrack": 0.200, 44 | "MinLineWidth": 0.250, 45 | "TrackToRegion": 0.200, 46 | "RegionToRegion": 0.200 47 | } 48 | ], 49 | "FilesAttributes": 50 | [ 51 | { 52 | "Path": "linear actuator-F_Cu.gbr", 53 | "FileFunction": "Copper,L1,Top", 54 | "FilePolarity": "Positive" 55 | }, 56 | { 57 | "Path": "linear actuator-In1_Cu.gbr", 58 | "FileFunction": "Copper,L2,Inr", 59 | "FilePolarity": "Positive" 60 | }, 61 | { 62 | "Path": "linear actuator-In2_Cu.gbr", 63 | "FileFunction": "Copper,L3,Inr", 64 | "FilePolarity": "Positive" 65 | }, 66 | { 67 | "Path": "linear actuator-B_Cu.gbr", 68 | "FileFunction": "Copper,L4,Bot", 69 | "FilePolarity": "Positive" 70 | }, 71 | { 72 | "Path": "linear actuator-F_Paste.gbr", 73 | "FileFunction": "SolderPaste,Top", 74 | "FilePolarity": "Positive" 75 | }, 76 | { 77 | "Path": "linear actuator-B_Paste.gbr", 78 | "FileFunction": "SolderPaste,Bot", 79 | "FilePolarity": "Positive" 80 | }, 81 | { 82 | "Path": "linear actuator-F_SilkS.gbr", 83 | "FileFunction": "Legend,Top", 84 | "FilePolarity": "Positive" 85 | }, 86 | { 87 | "Path": "linear actuator-B_SilkS.gbr", 88 | "FileFunction": "Legend,Bot", 89 | "FilePolarity": "Positive" 90 | }, 91 | { 92 | "Path": "linear actuator-F_Mask.gbr", 93 | "FileFunction": "SolderMask,Top", 94 | "FilePolarity": "Negative" 95 | }, 96 | { 97 | "Path": "linear actuator-B_Mask.gbr", 98 | "FileFunction": "SolderMask,Bot", 99 | "FilePolarity": "Negative" 100 | }, 101 | { 102 | "Path": "linear actuator-Edge_Cuts.gbr", 103 | "FileFunction": "Profile", 104 | "FilePolarity": "Positive" 105 | } 106 | ], 107 | "MaterialStackup": 108 | [ 109 | { 110 | "Type": "Legend", 111 | "Notes": "Layer F.SilkS" 112 | }, 113 | { 114 | "Type": "SolderPaste", 115 | "Notes": "Layer F.Paste" 116 | }, 117 | { 118 | "Type": "SolderMask", 119 | "Notes": "Layer F.Mask" 120 | }, 121 | { 122 | "Type": "Copper", 123 | "Notes": "Layer F.Cu" 124 | }, 125 | { 126 | "Type": "Dielectric", 127 | "Material": "FR4", 128 | "Notes": "Layers L1/L2" 129 | }, 130 | { 131 | "Type": "Copper", 132 | "Notes": "Layer In1.Cu" 133 | }, 134 | { 135 | "Type": "Dielectric", 136 | "Material": "FR4", 137 | "Notes": "Layers L2/L3" 138 | }, 139 | { 140 | "Type": "Copper", 141 | "Notes": "Layer In2.Cu" 142 | }, 143 | { 144 | "Type": "Dielectric", 145 | "Material": "FR4", 146 | "Notes": "Layers L3/L4" 147 | }, 148 | { 149 | "Type": "Copper", 150 | "Notes": "Layer B.Cu" 151 | }, 152 | { 153 | "Type": "SolderMask", 154 | "Notes": "Layer B.Mask" 155 | }, 156 | { 157 | "Type": "SolderPaste", 158 | "Notes": "Layer B.Paste" 159 | }, 160 | { 161 | "Type": "Legend", 162 | "Notes": "Layer B.SilkS" 163 | } 164 | ] 165 | } 166 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator-top-pos.csv: -------------------------------------------------------------------------------- 1 | Ref,Val,Package,PosX,PosY,Rot,Side 2 | "L2","L","L_10.4x10.4_H4.8",137.000000,-93.650000,180.000000,top 3 | "L3","L","L_10.4x10.4_H4.8",123.500000,-93.650000,180.000000,top 4 | "L4","L","L_10.4x10.4_H4.8",110.250000,-93.650000,180.000000,top 5 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.csv: -------------------------------------------------------------------------------- 1 | "Id";"Designator";"Package";"Quantity";"Designation";"Supplier and ref"; 2 | 1;"C114,C11,C120,C112,C17,C9,C8,C7,C101,C98,C103,C107,C115,C12,C100,C99,C96,C95,C94,C27,C26,C108,C109,C116,C117,C13,C14,C1";"C_0402_1005Metric";28;"1uF";;; 3 | 2;"R13,R11,R8,R7,R35,R39,R14,R30,R6,R4";"R_0402_1005Metric";10;"1K";;; 4 | 3;"Q2,Q1";"SOT-23";2;"Q_NMOS_GSD";;; 5 | 4;"J7,J6";"PinHeader_1x02_P2.54mm_Vertical";2;"Conn_01x02_Male";;; 6 | 5;"C106,C104,C92,C111,C119,C16";"C_0402_1005Metric";6;"0.1uF";;; 7 | 6;"J2";"PinHeader_1x05_P2.54mm_Vertical";1;"Conn_01x05_Male";;; 8 | 7;"J5,J1";"PinHeader_1x04_P2.54mm_Vertical";2;"Conn_01x04_Male";;; 9 | 8;"J4";"Molex_Micro-Fit_3.0_43045-0212_2x01_P3.00mm_Vertical";1;"Conn_01x02_Male";;; 10 | 9;"L4,L3,L1";"L_10x7_H10";3;"L";;; 11 | 10;"R3";"R_0402_1005Metric";1;"1K5";;; 12 | 11;"C6,C91";"C_0603_1608Metric";2;"4.7uF";;; 13 | 12;"C5";"R_0402_1005Metric";1;"1uF";;; 14 | 13;"U5";"QFN-16_3x3_Pitch0.5mm";1;"QMC5883L";;; 15 | 14;"R15,R37,R36,R41,R40,R16";"R_0402_1005Metric";6;"2R";;; 16 | 15;"C42,C36";"C_0805_2012Metric";2;"22uF";;; 17 | 16;"U10,U9,U2";"QFN-40_5x6_Pitch0.45mm";3;"FDMF3170";;; 18 | 17;"U8";"SOT-23-6";1;"LMR16006YQ";;; 19 | 18;"U1";"LQFP-64_10x10mm_P0.5mm";1;"STM32F412RETx";;; 20 | 19;"U7,U6";"SOT-23";2;"APE8865N-33-HF-3";;; 21 | 20;"R12,R10";"R_0402_1005Metric";2;"2.2K";;; 22 | 21;"R33";"R_0402_1005Metric";1;"13K";;; 23 | 22;"R32";"R_0402_1005Metric";1;"68K";;; 24 | 23;"R31";"R_0402_1005Metric";1;"220R";;; 25 | 24;"R29";"R_0402_1005Metric";1;"4K7";;; 26 | 25;"R9,TH1,R5,R2,R1";"R_0402_1005Metric";5;"10K";;; 27 | 26;"L2";"L_1210_3225Metric";1;"10uH";;; 28 | 27;"D14,D16,D1";"D_SOD-123";3;"D";;; 29 | 28;"D15";"SOT-23";1;"TL432DBZ";;; 30 | 29;"C113,C105,C10";"C_0402_1005Metric";3;"22pF";;; 31 | 30;"C90";"C_0402_1005Metric";1;"0.22uF";;; 32 | 31;"C110,C118,C15";"C_0402_1005Metric";3;"220nF";;; 33 | 32;"C102,C2";"C_0402_1005Metric";2;"10nF";;; 34 | 33;"C97,C93,C45,C86,C89,C88,C74,C82,C85,C84,C87,C78,C81,C79,C83,C77,C75,C80,C70,C73,C76,C66,C69,C72,C71,C62,C65,C68,C67,C58,C61,C64,C63,C54,C57,C60,C59,C50,C53,C56,C55,C46,C49,C52,C51,C41,C48,C47,C37,C44,C43,C40,C39,C38,C35,C34,C33,C32,C31,C30,C29,C28";"C_0805_2012Metric";62;"4.7uF";;; 35 | 34;"NT1,NT3,NT2";"NetTie-2_SMD_Pad2.0mm";3;"Net-Tie_2";;; 36 | 35;"R28,R27,R26,R25,R24,R23,R22,R21";"R_0402_1005Metric";8;"220K";;; 37 | 36;"R20,R19,R18,R17";"R_0402_1005Metric";4;"300R";;; 38 | 37;"C25,C24,C23,C22,C21,C20,C19,C18";"C_0402_1005Metric";8;"6pF";;; 39 | 38;"C4,C3";"C_0402_1005Metric";2;"12pF";;; 40 | 39;"D10,D12,D6,D8,D13,D11,D9,D7";"D_0805_2012Metric";8;"D_Photo";;; 41 | 40;"Y1";"Crystal_SMD_3225-4Pin_3.2x2.5mm";1;"Crystal_GND24";;; 42 | 41;"U4,U3";"SOIC-14_3.9x8.7mm_P1.27mm";2;"OPA4340UA";;; 43 | 42;"MH4,MH3,MH2,MH1";"MountingHole_3.2mm_M3";4;"MountingHole";;; 44 | 43;"J3";"USB_Micro-B_Molex_47346-0001";1;"USB_B_Micro";;; 45 | 44;"D5,D4,D3,D2";"D_0603_1608Metric_Castellated";4;"LED";;; 46 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "All Layers", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 0, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 0.6 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 8, 37 | 9, 38 | 10, 39 | 11, 40 | 12, 41 | 13, 42 | 14, 43 | 15, 44 | 16, 45 | 17, 46 | 18, 47 | 19, 48 | 20, 49 | 21, 50 | 22, 51 | 23, 52 | 24, 53 | 25, 54 | 26, 55 | 27, 56 | 28, 57 | 29, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36 64 | ], 65 | "visible_layers": "fffffff_ffffffff", 66 | "zone_display_mode": 0 67 | }, 68 | "meta": { 69 | "filename": "linear actuator.kicad_prl", 70 | "version": 3 71 | }, 72 | "project": { 73 | "files": [] 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.kicad_pro: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "design_settings": { 4 | "defaults": { 5 | "board_outline_line_width": 0.049999999999999996, 6 | "copper_line_width": 0.19999999999999998, 7 | "copper_text_italic": false, 8 | "copper_text_size_h": 1.5, 9 | "copper_text_size_v": 1.5, 10 | "copper_text_thickness": 0.3, 11 | "copper_text_upright": false, 12 | "courtyard_line_width": 0.049999999999999996, 13 | "dimension_precision": 4, 14 | "dimension_units": 3, 15 | "dimensions": { 16 | "arrow_length": 1270000, 17 | "extension_offset": 500000, 18 | "keep_text_aligned": true, 19 | "suppress_zeroes": false, 20 | "text_position": 0, 21 | "units_format": 1 22 | }, 23 | "fab_line_width": 0.09999999999999999, 24 | "fab_text_italic": false, 25 | "fab_text_size_h": 1.0, 26 | "fab_text_size_v": 1.0, 27 | "fab_text_thickness": 0.15, 28 | "fab_text_upright": false, 29 | "other_line_width": 0.09999999999999999, 30 | "other_text_italic": false, 31 | "other_text_size_h": 1.0, 32 | "other_text_size_v": 1.0, 33 | "other_text_thickness": 0.15, 34 | "other_text_upright": false, 35 | "pads": { 36 | "drill": 0.762, 37 | "height": 1.524, 38 | "width": 1.524 39 | }, 40 | "silk_line_width": 0.12, 41 | "silk_text_italic": false, 42 | "silk_text_size_h": 1.0, 43 | "silk_text_size_v": 1.0, 44 | "silk_text_thickness": 0.15, 45 | "silk_text_upright": false, 46 | "zones": { 47 | "45_degree_only": true, 48 | "min_clearance": 0.19999999999999998 49 | } 50 | }, 51 | "diff_pair_dimensions": [], 52 | "drc_exclusions": [], 53 | "meta": { 54 | "filename": "board_design_settings.json", 55 | "version": 2 56 | }, 57 | "rule_severities": { 58 | "annular_width": "error", 59 | "clearance": "error", 60 | "copper_edge_clearance": "error", 61 | "courtyards_overlap": "error", 62 | "diff_pair_gap_out_of_range": "error", 63 | "diff_pair_uncoupled_length_too_long": "error", 64 | "drill_out_of_range": "error", 65 | "duplicate_footprints": "warning", 66 | "extra_footprint": "warning", 67 | "footprint_type_mismatch": "error", 68 | "hole_clearance": "error", 69 | "hole_near_hole": "error", 70 | "invalid_outline": "error", 71 | "item_on_disabled_layer": "error", 72 | "items_not_allowed": "error", 73 | "length_out_of_range": "error", 74 | "malformed_courtyard": "error", 75 | "microvia_drill_out_of_range": "error", 76 | "missing_courtyard": "ignore", 77 | "missing_footprint": "warning", 78 | "net_conflict": "warning", 79 | "npth_inside_courtyard": "ignore", 80 | "padstack": "error", 81 | "pth_inside_courtyard": "ignore", 82 | "shorting_items": "error", 83 | "silk_over_copper": "warning", 84 | "silk_overlap": "warning", 85 | "skew_out_of_range": "error", 86 | "through_hole_pad_without_hole": "error", 87 | "too_many_vias": "error", 88 | "track_dangling": "warning", 89 | "track_width": "error", 90 | "tracks_crossing": "error", 91 | "unconnected_items": "error", 92 | "unresolved_variable": "error", 93 | "via_dangling": "warning", 94 | "zone_has_empty_net": "error", 95 | "zones_intersect": "error" 96 | }, 97 | "rule_severitieslegacy_courtyards_overlap": true, 98 | "rule_severitieslegacy_no_courtyard_defined": false, 99 | "rules": { 100 | "allow_blind_buried_vias": false, 101 | "allow_microvias": false, 102 | "max_error": 0.005, 103 | "min_clearance": 0.0, 104 | "min_copper_edge_clearance": 0.024999999999999998, 105 | "min_hole_clearance": 0.25, 106 | "min_hole_to_hole": 0.25, 107 | "min_microvia_diameter": 0.25, 108 | "min_microvia_drill": 0.09999999999999999, 109 | "min_silk_clearance": 0.0, 110 | "min_through_hole_diameter": 0.25, 111 | "min_track_width": 0.19999999999999998, 112 | "min_via_annular_width": 0.049999999999999996, 113 | "min_via_diameter": 0.5, 114 | "use_height_for_length_calcs": true 115 | }, 116 | "track_widths": [ 117 | 0.0, 118 | 0.4, 119 | 2.0, 120 | 3.0, 121 | 5.0 122 | ], 123 | "via_dimensions": [ 124 | { 125 | "diameter": 0.0, 126 | "drill": 0.0 127 | }, 128 | { 129 | "diameter": 0.5, 130 | "drill": 0.25 131 | } 132 | ], 133 | "zones_allow_external_fillets": false, 134 | "zones_use_no_outline": true 135 | }, 136 | "layer_presets": [] 137 | }, 138 | "boards": [], 139 | "cvpcb": { 140 | "equivalence_files": [] 141 | }, 142 | "libraries": { 143 | "pinned_footprint_libs": [], 144 | "pinned_symbol_libs": [] 145 | }, 146 | "meta": { 147 | "filename": "linear actuator.kicad_pro", 148 | "version": 1 149 | }, 150 | "net_settings": { 151 | "classes": [ 152 | { 153 | "bus_width": 12.0, 154 | "clearance": 0.2, 155 | "diff_pair_gap": 0.25, 156 | "diff_pair_via_gap": 0.25, 157 | "diff_pair_width": 0.2, 158 | "line_style": 0, 159 | "microvia_diameter": 0.3, 160 | "microvia_drill": 0.1, 161 | "name": "Default", 162 | "pcb_color": "rgba(0, 0, 0, 0.000)", 163 | "schematic_color": "rgba(0, 0, 0, 0.000)", 164 | "track_width": 0.25, 165 | "via_diameter": 0.8, 166 | "via_drill": 0.4, 167 | "wire_width": 6.0 168 | } 169 | ], 170 | "meta": { 171 | "version": 2 172 | }, 173 | "net_colors": null 174 | }, 175 | "pcbnew": { 176 | "last_paths": { 177 | "gencad": "", 178 | "idf": "", 179 | "netlist": "", 180 | "specctra_dsn": "", 181 | "step": "", 182 | "vrml": "" 183 | }, 184 | "page_layout_descr_file": "" 185 | }, 186 | "schematic": { 187 | "drawing": { 188 | "label_size_ratio": 0.25, 189 | "pin_symbol_size": 0, 190 | "text_offset_ratio": 0.08 191 | }, 192 | "legacy_lib_dir": "", 193 | "legacy_lib_list": [] 194 | }, 195 | "sheets": [], 196 | "text_variables": {} 197 | } 198 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # FDMF3170 5 | # 6 | DEF FDMF3170 U 0 40 Y Y 1 F N 7 | F0 "U" 50 -1000 50 H V C CNN 8 | F1 "FDMF3170" 0 900 50 H V C CNN 9 | F2 "" 50 -1000 50 H I C CNN 10 | F3 "" 50 -1000 50 H I C CNN 11 | DRAW 12 | S -450 550 400 -650 0 1 0 f 13 | X VOS 1 -550 350 100 R 50 50 1 1 I 14 | X SW 10 500 -350 100 L 50 50 1 1 I 15 | X AGND 2 50 -750 100 U 50 50 1 1 I 16 | X VIN 25 500 -150 100 L 50 50 1 1 I 17 | X VCC 3 50 650 100 D 50 50 1 1 I 18 | X VIN 30 500 -150 100 L 50 50 1 1 I N 19 | X PHASE 32 500 50 100 L 50 50 1 1 I 20 | X BOOT 33 500 450 100 L 50 50 1 1 I 21 | X PWM 34 -550 -50 100 R 50 50 1 1 I 22 | X EN 35 -550 50 100 R 50 50 1 1 I 23 | X TMON 36 -550 -250 100 R 50 50 1 1 I 24 | X IMON 38 -550 -450 100 R 50 50 1 1 I 25 | X REFIN 39 -550 -550 100 R 50 50 1 1 I 26 | X PVCC 4 -50 650 100 D 50 50 1 1 I 27 | X PGND 40 -550 450 100 R 50 50 1 1 I N 28 | X PGND 5 -550 450 100 R 50 50 1 1 I 29 | X GL 6 -550 250 100 R 50 50 1 1 I 30 | X PGND 7 -50 -750 100 U 50 50 1 1 I 31 | ENDDRAW 32 | ENDDEF 33 | # 34 | # NCP302155 35 | # 36 | DEF NCP302155 U 0 40 Y Y 1 F N 37 | F0 "U" 0 750 50 H V C CNN 38 | F1 "NCP302155" 0 -650 50 H V C CNN 39 | F2 "" 0 750 50 H I C CNN 40 | F3 "" 0 750 50 H I C CNN 41 | DRAW 42 | S -300 700 300 -600 0 1 0 N 43 | X PWM 1 -400 150 100 R 50 50 1 1 B 44 | X PGND 12 400 -550 100 L 50 50 1 1 B 45 | X VSW 16 400 50 100 L 50 50 1 1 B 46 | X SMOD# 2 -400 250 100 R 50 50 1 1 B 47 | X GL 27 400 -150 100 L 50 50 1 1 B 48 | X PGND 28 400 -450 100 L 50 50 1 1 B 49 | X VCCD 29 -400 650 100 R 50 50 1 1 B 50 | X VCC 3 -400 450 100 R 50 50 1 1 B 51 | X THWN 30 -400 -150 100 R 50 50 1 1 B 52 | X DISAB# 31 -400 50 100 R 50 50 1 1 B 53 | X AGND 32 -400 -450 100 R 50 50 1 1 B 54 | X GL 33 400 -250 100 L 50 50 1 1 B 55 | X CGND 4 -400 -550 100 R 50 50 1 1 B 56 | X BOOT 5 400 650 100 L 50 50 1 1 B 57 | X PHASE 7 400 550 100 L 50 50 1 1 B 58 | X VIN 8 400 350 100 L 50 50 1 1 B 59 | ENDDRAW 60 | ENDDEF 61 | # 62 | # QMC5883L 63 | # 64 | DEF QMC5883L U 0 40 Y Y 1 F N 65 | F0 "U" 0 -540 50 H V C CNN 66 | F1 "QMC5883L" 0 650 50 H V C CNN 67 | F2 "" 0 -540 50 H I C CNN 68 | F3 "" 0 -540 50 H I C CNN 69 | DRAW 70 | S -300 550 300 -450 0 1 0 f 71 | X SCL 1 -400 200 100 R 50 50 1 1 I 72 | X C1 10 400 -100 100 L 50 50 1 1 I 73 | X GND 11 -400 -400 100 R 50 50 1 1 W 74 | X SETC 12 400 100 100 L 50 50 1 1 I 75 | X VDDIO 13 -400 500 100 R 50 50 1 1 I 76 | X DRDY 15 -400 -100 100 R 50 50 1 1 I 77 | X SDA 16 -400 100 100 R 50 50 1 1 I 78 | X VDD 2 400 500 100 L 50 50 1 1 W 79 | X S1 4 -400 400 100 R 50 50 1 1 I 80 | X SETP 8 400 300 100 L 50 50 1 1 I 81 | X GND 9 -400 -300 100 R 50 50 1 1 W 82 | ENDDRAW 83 | ENDDEF 84 | # 85 | #End Library 86 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/L_10.4x10.4_H4.8.kicad_mod: -------------------------------------------------------------------------------- 1 | (module L_10.4x10.4_H4.8 (layer F.Cu) (tedit 5990349B) 2 | (descr "Choke, SMD, 10.4x10.4mm 4.8mm height") 3 | (tags "Choke SMD") 4 | (attr smd) 5 | (fp_text reference REF** (at 0 -6.35) (layer F.SilkS) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_text value L_10.4x10.4_H4.8 (at 0 6.35) (layer F.Fab) 9 | (effects (font (size 1 1) (thickness 0.15))) 10 | ) 11 | (fp_line (start -5.2 5.2) (end 5.2 5.2) (layer F.Fab) (width 0.1)) 12 | (fp_line (start -5.2 -5.2) (end 5.2 -5.2) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -5.2 5.2) (end -5.2 2.1) (layer F.Fab) (width 0.1)) 14 | (fp_line (start 5.2 5.2) (end 5.2 2.1) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -5.2 -5.2) (end -5.2 -2.1) (layer F.Fab) (width 0.1)) 16 | (fp_line (start 5.2 -5.2) (end 5.2 -2.1) (layer F.Fab) (width 0.1)) 17 | (fp_line (start 5.75 -5.45) (end -5.75 -5.45) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start 5.75 5.45) (end 5.75 -5.45) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start -5.75 5.45) (end 5.75 5.45) (layer F.CrtYd) (width 0.05)) 20 | (fp_line (start -5.75 -5.45) (end -5.75 5.45) (layer F.CrtYd) (width 0.05)) 21 | (fp_line (start 5.3 -5.3) (end 5.3 -2.1) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -5.3 -5.3) (end 5.3 -5.3) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -5.3 -2.1) (end -5.3 -5.3) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start -5.3 5.3) (end -5.3 2.1) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start 5.3 5.3) (end -5.3 5.3) (layer F.SilkS) (width 0.12)) 26 | (fp_line (start 5.3 2.1) (end 5.3 5.3) (layer F.SilkS) (width 0.12)) 27 | (fp_text user %R (at 0 0) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (fp_arc (start 0 0) (end 3.17 3.17) (angle 90) (layer F.Fab) (width 0.1)) 31 | (fp_arc (start 0 0) (end -3.17 -3.17) (angle 90) (layer F.Fab) (width 0.1)) 32 | (pad 1 smd rect (at -4.15 0) (size 2.7 3.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 2 smd rect (at 4.15 0) (size 2.7 3.6) (layers F.Cu F.Paste F.Mask)) 34 | (model ${KISYS3DMOD}/Inductor_SMD.3dshapes/L_10.4x10.4_H4.8.wrl 35 | (at (xyz 0 0 0)) 36 | (scale (xyz 1 1 1)) 37 | (rotate (xyz 0 0 0)) 38 | ) 39 | ) 40 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/L_10x7_H10.kicad_mod: -------------------------------------------------------------------------------- 1 | (module L_10x7_H10 (layer F.Cu) (tedit 62BD43C7) 2 | (descr "Choke, SMD, 10.4x10.4mm 4.8mm height") 3 | (tags "Choke SMD") 4 | (attr smd) 5 | (fp_text reference REF** (at 0 -6.35) (layer F.SilkS) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_text value L_10x7_H10 (at 0 6.35) (layer F.Fab) 9 | (effects (font (size 1 1) (thickness 0.15))) 10 | ) 11 | (fp_line (start -5.2 3.5) (end 5.2 3.5) (layer F.Fab) (width 0.1)) 12 | (fp_line (start -5.2 -3.5) (end 5.2 -3.5) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -5.2 3.5) (end -5.2 2.1) (layer F.Fab) (width 0.1)) 14 | (fp_line (start 5.2 3.5) (end 5.2 2.1) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -5.2 -3.5) (end -5.2 -2.1) (layer F.Fab) (width 0.1)) 16 | (fp_line (start 5.2 -3.5) (end 5.2 -2.1) (layer F.Fab) (width 0.1)) 17 | (fp_line (start 5.75 -4.1) (end -5.75 -4.1) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start 5.75 4.075) (end 5.75 -4.1) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start -5.75 4.05) (end 5.75 4.075) (layer F.CrtYd) (width 0.05)) 20 | (fp_line (start -5.75 -4.1) (end -5.75 4.05) (layer F.CrtYd) (width 0.05)) 21 | (fp_line (start 5.3 -3.6) (end 5.3 -2.1) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -5.3 -3.6) (end 5.3 -3.6) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -5.3 -2.1) (end -5.3 -3.6) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start -5.3 3.6) (end -5.3 2.1) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start 5.3 3.6) (end -5.3 3.6) (layer F.SilkS) (width 0.12)) 26 | (fp_line (start 5.3 2.1) (end 5.3 3.6) (layer F.SilkS) (width 0.12)) 27 | (fp_text user %R (at 0 0) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (pad 1 smd rect (at -3.55 0) (size 3.2 3.3) (layers F.Cu F.Paste F.Mask)) 31 | (pad 2 smd rect (at 3.55 0) (size 3.2 3.3) (layers F.Cu F.Paste F.Mask)) 32 | (model ${KISYS3DMOD}/Inductor_SMD.3dshapes/L_10.4x10.4_H4.8.wrl 33 | (at (xyz 0 0 0)) 34 | (scale (xyz 1 1 1)) 35 | (rotate (xyz 0 0 0)) 36 | ) 37 | ) 38 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/PQFN-31_5x5_Pitch0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module PQFN-31_5x5_Pitch0.5mm (layer F.Cu) (tedit 62319274) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -4.05) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value PQFN-31_5x5_Pitch0.5mm (at 0 4.05) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -3.05 3.05) (end -3.05 -3.05) (layer F.CrtYd) (width 0.05)) 10 | (fp_line (start 3.05 3.05) (end -3.05 3.05) (layer F.CrtYd) (width 0.05)) 11 | (fp_line (start 3.05 -3.05) (end 3.05 3.05) (layer F.CrtYd) (width 0.05)) 12 | (fp_line (start -3.05 -3.05) (end 3.05 -3.05) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -2.25 -2.65) (end -2.8 -2.65) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -2.65 2.65) (end -2.65 2.25) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -2.25 2.65) (end -2.65 2.65) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 2.65 2.65) (end 2.65 2.25) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 2.25 2.65) (end 2.65 2.65) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 2.65 -2.65) (end 2.65 -2.25) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 2.25 -2.65) (end 2.65 -2.65) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 2.5 -2.5) (end -1.5 -2.5) (layer F.Fab) (width 0.15)) 21 | (fp_line (start 2.5 2.5) (end 2.5 -2.5) (layer F.Fab) (width 0.15)) 22 | (fp_line (start -2.5 2.5) (end 2.5 2.5) (layer F.Fab) (width 0.15)) 23 | (fp_line (start -2.5 -1.5) (end -2.5 2.5) (layer F.Fab) (width 0.15)) 24 | (fp_line (start -1.5 -2.5) (end -2.5 -1.5) (layer F.Fab) (width 0.15)) 25 | (pad 1 smd rect (at -2.4 -1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.4 -1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.4 -0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.4 -0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.4 0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.4 0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.4 1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at -2.4 1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 8 smd rect (at -1.75 2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 34 | (pad 12 smd rect (at 1 2.4) (size 1.8 0.6) (layers F.Cu F.Paste F.Mask)) 35 | (pad 16 smd rect (at 2.4 0 90) (size 3.8 0.6) (layers F.Cu F.Paste F.Mask)) 36 | (pad 16 smd rect (at 1.25 -2.4) (size 1.3 0.6) (layers F.Cu F.Paste F.Mask)) 37 | (pad 27 smd rect (at 0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 38 | (pad 28 smd rect (at -0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 39 | (pad 29 smd rect (at -0.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 40 | (pad 30 smd rect (at -1.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 41 | (pad 31 smd rect (at -1.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 42 | (pad 8 smd rect (at -1.185 1.385) (size 1.13 2.63) (layers F.Cu F.Paste F.Mask)) 43 | (pad 12 smd rect (at 1.175 0.475) (size 1.15 4.45) (layers F.Cu F.Paste F.Mask)) 44 | (pad 33 smd rect (at 0.225 -1.635) (size 0.35 0.53) (layers F.Cu F.Paste F.Mask)) 45 | (pad 32 smd rect (at -1.185 -1.05) (size 1.13 1.42) (layers F.Cu F.Paste F.Mask)) 46 | (pad 12 smd rect (at 0.165 0.625) (size 0.87 3.05) (layers F.Cu F.Paste F.Mask)) 47 | (pad 32 thru_hole circle (at -1.5 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 48 | (pad 32 thru_hole circle (at -0.9 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 49 | (pad 32 thru_hole circle (at -0.9 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 50 | (pad 32 thru_hole circle (at -1.5 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 51 | (pad 8 thru_hole circle (at -1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 52 | (pad 8 thru_hole circle (at -0.9 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 53 | (pad 8 thru_hole circle (at -1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 54 | (pad 8 thru_hole circle (at -0.9 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 55 | (pad 12 thru_hole circle (at 0.1 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 56 | (pad 12 thru_hole circle (at 0.8 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 57 | (pad 12 thru_hole circle (at 1.5 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 58 | (pad 12 thru_hole circle (at 1.5 -1.3) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 59 | (pad 12 thru_hole circle (at 0.8 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 60 | (pad 12 thru_hole circle (at 0.1 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 61 | (pad 12 thru_hole circle (at 1.5 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 62 | (pad 12 thru_hole circle (at 0.8 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 63 | (pad 12 thru_hole circle (at 0.1 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 64 | (pad 12 thru_hole circle (at 1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 65 | (pad 12 thru_hole circle (at 0.8 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 66 | (pad 12 thru_hole circle (at 0.1 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 67 | (pad 12 thru_hole circle (at 1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 68 | ) 69 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/QFN-16_3x3_Pitch0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module QFN-16_3x3_Pitch0.5mm (layer F.Cu) (tedit 62B78707) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -2.9) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value QFN-16_3x3_Pitch0.5mm (at 0 2.9) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -0.5 -1.5) (end -1.5 -0.5) (layer F.Fab) (width 0.15)) 10 | (fp_line (start -1.5 -0.5) (end -1.5 1.5) (layer F.Fab) (width 0.15)) 11 | (fp_line (start -1.5 1.5) (end 1.5 1.5) (layer F.Fab) (width 0.15)) 12 | (fp_line (start 1.5 1.5) (end 1.5 -1.5) (layer F.Fab) (width 0.15)) 13 | (fp_line (start 1.5 -1.5) (end -0.5 -1.5) (layer F.Fab) (width 0.15)) 14 | (fp_line (start 1.25 -1.65) (end 1.65 -1.65) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start 1.65 -1.65) (end 1.65 -1.25) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 1.25 1.65) (end 1.65 1.65) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 1.65 1.65) (end 1.65 1.25) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.25 1.65) (end -1.65 1.65) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start -1.65 1.65) (end -1.65 1.25) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start -1.25 -1.65) (end -1.6625 -1.65) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.9 -1.9) (end 1.9 -1.9) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start 1.9 -1.9) (end 1.9 1.9) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start 1.9 1.9) (end -1.9 1.9) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.9 1.9) (end -1.9 -1.9) (layer F.CrtYd) (width 0.05)) 25 | (pad 1 smd rect (at -1.2625 -0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -1.2625 -0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -1.2625 0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -1.2625 0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -0.75 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -0.25 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at 0.25 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at 0.75 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 33 | (pad 9 smd rect (at 1.2625 0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 34 | (pad 10 smd rect (at 1.2625 0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 35 | (pad 11 smd rect (at 1.2625 -0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 36 | (pad 12 smd rect (at 1.2625 -0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 37 | (pad 13 smd rect (at 0.75 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 38 | (pad 14 smd rect (at 0.25 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 39 | (pad 15 smd rect (at -0.25 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 40 | (pad 16 smd rect (at -0.75 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 41 | ) 42 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/QFN-40_5x6_Pitch0.45mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module QFN-40_5x6_Pitch0.45mm (layer F.Cu) (tedit 62BD4648) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -4.55) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value QFN-39_5x6_Pitch0.45mm (at 0 4.55) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -3.05 3.55) (end -3.05 -3.55) (layer F.CrtYd) (width 0.05)) 10 | (fp_line (start 3.05 3.55) (end -3.05 3.55) (layer F.CrtYd) (width 0.05)) 11 | (fp_line (start 3.05 -3.55) (end 3.05 3.55) (layer F.CrtYd) (width 0.05)) 12 | (fp_line (start -3.05 -3.55) (end 3.05 -3.55) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -2.475 -3.15) (end -2.8 -3.15) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -2.65 3.15) (end -2.65 2.475) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -2.475 3.15) (end -2.65 3.15) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 2.65 3.15) (end 2.65 2.475) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 2.475 3.15) (end 2.65 3.15) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 2.65 -3.15) (end 2.65 -2.475) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 2.475 -3.15) (end 2.65 -3.15) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 2.5 -3) (end -1.5 -3) (layer F.Fab) (width 0.15)) 21 | (fp_line (start 2.5 3) (end 2.5 -3) (layer F.Fab) (width 0.15)) 22 | (fp_line (start -2.5 3) (end 2.5 3) (layer F.Fab) (width 0.15)) 23 | (fp_line (start -2.5 -2) (end -2.5 3) (layer F.Fab) (width 0.15)) 24 | (fp_line (start -1.5 -3) (end -2.5 -2) (layer F.Fab) (width 0.15)) 25 | (pad 1 smd rect (at -2.4 -2.25 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.4 -1.8 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.4 -1.35 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.4 -0.9 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.4 -0.45 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.4 0 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.4 1.05 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 32 | (pad 7 smd rect (at -2.4 1.5 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 7 smd rect (at -2.4 1.95 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 34 | (pad 10 smd rect (at -2.025 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 35 | (pad 10 smd rect (at -1.575 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 36 | (pad 10 smd rect (at -1.125 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 37 | (pad 10 smd rect (at -0.675 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 38 | (pad 10 smd rect (at -0.225 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 39 | (pad 10 smd rect (at 0.225 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 40 | (pad 10 smd rect (at 0.675 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 41 | (pad 10 smd rect (at 1.125 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 42 | (pad 10 smd rect (at 1.575 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 43 | (pad 10 smd rect (at 2.025 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 44 | (pad 7 smd rect (at 2.4 2.05 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 45 | (pad 7 smd rect (at 2.4 1.6 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 46 | (pad 7 smd rect (at 2.4 1.15 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 47 | (pad 7 smd rect (at 2.4 0.7 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 48 | (pad 7 smd rect (at 2.4 0.25 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 49 | (pad 25 smd rect (at 2.4 -0.375 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 50 | (pad 25 smd rect (at 2.4 -0.825 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 51 | (pad 25 smd rect (at 2.4 -1.275 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 52 | (pad 25 smd rect (at 2.4 -1.725 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 53 | (pad 25 smd rect (at 2.4 -2.175 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 54 | (pad 30 smd rect (at 2.025 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 55 | (pad 31 smd rect (at 1.575 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 56 | (pad 32 smd rect (at 1.125 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 57 | (pad 33 smd rect (at 0.675 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 58 | (pad 34 smd rect (at 0.225 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 59 | (pad 35 smd rect (at -0.225 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 60 | (pad 36 smd rect (at -0.675 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 61 | (pad 37 smd rect (at -1.125 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 62 | (pad 38 smd rect (at -1.575 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 63 | (pad 39 smd rect (at -2.025 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 64 | (pad 41 smd rect (at -1.525 0.25 90) (size 0.349 0.5) (layers F.Cu F.Paste F.Mask)) 65 | (pad 40 smd rect (at -0.8875 -1.375) (size 1.775 2) (layers F.Cu F.Paste F.Mask)) 66 | (pad 25 smd rect (at 1.35 -1.275) (size 1.925 2) (layers F.Cu F.Paste F.Mask)) 67 | (pad 7 smd rect (at 0 1.5) (size 4.6 1.45) (layers F.Cu F.Paste F.Mask)) 68 | (pad 7 smd rect (at 0.7 0.8) (size 3.225 1.45) (layers F.Cu F.Paste F.Mask)) 69 | (pad 10 smd rect (at 0 2.625) (size 4.3 0.225) (layers F.Cu F.Paste F.Mask)) 70 | (pad 7 thru_hole circle (at -0.325 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 71 | (pad 7 thru_hole circle (at 0.475 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 72 | (pad 7 thru_hole circle (at 1.25 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 73 | (pad 7 thru_hole circle (at 2 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 74 | (pad 7 thru_hole circle (at 1.25 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 75 | (pad 7 thru_hole circle (at 2 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 76 | (pad 7 thru_hole circle (at -0.325 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 77 | (pad 7 thru_hole circle (at 0.475 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 78 | (pad 7 thru_hole circle (at 1.25 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 79 | (pad 7 thru_hole circle (at 2 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 80 | (pad 7 thru_hole circle (at -0.325 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 81 | (pad 7 thru_hole circle (at 0.475 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 82 | (pad 7 thru_hole circle (at -1.15 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 83 | (pad 7 thru_hole circle (at -2 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 84 | (pad 40 thru_hole circle (at -1.275 -2.125) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 85 | (pad 40 thru_hole circle (at -0.525 -2.125) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 86 | (pad 40 thru_hole circle (at -0.525 -1.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 87 | (pad 40 thru_hole circle (at -1.275 -1.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 88 | (pad 40 thru_hole circle (at -0.525 -0.625) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 89 | (pad 40 thru_hole circle (at -1.275 -0.625) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 90 | (pad 25 thru_hole circle (at 0.95 -0.525) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 91 | (pad 25 thru_hole circle (at 1.7 -0.525) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 92 | (pad 25 thru_hole circle (at 1.7 -1.275) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 93 | (pad 25 thru_hole circle (at 0.95 -2.025) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 94 | (pad 25 thru_hole circle (at 0.95 -1.275) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 95 | (pad 25 thru_hole circle (at 1.7 -2.025) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 96 | (pad 7 thru_hole circle (at -2 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 97 | (pad 7 thru_hole circle (at -1.15 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 98 | ) 99 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pretty/landing_pad.kicad_mod: -------------------------------------------------------------------------------- 1 | (module landing_pad (layer F.Cu) (tedit 622EC080) 2 | (fp_text reference REF** (at 0 0.5) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value landing_pad (at 0 -0.5) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (pad 1 smd rect (at 0 0) (size 3 3) (layers F.Cu F.Paste F.Mask)) 9 | ) 10 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/linear actuator.pro: -------------------------------------------------------------------------------- 1 | update=Wed 16 Mar 2022 12:25:06 AM PDT 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead= 19 | CopperLayerCount=4 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.5 27 | MinViaDrill=0.25 28 | MinMicroViaDiameter=0.25 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | TrackWidth2=0.4 33 | TrackWidth3=2 34 | TrackWidth4=3 35 | TrackWidth5=5 36 | ViaDiameter1=0.8 37 | ViaDrill1=0.4 38 | ViaDiameter2=0.5 39 | ViaDrill2=0.25 40 | dPairWidth1=0.2 41 | dPairGap1=0.25 42 | dPairViaGap1=0.25 43 | SilkLineWidth=0.12 44 | SilkTextSizeV=1 45 | SilkTextSizeH=1 46 | SilkTextSizeThickness=0.15 47 | SilkTextItalic=0 48 | SilkTextUpright=1 49 | CopperLineWidth=0.2 50 | CopperTextSizeV=1.5 51 | CopperTextSizeH=1.5 52 | CopperTextThickness=0.3 53 | CopperTextItalic=0 54 | CopperTextUpright=1 55 | EdgeCutLineWidth=0.05 56 | CourtyardLineWidth=0.05 57 | OthersLineWidth=0.15 58 | OthersTextSizeV=1 59 | OthersTextSizeH=1 60 | OthersTextSizeThickness=0.15 61 | OthersTextItalic=0 62 | OthersTextUpright=1 63 | SolderMaskClearance=0 64 | SolderMaskMinWidth=0 65 | SolderPasteClearance=0 66 | SolderPasteRatio=-0 67 | [pcbnew/Layer.F.Cu] 68 | Name=F.Cu 69 | Type=0 70 | Enabled=1 71 | [pcbnew/Layer.In1.Cu] 72 | Name=In1.Cu 73 | Type=1 74 | Enabled=1 75 | [pcbnew/Layer.In2.Cu] 76 | Name=In2.Cu 77 | Type=1 78 | Enabled=1 79 | [pcbnew/Layer.In3.Cu] 80 | Name=In3.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In4.Cu] 84 | Name=In4.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In5.Cu] 88 | Name=In5.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In6.Cu] 92 | Name=In6.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In7.Cu] 96 | Name=In7.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In8.Cu] 100 | Name=In8.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In9.Cu] 104 | Name=In9.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In10.Cu] 108 | Name=In10.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In11.Cu] 112 | Name=In11.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In12.Cu] 116 | Name=In12.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In13.Cu] 120 | Name=In13.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In14.Cu] 124 | Name=In14.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In15.Cu] 128 | Name=In15.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In16.Cu] 132 | Name=In16.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In17.Cu] 136 | Name=In17.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In18.Cu] 140 | Name=In18.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In19.Cu] 144 | Name=In19.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In20.Cu] 148 | Name=In20.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In21.Cu] 152 | Name=In21.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In22.Cu] 156 | Name=In22.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In23.Cu] 160 | Name=In23.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In24.Cu] 164 | Name=In24.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In25.Cu] 168 | Name=In25.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In26.Cu] 172 | Name=In26.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In27.Cu] 176 | Name=In27.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In28.Cu] 180 | Name=In28.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In29.Cu] 184 | Name=In29.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In30.Cu] 188 | Name=In30.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.B.Cu] 192 | Name=B.Cu 193 | Type=0 194 | Enabled=1 195 | [pcbnew/Layer.B.Adhes] 196 | Enabled=1 197 | [pcbnew/Layer.F.Adhes] 198 | Enabled=1 199 | [pcbnew/Layer.B.Paste] 200 | Enabled=1 201 | [pcbnew/Layer.F.Paste] 202 | Enabled=1 203 | [pcbnew/Layer.B.SilkS] 204 | Enabled=1 205 | [pcbnew/Layer.F.SilkS] 206 | Enabled=1 207 | [pcbnew/Layer.B.Mask] 208 | Enabled=1 209 | [pcbnew/Layer.F.Mask] 210 | Enabled=1 211 | [pcbnew/Layer.Dwgs.User] 212 | Enabled=1 213 | [pcbnew/Layer.Cmts.User] 214 | Enabled=1 215 | [pcbnew/Layer.Eco1.User] 216 | Enabled=1 217 | [pcbnew/Layer.Eco2.User] 218 | Enabled=1 219 | [pcbnew/Layer.Edge.Cuts] 220 | Enabled=1 221 | [pcbnew/Layer.Margin] 222 | Enabled=1 223 | [pcbnew/Layer.B.CrtYd] 224 | Enabled=1 225 | [pcbnew/Layer.F.CrtYd] 226 | Enabled=1 227 | [pcbnew/Layer.B.Fab] 228 | Enabled=1 229 | [pcbnew/Layer.F.Fab] 230 | Enabled=1 231 | [pcbnew/Layer.Rescue] 232 | Enabled=0 233 | [pcbnew/Netclasses] 234 | [pcbnew/Netclasses/Default] 235 | Name=Default 236 | Clearance=0.2 237 | TrackWidth=0.25 238 | ViaDiameter=0.8 239 | ViaDrill=0.4 240 | uViaDiameter=0.3 241 | uViaDrill=0.1 242 | dPairWidth=0.2 243 | dPairGap=0.25 244 | dPairViaGap=0.25 245 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/magnetic.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 4 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L power:GND #PWR0188 18 | U 1 1 62BF3248 19 | P 4500 4050 20 | F 0 "#PWR0188" H 4500 3800 50 0001 C CNN 21 | F 1 "GND" H 4505 3877 50 0000 C CNN 22 | F 2 "" H 4500 4050 50 0001 C CNN 23 | F 3 "" H 4500 4050 50 0001 C CNN 24 | 1 4500 4050 25 | 1 0 0 -1 26 | $EndComp 27 | Wire Wire Line 28 | 4500 3950 4500 4050 29 | $Comp 30 | L power:+3.3V #PWR0187 31 | U 1 1 62BF4177 32 | P 4500 3150 33 | F 0 "#PWR0187" H 4500 3000 50 0001 C CNN 34 | F 1 "+3.3V" H 4515 3323 50 0000 C CNN 35 | F 2 "" H 4500 3150 50 0001 C CNN 36 | F 3 "" H 4500 3150 50 0001 C CNN 37 | 1 4500 3150 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L linear~actuator:QMC5883L U5 42 | U 1 1 62BF67A4 43 | P 4900 3650 44 | F 0 "U5" H 4900 4375 50 0000 C CNN 45 | F 1 "QMC5883L" H 4900 4284 50 0000 C CNN 46 | F 2 "linear actuator:QFN-16_3x3_Pitch0.5mm" H 4900 3110 50 0001 C CNN 47 | F 3 "" H 4900 3110 50 0001 C CNN 48 | 1 4900 3650 49 | 1 0 0 -1 50 | $EndComp 51 | Connection ~ 4500 4050 52 | Wire Wire Line 53 | 4500 3250 4500 3150 54 | Connection ~ 4500 3150 55 | $Comp 56 | L power:+3.3V #PWR0189 57 | U 1 1 62BF7D20 58 | P 5300 3150 59 | F 0 "#PWR0189" H 5300 3000 50 0001 C CNN 60 | F 1 "+3.3V" H 5315 3323 50 0000 C CNN 61 | F 2 "" H 5300 3150 50 0001 C CNN 62 | F 3 "" H 5300 3150 50 0001 C CNN 63 | 1 5300 3150 64 | 1 0 0 -1 65 | $EndComp 66 | $Comp 67 | L Device:C C90 68 | U 1 1 62BF8F95 69 | P 5500 3450 70 | F 0 "C90" H 5615 3496 50 0000 L CNN 71 | F 1 "0.22uF" H 5615 3405 50 0000 L CNN 72 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5538 3300 50 0001 C CNN 73 | F 3 "~" H 5500 3450 50 0001 C CNN 74 | 1 5500 3450 75 | 1 0 0 -1 76 | $EndComp 77 | $Comp 78 | L Device:C C91 79 | U 1 1 62BF94AA 80 | P 5500 3900 81 | F 0 "C91" H 5615 3946 50 0000 L CNN 82 | F 1 "4.7uF" H 5615 3855 50 0000 L CNN 83 | F 2 "Capacitor_SMD:C_0603_1608Metric" H 5538 3750 50 0001 C CNN 84 | F 3 "~" H 5500 3900 50 0001 C CNN 85 | 1 5500 3900 86 | 1 0 0 -1 87 | $EndComp 88 | $Comp 89 | L power:GND #PWR0190 90 | U 1 1 62BF9DC6 91 | P 5500 4050 92 | F 0 "#PWR0190" H 5500 3800 50 0001 C CNN 93 | F 1 "GND" H 5505 3877 50 0000 C CNN 94 | F 2 "" H 5500 4050 50 0001 C CNN 95 | F 3 "" H 5500 4050 50 0001 C CNN 96 | 1 5500 4050 97 | 1 0 0 -1 98 | $EndComp 99 | Wire Wire Line 100 | 5300 3750 5500 3750 101 | Wire Wire Line 102 | 5500 3600 5300 3600 103 | Wire Wire Line 104 | 5300 3600 5300 3550 105 | Wire Wire Line 106 | 5500 3300 5300 3300 107 | Wire Wire Line 108 | 5300 3300 5300 3350 109 | $Comp 110 | L power:GND #PWR? 111 | U 1 1 62C13EF8 112 | P 6450 3750 113 | AR Path="/63347CD9/62C13EF8" Ref="#PWR?" Part="1" 114 | AR Path="/63451ACA/62C13EF8" Ref="#PWR?" Part="1" 115 | AR Path="/63451D42/62C13EF8" Ref="#PWR?" Part="1" 116 | AR Path="/62C13EF8" Ref="#PWR?" Part="1" 117 | AR Path="/62BEEC4C/62C13EF8" Ref="#PWR0192" Part="1" 118 | F 0 "#PWR0192" H 6450 3500 50 0001 C CNN 119 | F 1 "GND" H 6455 3577 50 0000 C CNN 120 | F 2 "" H 6450 3750 50 0001 C CNN 121 | F 3 "" H 6450 3750 50 0001 C CNN 122 | 1 6450 3750 123 | 1 0 0 -1 124 | $EndComp 125 | $Comp 126 | L Device:C C? 127 | U 1 1 62C13EFE 128 | P 6450 3600 129 | AR Path="/63347CD9/62C13EFE" Ref="C?" Part="1" 130 | AR Path="/63451ACA/62C13EFE" Ref="C?" Part="1" 131 | AR Path="/63451D42/62C13EFE" Ref="C?" Part="1" 132 | AR Path="/62C13EFE" Ref="C?" Part="1" 133 | AR Path="/62BEEC4C/62C13EFE" Ref="C92" Part="1" 134 | F 0 "C92" H 6335 3554 50 0000 R CNN 135 | F 1 "0.1uF" H 6335 3645 50 0000 R CNN 136 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6488 3450 50 0001 C CNN 137 | F 3 "~" H 6450 3600 50 0001 C CNN 138 | 1 6450 3600 139 | 1 0 0 -1 140 | $EndComp 141 | $Comp 142 | L power:+3.3V #PWR0191 143 | U 1 1 62C14690 144 | P 6450 3450 145 | F 0 "#PWR0191" H 6450 3300 50 0001 C CNN 146 | F 1 "+3.3V" H 6465 3623 50 0000 C CNN 147 | F 2 "" H 6450 3450 50 0001 C CNN 148 | F 3 "" H 6450 3450 50 0001 C CNN 149 | 1 6450 3450 150 | 1 0 0 -1 151 | $EndComp 152 | Text HLabel 4500 3450 0 50 Input ~ 0 153 | SCL 154 | Text HLabel 4500 3550 0 50 Input ~ 0 155 | SDA 156 | $Comp 157 | L power:GND #PWR? 158 | U 1 1 632C2DD9 159 | P 6950 3750 160 | AR Path="/63347CD9/632C2DD9" Ref="#PWR?" Part="1" 161 | AR Path="/63451ACA/632C2DD9" Ref="#PWR?" Part="1" 162 | AR Path="/63451D42/632C2DD9" Ref="#PWR?" Part="1" 163 | AR Path="/632C2DD9" Ref="#PWR?" Part="1" 164 | AR Path="/62BEEC4C/632C2DD9" Ref="#PWR0240" Part="1" 165 | F 0 "#PWR0240" H 6950 3500 50 0001 C CNN 166 | F 1 "GND" H 6955 3577 50 0000 C CNN 167 | F 2 "" H 6950 3750 50 0001 C CNN 168 | F 3 "" H 6950 3750 50 0001 C CNN 169 | 1 6950 3750 170 | 1 0 0 -1 171 | $EndComp 172 | $Comp 173 | L Device:C C? 174 | U 1 1 632C2DDF 175 | P 6950 3600 176 | AR Path="/63347CD9/632C2DDF" Ref="C?" Part="1" 177 | AR Path="/63451ACA/632C2DDF" Ref="C?" Part="1" 178 | AR Path="/63451D42/632C2DDF" Ref="C?" Part="1" 179 | AR Path="/632C2DDF" Ref="C?" Part="1" 180 | AR Path="/62BEEC4C/632C2DDF" Ref="C106" Part="1" 181 | F 0 "C106" H 6835 3554 50 0000 R CNN 182 | F 1 "0.1uF" H 6835 3645 50 0000 R CNN 183 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6988 3450 50 0001 C CNN 184 | F 3 "~" H 6950 3600 50 0001 C CNN 185 | 1 6950 3600 186 | 1 0 0 -1 187 | $EndComp 188 | $Comp 189 | L power:+3.3V #PWR0241 190 | U 1 1 632C2DE5 191 | P 6950 3450 192 | F 0 "#PWR0241" H 6950 3300 50 0001 C CNN 193 | F 1 "+3.3V" H 6965 3623 50 0000 C CNN 194 | F 2 "" H 6950 3450 50 0001 C CNN 195 | F 3 "" H 6950 3450 50 0001 C CNN 196 | 1 6950 3450 197 | 1 0 0 -1 198 | $EndComp 199 | $EndSCHEMATC 200 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/magnetic.sch-bak: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 4 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L power:GND #PWR0188 18 | U 1 1 62BF3248 19 | P 4500 4050 20 | F 0 "#PWR0188" H 4500 3800 50 0001 C CNN 21 | F 1 "GND" H 4505 3877 50 0000 C CNN 22 | F 2 "" H 4500 4050 50 0001 C CNN 23 | F 3 "" H 4500 4050 50 0001 C CNN 24 | 1 4500 4050 25 | 1 0 0 -1 26 | $EndComp 27 | Wire Wire Line 28 | 4500 3950 4500 4050 29 | $Comp 30 | L power:+3.3V #PWR0187 31 | U 1 1 62BF4177 32 | P 4500 3150 33 | F 0 "#PWR0187" H 4500 3000 50 0001 C CNN 34 | F 1 "+3.3V" H 4515 3323 50 0000 C CNN 35 | F 2 "" H 4500 3150 50 0001 C CNN 36 | F 3 "" H 4500 3150 50 0001 C CNN 37 | 1 4500 3150 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L linear~actuator:QMC5883L U5 42 | U 1 1 62BF67A4 43 | P 4900 3650 44 | F 0 "U5" H 4900 4375 50 0000 C CNN 45 | F 1 "QMC5883L" H 4900 4284 50 0000 C CNN 46 | F 2 "linear actuator:QFN-16_3x3_Pitch0.5mm" H 4900 3110 50 0001 C CNN 47 | F 3 "" H 4900 3110 50 0001 C CNN 48 | 1 4900 3650 49 | 1 0 0 -1 50 | $EndComp 51 | Connection ~ 4500 4050 52 | Wire Wire Line 53 | 4500 3250 4500 3150 54 | Connection ~ 4500 3150 55 | $Comp 56 | L power:+3.3V #PWR0189 57 | U 1 1 62BF7D20 58 | P 5300 3150 59 | F 0 "#PWR0189" H 5300 3000 50 0001 C CNN 60 | F 1 "+3.3V" H 5315 3323 50 0000 C CNN 61 | F 2 "" H 5300 3150 50 0001 C CNN 62 | F 3 "" H 5300 3150 50 0001 C CNN 63 | 1 5300 3150 64 | 1 0 0 -1 65 | $EndComp 66 | $Comp 67 | L Device:C C90 68 | U 1 1 62BF8F95 69 | P 5500 3450 70 | F 0 "C90" H 5615 3496 50 0000 L CNN 71 | F 1 "0.22uF" H 5615 3405 50 0000 L CNN 72 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5538 3300 50 0001 C CNN 73 | F 3 "~" H 5500 3450 50 0001 C CNN 74 | 1 5500 3450 75 | 1 0 0 -1 76 | $EndComp 77 | $Comp 78 | L Device:C C91 79 | U 1 1 62BF94AA 80 | P 5500 3900 81 | F 0 "C91" H 5615 3946 50 0000 L CNN 82 | F 1 "4.7uF" H 5615 3855 50 0000 L CNN 83 | F 2 "Capacitor_SMD:C_0603_1608Metric" H 5538 3750 50 0001 C CNN 84 | F 3 "~" H 5500 3900 50 0001 C CNN 85 | 1 5500 3900 86 | 1 0 0 -1 87 | $EndComp 88 | $Comp 89 | L power:GND #PWR0190 90 | U 1 1 62BF9DC6 91 | P 5500 4050 92 | F 0 "#PWR0190" H 5500 3800 50 0001 C CNN 93 | F 1 "GND" H 5505 3877 50 0000 C CNN 94 | F 2 "" H 5500 4050 50 0001 C CNN 95 | F 3 "" H 5500 4050 50 0001 C CNN 96 | 1 5500 4050 97 | 1 0 0 -1 98 | $EndComp 99 | Wire Wire Line 100 | 5300 3750 5500 3750 101 | Wire Wire Line 102 | 5500 3600 5300 3600 103 | Wire Wire Line 104 | 5300 3600 5300 3550 105 | Wire Wire Line 106 | 5500 3300 5300 3300 107 | Wire Wire Line 108 | 5300 3300 5300 3350 109 | $Comp 110 | L power:GND #PWR? 111 | U 1 1 62C13EF8 112 | P 6450 3750 113 | AR Path="/63347CD9/62C13EF8" Ref="#PWR?" Part="1" 114 | AR Path="/63451ACA/62C13EF8" Ref="#PWR?" Part="1" 115 | AR Path="/63451D42/62C13EF8" Ref="#PWR?" Part="1" 116 | AR Path="/62C13EF8" Ref="#PWR?" Part="1" 117 | AR Path="/62BEEC4C/62C13EF8" Ref="#PWR0192" Part="1" 118 | F 0 "#PWR0192" H 6450 3500 50 0001 C CNN 119 | F 1 "GND" H 6455 3577 50 0000 C CNN 120 | F 2 "" H 6450 3750 50 0001 C CNN 121 | F 3 "" H 6450 3750 50 0001 C CNN 122 | 1 6450 3750 123 | 1 0 0 -1 124 | $EndComp 125 | $Comp 126 | L Device:C C? 127 | U 1 1 62C13EFE 128 | P 6450 3600 129 | AR Path="/63347CD9/62C13EFE" Ref="C?" Part="1" 130 | AR Path="/63451ACA/62C13EFE" Ref="C?" Part="1" 131 | AR Path="/63451D42/62C13EFE" Ref="C?" Part="1" 132 | AR Path="/62C13EFE" Ref="C?" Part="1" 133 | AR Path="/62BEEC4C/62C13EFE" Ref="C92" Part="1" 134 | F 0 "C92" H 6335 3554 50 0000 R CNN 135 | F 1 "0.1uF" H 6335 3645 50 0000 R CNN 136 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6488 3450 50 0001 C CNN 137 | F 3 "~" H 6450 3600 50 0001 C CNN 138 | 1 6450 3600 139 | 1 0 0 -1 140 | $EndComp 141 | $Comp 142 | L power:+3.3V #PWR0191 143 | U 1 1 62C14690 144 | P 6450 3450 145 | F 0 "#PWR0191" H 6450 3300 50 0001 C CNN 146 | F 1 "+3.3V" H 6465 3623 50 0000 C CNN 147 | F 2 "" H 6450 3450 50 0001 C CNN 148 | F 3 "" H 6450 3450 50 0001 C CNN 149 | 1 6450 3450 150 | 1 0 0 -1 151 | $EndComp 152 | Text HLabel 4500 3450 0 50 Input ~ 0 153 | SCL 154 | Text HLabel 4500 3550 0 50 Input ~ 0 155 | SDA 156 | $Comp 157 | L power:GND #PWR? 158 | U 1 1 632C2DD9 159 | P 6950 3750 160 | AR Path="/63347CD9/632C2DD9" Ref="#PWR?" Part="1" 161 | AR Path="/63451ACA/632C2DD9" Ref="#PWR?" Part="1" 162 | AR Path="/63451D42/632C2DD9" Ref="#PWR?" Part="1" 163 | AR Path="/632C2DD9" Ref="#PWR?" Part="1" 164 | AR Path="/62BEEC4C/632C2DD9" Ref="#PWR0240" Part="1" 165 | F 0 "#PWR0240" H 6950 3500 50 0001 C CNN 166 | F 1 "GND" H 6955 3577 50 0000 C CNN 167 | F 2 "" H 6950 3750 50 0001 C CNN 168 | F 3 "" H 6950 3750 50 0001 C CNN 169 | 1 6950 3750 170 | 1 0 0 -1 171 | $EndComp 172 | $Comp 173 | L Device:C C? 174 | U 1 1 632C2DDF 175 | P 6950 3600 176 | AR Path="/63347CD9/632C2DDF" Ref="C?" Part="1" 177 | AR Path="/63451ACA/632C2DDF" Ref="C?" Part="1" 178 | AR Path="/63451D42/632C2DDF" Ref="C?" Part="1" 179 | AR Path="/632C2DDF" Ref="C?" Part="1" 180 | AR Path="/62BEEC4C/632C2DDF" Ref="C106" Part="1" 181 | F 0 "C106" H 6835 3554 50 0000 R CNN 182 | F 1 "0.1uF" H 6835 3645 50 0000 R CNN 183 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6988 3450 50 0001 C CNN 184 | F 3 "~" H 6950 3600 50 0001 C CNN 185 | 1 6950 3600 186 | 1 0 0 -1 187 | $EndComp 188 | $Comp 189 | L power:+3.3V #PWR0241 190 | U 1 1 632C2DE5 191 | P 6950 3450 192 | F 0 "#PWR0241" H 6950 3300 50 0001 C CNN 193 | F 1 "+3.3V" H 6965 3623 50 0000 C CNN 194 | F 2 "" H 6950 3450 50 0001 C CNN 195 | F 3 "" H 6950 3450 50 0001 C CNN 196 | 1 6950 3450 197 | 1 0 0 -1 198 | $EndComp 199 | $EndSCHEMATC 200 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/phase.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 6 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:L L? 18 | U 1 1 6334A6F7 19 | P 5400 4450 20 | AR Path="/6334A6F7" Ref="L?" Part="1" 21 | AR Path="/63347CD9/6334A6F7" Ref="L1" Part="1" 22 | AR Path="/63451ACA/6334A6F7" Ref="L4" Part="1" 23 | AR Path="/63451D42/6334A6F7" Ref="L3" Part="1" 24 | F 0 "L3" H 5453 4496 50 0000 L CNN 25 | F 1 "L" H 5453 4405 50 0000 L CNN 26 | F 2 "linear actuator:L_10x7_H10" H 5400 4450 50 0001 C CNN 27 | F 3 "~" H 5400 4450 50 0001 C CNN 28 | 1 5400 4450 29 | 0 -1 -1 0 30 | $EndComp 31 | $Comp 32 | L power:VBUS #PWR044 33 | U 1 1 6334CCC6 34 | P 5250 4250 35 | AR Path="/63347CD9/6334CCC6" Ref="#PWR044" Part="1" 36 | AR Path="/63451ACA/6334CCC6" Ref="#PWR0230" Part="1" 37 | AR Path="/63451D42/6334CCC6" Ref="#PWR0220" Part="1" 38 | F 0 "#PWR0230" H 5250 4100 50 0001 C CNN 39 | F 1 "VBUS" V 5265 4378 50 0000 L CNN 40 | F 2 "" H 5250 4250 50 0001 C CNN 41 | F 3 "" H 5250 4250 50 0001 C CNN 42 | 1 5250 4250 43 | 0 1 1 0 44 | $EndComp 45 | $Comp 46 | L power:GND #PWR041 47 | U 1 1 6334DC43 48 | P 4750 4850 49 | AR Path="/63347CD9/6334DC43" Ref="#PWR041" Part="1" 50 | AR Path="/63451ACA/6334DC43" Ref="#PWR0227" Part="1" 51 | AR Path="/63451D42/6334DC43" Ref="#PWR0217" Part="1" 52 | F 0 "#PWR0227" H 4750 4600 50 0001 C CNN 53 | F 1 "GND" H 4755 4677 50 0000 C CNN 54 | F 2 "" H 4750 4850 50 0001 C CNN 55 | F 3 "" H 4750 4850 50 0001 C CNN 56 | 1 4750 4850 57 | 1 0 0 -1 58 | $EndComp 59 | $Comp 60 | L Device:C C16 61 | U 1 1 63370015 62 | P 5450 5200 63 | AR Path="/63347CD9/63370015" Ref="C16" Part="1" 64 | AR Path="/63451ACA/63370015" Ref="C119" Part="1" 65 | AR Path="/63451D42/63370015" Ref="C111" Part="1" 66 | F 0 "C111" H 5335 5154 50 0000 R CNN 67 | F 1 "0.1uF" H 5335 5245 50 0000 R CNN 68 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5488 5050 50 0001 C CNN 69 | F 3 "~" H 5450 5200 50 0001 C CNN 70 | 1 5450 5200 71 | -1 0 0 1 72 | $EndComp 73 | $Comp 74 | L power:VBUS #PWR045 75 | U 1 1 63370D22 76 | P 5750 5050 77 | AR Path="/63347CD9/63370D22" Ref="#PWR045" Part="1" 78 | AR Path="/63451ACA/63370D22" Ref="#PWR0231" Part="1" 79 | AR Path="/63451D42/63370D22" Ref="#PWR0221" Part="1" 80 | F 0 "#PWR0231" H 5750 4900 50 0001 C CNN 81 | F 1 "VBUS" V 5765 5178 50 0000 L CNN 82 | F 2 "" H 5750 5050 50 0001 C CNN 83 | F 3 "" H 5750 5050 50 0001 C CNN 84 | 1 5750 5050 85 | 1 0 0 -1 86 | $EndComp 87 | $Comp 88 | L power:GND #PWR046 89 | U 1 1 63372BC8 90 | P 5750 5350 91 | AR Path="/63347CD9/63372BC8" Ref="#PWR046" Part="1" 92 | AR Path="/63451ACA/63372BC8" Ref="#PWR0232" Part="1" 93 | AR Path="/63451D42/63372BC8" Ref="#PWR0222" Part="1" 94 | F 0 "#PWR0232" H 5750 5100 50 0001 C CNN 95 | F 1 "GND" H 5755 5177 50 0000 C CNN 96 | F 2 "" H 5750 5350 50 0001 C CNN 97 | F 3 "" H 5750 5350 50 0001 C CNN 98 | 1 5750 5350 99 | 1 0 0 -1 100 | $EndComp 101 | Wire Wire Line 102 | 5450 5050 5750 5050 103 | Wire Wire Line 104 | 5750 5350 5450 5350 105 | $Comp 106 | L Device:C C14 107 | U 1 1 633885F4 108 | P 4900 3000 109 | AR Path="/63347CD9/633885F4" Ref="C14" Part="1" 110 | AR Path="/63451ACA/633885F4" Ref="C117" Part="1" 111 | AR Path="/63451D42/633885F4" Ref="C109" Part="1" 112 | F 0 "C109" V 4648 3000 50 0000 C CNN 113 | F 1 "1uF" V 4739 3000 50 0000 C CNN 114 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4938 2850 50 0001 C CNN 115 | F 3 "~" H 4900 3000 50 0001 C CNN 116 | 1 4900 3000 117 | -1 0 0 1 118 | $EndComp 119 | $Comp 120 | L Device:C C13 121 | U 1 1 6338913B 122 | P 4450 3150 123 | AR Path="/63347CD9/6338913B" Ref="C13" Part="1" 124 | AR Path="/63451ACA/6338913B" Ref="C116" Part="1" 125 | AR Path="/63451D42/6338913B" Ref="C108" Part="1" 126 | F 0 "C108" V 4198 3150 50 0000 C CNN 127 | F 1 "1uF" V 4289 3150 50 0000 C CNN 128 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4488 3000 50 0001 C CNN 129 | F 3 "~" H 4450 3150 50 0001 C CNN 130 | 1 4450 3150 131 | 0 1 1 0 132 | $EndComp 133 | $Comp 134 | L Device:R R15 135 | U 1 1 633899E8 136 | P 4750 3150 137 | AR Path="/63347CD9/633899E8" Ref="R15" Part="1" 138 | AR Path="/63451ACA/633899E8" Ref="R40" Part="1" 139 | AR Path="/63451D42/633899E8" Ref="R36" Part="1" 140 | F 0 "R36" V 4543 3150 50 0000 C CNN 141 | F 1 "2R" V 4634 3150 50 0000 C CNN 142 | F 2 "Resistor_SMD:R_0402_1005Metric" V 4680 3150 50 0001 C CNN 143 | F 3 "~" H 4750 3150 50 0001 C CNN 144 | 1 4750 3150 145 | 0 1 1 0 146 | $EndComp 147 | $Comp 148 | L power:+5V #PWR043 149 | U 1 1 6338CA4E 150 | P 4900 3150 151 | AR Path="/63347CD9/6338CA4E" Ref="#PWR043" Part="1" 152 | AR Path="/63451ACA/6338CA4E" Ref="#PWR0229" Part="1" 153 | AR Path="/63451D42/6338CA4E" Ref="#PWR0219" Part="1" 154 | F 0 "#PWR0229" H 4900 3000 50 0001 C CNN 155 | F 1 "+5V" H 4915 3323 50 0000 C CNN 156 | F 2 "" H 4900 3150 50 0001 C CNN 157 | F 3 "" H 4900 3150 50 0001 C CNN 158 | 1 4900 3150 159 | 0 1 1 0 160 | $EndComp 161 | $Comp 162 | L Device:R R16 163 | U 1 1 6338FDDE 164 | P 5400 3650 165 | AR Path="/63347CD9/6338FDDE" Ref="R16" Part="1" 166 | AR Path="/63451ACA/6338FDDE" Ref="R41" Part="1" 167 | AR Path="/63451D42/6338FDDE" Ref="R37" Part="1" 168 | F 0 "R37" V 5193 3650 50 0000 C CNN 169 | F 1 "2R" V 5284 3650 50 0000 C CNN 170 | F 2 "Resistor_SMD:R_0402_1005Metric" V 5330 3650 50 0001 C CNN 171 | F 3 "~" H 5400 3650 50 0001 C CNN 172 | 1 5400 3650 173 | 0 1 1 0 174 | $EndComp 175 | Text HLabel 5550 4450 2 50 Input ~ 0 176 | MOTOR 177 | Text HLabel 4200 4150 0 50 Input ~ 0 178 | PWM 179 | Text HLabel 4200 4050 0 50 Input ~ 0 180 | EN 181 | Wire Wire Line 182 | 4900 3150 4900 3450 183 | Wire Wire Line 184 | 4600 3150 4600 3450 185 | Wire Wire Line 186 | 4600 3450 4700 3450 187 | Connection ~ 4900 3150 188 | Connection ~ 4600 3150 189 | $Comp 190 | L power:GND #PWR042 191 | U 1 1 6452C215 192 | P 4900 2850 193 | AR Path="/63347CD9/6452C215" Ref="#PWR042" Part="1" 194 | AR Path="/63451ACA/6452C215" Ref="#PWR0228" Part="1" 195 | AR Path="/63451D42/6452C215" Ref="#PWR0218" Part="1" 196 | F 0 "#PWR0228" H 4900 2600 50 0001 C CNN 197 | F 1 "GND" H 4905 2677 50 0000 C CNN 198 | F 2 "" H 4900 2850 50 0001 C CNN 199 | F 3 "" H 4900 2850 50 0001 C CNN 200 | 1 4900 2850 201 | -1 0 0 1 202 | $EndComp 203 | $Comp 204 | L linear~actuator:FDMF3170 U2 205 | U 1 1 62C9295A 206 | P 4750 4100 207 | AR Path="/63347CD9/62C9295A" Ref="U2" Part="1" 208 | AR Path="/63451ACA/62C9295A" Ref="U10" Part="1" 209 | AR Path="/63451D42/62C9295A" Ref="U9" Part="1" 210 | F 0 "U9" H 4725 4931 50 0000 C CNN 211 | F 1 "FDMF3170" H 4725 4840 50 0000 C CNN 212 | F 2 "linear actuator:QFN-40_5x6_Pitch0.45mm" H 4800 3100 50 0001 C CNN 213 | F 3 "" H 4800 3100 50 0001 C CNN 214 | 1 4750 4100 215 | 1 0 0 -1 216 | $EndComp 217 | Wire Wire Line 218 | 4800 4850 4750 4850 219 | Connection ~ 4750 4850 220 | Wire Wire Line 221 | 4750 4850 4700 4850 222 | Wire Wire Line 223 | 4900 3450 4800 3450 224 | Text HLabel 4200 4350 0 50 Input ~ 0 225 | TMON 226 | Text HLabel 3000 5200 0 50 Input ~ 0 227 | IMON 228 | Wire Wire Line 229 | 4200 3650 4200 3150 230 | Wire Wire Line 231 | 4200 3150 4300 3150 232 | $Comp 233 | L power:GND #PWR040 234 | U 1 1 62CDD524 235 | P 4200 3150 236 | AR Path="/63347CD9/62CDD524" Ref="#PWR040" Part="1" 237 | AR Path="/63451ACA/62CDD524" Ref="#PWR0226" Part="1" 238 | AR Path="/63451D42/62CDD524" Ref="#PWR0216" Part="1" 239 | F 0 "#PWR0226" H 4200 2900 50 0001 C CNN 240 | F 1 "GND" H 4205 2977 50 0000 C CNN 241 | F 2 "" H 4200 3150 50 0001 C CNN 242 | F 3 "" H 4200 3150 50 0001 C CNN 243 | 1 4200 3150 244 | -1 0 0 1 245 | $EndComp 246 | $Comp 247 | L Device:C C15 248 | U 1 1 62CE00CD 249 | P 5400 4050 250 | AR Path="/63347CD9/62CE00CD" Ref="C15" Part="1" 251 | AR Path="/63451ACA/62CE00CD" Ref="C118" Part="1" 252 | AR Path="/63451D42/62CE00CD" Ref="C110" Part="1" 253 | F 0 "C110" V 5148 4050 50 0000 C CNN 254 | F 1 "220nF" V 5239 4050 50 0000 C CNN 255 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5438 3900 50 0001 C CNN 256 | F 3 "~" H 5400 4050 50 0001 C CNN 257 | 1 5400 4050 258 | 0 1 1 0 259 | $EndComp 260 | Wire Wire Line 261 | 4000 4550 4200 4550 262 | Wire Wire Line 263 | 4000 4650 4200 4650 264 | Text Label 4000 4550 0 50 ~ 0 265 | IMON 266 | Text Label 4000 4650 0 50 ~ 0 267 | REF 268 | Wire Wire Line 269 | 5550 3650 5550 4050 270 | $Comp 271 | L Device:R R14 272 | U 1 1 62D1C811 273 | P 3400 5350 274 | AR Path="/63347CD9/62D1C811" Ref="R14" Part="1" 275 | AR Path="/63451ACA/62D1C811" Ref="R39" Part="1" 276 | AR Path="/63451D42/62D1C811" Ref="R35" Part="1" 277 | F 0 "R35" H 3470 5396 50 0000 L CNN 278 | F 1 "1K" H 3470 5305 50 0000 L CNN 279 | F 2 "Resistor_SMD:R_0402_1005Metric" V 3330 5350 50 0001 C CNN 280 | F 3 "~" H 3400 5350 50 0001 C CNN 281 | 1 3400 5350 282 | 1 0 0 -1 283 | $EndComp 284 | $Comp 285 | L Device:C C12 286 | U 1 1 62D216B1 287 | P 3400 5650 288 | AR Path="/63347CD9/62D216B1" Ref="C12" Part="1" 289 | AR Path="/63451ACA/62D216B1" Ref="C115" Part="1" 290 | AR Path="/63451D42/62D216B1" Ref="C107" Part="1" 291 | F 0 "C107" H 3515 5696 50 0000 L CNN 292 | F 1 "1uF" H 3515 5605 50 0000 L CNN 293 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3438 5500 50 0001 C CNN 294 | F 3 "~" H 3400 5650 50 0001 C CNN 295 | 1 3400 5650 296 | 1 0 0 -1 297 | $EndComp 298 | $Comp 299 | L power:GND #PWR039 300 | U 1 1 62D26889 301 | P 3400 5800 302 | AR Path="/63347CD9/62D26889" Ref="#PWR039" Part="1" 303 | AR Path="/63451ACA/62D26889" Ref="#PWR0225" Part="1" 304 | AR Path="/63451D42/62D26889" Ref="#PWR0215" Part="1" 305 | F 0 "#PWR0225" H 3400 5550 50 0001 C CNN 306 | F 1 "GND" H 3405 5627 50 0000 C CNN 307 | F 2 "" H 3400 5800 50 0001 C CNN 308 | F 3 "" H 3400 5800 50 0001 C CNN 309 | 1 3400 5800 310 | 1 0 0 -1 311 | $EndComp 312 | Text Label 3550 5200 0 50 ~ 0 313 | IMON 314 | Text Label 3600 5500 0 50 ~ 0 315 | REF 316 | Connection ~ 3400 5500 317 | Wire Wire Line 318 | 3400 5200 3750 5200 319 | Wire Wire Line 320 | 3400 5500 3750 5500 321 | $Comp 322 | L power:+1V2 #PWR0213 323 | U 1 1 6315F291 324 | P 3000 5500 325 | AR Path="/63451D42/6315F291" Ref="#PWR0213" Part="1" 326 | AR Path="/63347CD9/6315F291" Ref="#PWR037" Part="1" 327 | AR Path="/63451ACA/6315F291" Ref="#PWR0223" Part="1" 328 | F 0 "#PWR0223" H 3000 5350 50 0001 C CNN 329 | F 1 "+1V2" V 3015 5628 50 0000 L CNN 330 | F 2 "" H 3000 5500 50 0001 C CNN 331 | F 3 "" H 3000 5500 50 0001 C CNN 332 | 1 3000 5500 333 | 0 -1 -1 0 334 | $EndComp 335 | $Comp 336 | L Device:C C10 337 | U 1 1 6316A95C 338 | P 3000 5350 339 | AR Path="/63347CD9/6316A95C" Ref="C10" Part="1" 340 | AR Path="/63451ACA/6316A95C" Ref="C113" Part="1" 341 | AR Path="/63451D42/6316A95C" Ref="C105" Part="1" 342 | F 0 "C105" H 3115 5396 50 0000 L CNN 343 | F 1 "22pF" H 3115 5305 50 0000 L CNN 344 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3038 5200 50 0001 C CNN 345 | F 3 "~" H 3000 5350 50 0001 C CNN 346 | 1 3000 5350 347 | 1 0 0 -1 348 | $EndComp 349 | Wire Wire Line 350 | 3400 5200 3000 5200 351 | Connection ~ 3400 5200 352 | Wire Wire Line 353 | 3000 5500 3400 5500 354 | Connection ~ 3000 5500 355 | $Comp 356 | L Device:C C17 357 | U 1 1 62DC28DE 358 | P 5750 5200 359 | AR Path="/63347CD9/62DC28DE" Ref="C17" Part="1" 360 | AR Path="/63451ACA/62DC28DE" Ref="C120" Part="1" 361 | AR Path="/63451D42/62DC28DE" Ref="C112" Part="1" 362 | F 0 "C112" H 5635 5154 50 0000 R CNN 363 | F 1 "1uF" H 5635 5245 50 0000 R CNN 364 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5788 5050 50 0001 C CNN 365 | F 3 "~" H 5750 5200 50 0001 C CNN 366 | 1 5750 5200 367 | -1 0 0 1 368 | $EndComp 369 | $EndSCHEMATC 370 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/phase.sch-bak: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:L L? 18 | U 1 1 6334A6F7 19 | P 5400 4450 20 | AR Path="/6334A6F7" Ref="L?" Part="1" 21 | AR Path="/63347CD9/6334A6F7" Ref="L1" Part="1" 22 | AR Path="/63451ACA/6334A6F7" Ref="L4" Part="1" 23 | AR Path="/63451D42/6334A6F7" Ref="L3" Part="1" 24 | F 0 "L1" H 5453 4496 50 0000 L CNN 25 | F 1 "L" H 5453 4405 50 0000 L CNN 26 | F 2 "linear actuator:L_10x7_H10" H 5400 4450 50 0001 C CNN 27 | F 3 "~" H 5400 4450 50 0001 C CNN 28 | 1 5400 4450 29 | 0 -1 -1 0 30 | $EndComp 31 | $Comp 32 | L power:VBUS #PWR044 33 | U 1 1 6334CCC6 34 | P 5250 4250 35 | AR Path="/63347CD9/6334CCC6" Ref="#PWR044" Part="1" 36 | AR Path="/63451ACA/6334CCC6" Ref="#PWR0230" Part="1" 37 | AR Path="/63451D42/6334CCC6" Ref="#PWR0220" Part="1" 38 | F 0 "#PWR0230" H 5250 4100 50 0001 C CNN 39 | F 1 "VBUS" V 5265 4378 50 0000 L CNN 40 | F 2 "" H 5250 4250 50 0001 C CNN 41 | F 3 "" H 5250 4250 50 0001 C CNN 42 | 1 5250 4250 43 | 0 1 1 0 44 | $EndComp 45 | $Comp 46 | L power:GND #PWR041 47 | U 1 1 6334DC43 48 | P 4750 4850 49 | AR Path="/63347CD9/6334DC43" Ref="#PWR041" Part="1" 50 | AR Path="/63451ACA/6334DC43" Ref="#PWR0227" Part="1" 51 | AR Path="/63451D42/6334DC43" Ref="#PWR0217" Part="1" 52 | F 0 "#PWR0227" H 4750 4600 50 0001 C CNN 53 | F 1 "GND" H 4755 4677 50 0000 C CNN 54 | F 2 "" H 4750 4850 50 0001 C CNN 55 | F 3 "" H 4750 4850 50 0001 C CNN 56 | 1 4750 4850 57 | 1 0 0 -1 58 | $EndComp 59 | $Comp 60 | L Device:C C16 61 | U 1 1 63370015 62 | P 5450 5200 63 | AR Path="/63347CD9/63370015" Ref="C16" Part="1" 64 | AR Path="/63451ACA/63370015" Ref="C119" Part="1" 65 | AR Path="/63451D42/63370015" Ref="C111" Part="1" 66 | F 0 "C16" H 5335 5154 50 0000 R CNN 67 | F 1 "0.1uF" H 5335 5245 50 0000 R CNN 68 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5488 5050 50 0001 C CNN 69 | F 3 "~" H 5450 5200 50 0001 C CNN 70 | 1 5450 5200 71 | -1 0 0 1 72 | $EndComp 73 | $Comp 74 | L power:VBUS #PWR045 75 | U 1 1 63370D22 76 | P 5750 5050 77 | AR Path="/63347CD9/63370D22" Ref="#PWR045" Part="1" 78 | AR Path="/63451ACA/63370D22" Ref="#PWR0231" Part="1" 79 | AR Path="/63451D42/63370D22" Ref="#PWR0221" Part="1" 80 | F 0 "#PWR0231" H 5750 4900 50 0001 C CNN 81 | F 1 "VBUS" V 5765 5178 50 0000 L CNN 82 | F 2 "" H 5750 5050 50 0001 C CNN 83 | F 3 "" H 5750 5050 50 0001 C CNN 84 | 1 5750 5050 85 | 1 0 0 -1 86 | $EndComp 87 | $Comp 88 | L power:GND #PWR046 89 | U 1 1 63372BC8 90 | P 5750 5350 91 | AR Path="/63347CD9/63372BC8" Ref="#PWR046" Part="1" 92 | AR Path="/63451ACA/63372BC8" Ref="#PWR0232" Part="1" 93 | AR Path="/63451D42/63372BC8" Ref="#PWR0222" Part="1" 94 | F 0 "#PWR0232" H 5750 5100 50 0001 C CNN 95 | F 1 "GND" H 5755 5177 50 0000 C CNN 96 | F 2 "" H 5750 5350 50 0001 C CNN 97 | F 3 "" H 5750 5350 50 0001 C CNN 98 | 1 5750 5350 99 | 1 0 0 -1 100 | $EndComp 101 | Wire Wire Line 102 | 5450 5050 5750 5050 103 | Wire Wire Line 104 | 5750 5350 5450 5350 105 | $Comp 106 | L Device:C C14 107 | U 1 1 633885F4 108 | P 4900 3000 109 | AR Path="/63347CD9/633885F4" Ref="C14" Part="1" 110 | AR Path="/63451ACA/633885F4" Ref="C117" Part="1" 111 | AR Path="/63451D42/633885F4" Ref="C109" Part="1" 112 | F 0 "C14" V 4648 3000 50 0000 C CNN 113 | F 1 "1uF" V 4739 3000 50 0000 C CNN 114 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4938 2850 50 0001 C CNN 115 | F 3 "~" H 4900 3000 50 0001 C CNN 116 | 1 4900 3000 117 | -1 0 0 1 118 | $EndComp 119 | $Comp 120 | L Device:C C13 121 | U 1 1 6338913B 122 | P 4450 3150 123 | AR Path="/63347CD9/6338913B" Ref="C13" Part="1" 124 | AR Path="/63451ACA/6338913B" Ref="C116" Part="1" 125 | AR Path="/63451D42/6338913B" Ref="C108" Part="1" 126 | F 0 "C13" V 4198 3150 50 0000 C CNN 127 | F 1 "1uF" V 4289 3150 50 0000 C CNN 128 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4488 3000 50 0001 C CNN 129 | F 3 "~" H 4450 3150 50 0001 C CNN 130 | 1 4450 3150 131 | 0 1 1 0 132 | $EndComp 133 | $Comp 134 | L Device:R R15 135 | U 1 1 633899E8 136 | P 4750 3150 137 | AR Path="/63347CD9/633899E8" Ref="R15" Part="1" 138 | AR Path="/63451ACA/633899E8" Ref="R40" Part="1" 139 | AR Path="/63451D42/633899E8" Ref="R36" Part="1" 140 | F 0 "R15" V 4543 3150 50 0000 C CNN 141 | F 1 "2R" V 4634 3150 50 0000 C CNN 142 | F 2 "Resistor_SMD:R_0402_1005Metric" V 4680 3150 50 0001 C CNN 143 | F 3 "~" H 4750 3150 50 0001 C CNN 144 | 1 4750 3150 145 | 0 1 1 0 146 | $EndComp 147 | $Comp 148 | L power:+5V #PWR043 149 | U 1 1 6338CA4E 150 | P 4900 3150 151 | AR Path="/63347CD9/6338CA4E" Ref="#PWR043" Part="1" 152 | AR Path="/63451ACA/6338CA4E" Ref="#PWR0229" Part="1" 153 | AR Path="/63451D42/6338CA4E" Ref="#PWR0219" Part="1" 154 | F 0 "#PWR0229" H 4900 3000 50 0001 C CNN 155 | F 1 "+5V" H 4915 3323 50 0000 C CNN 156 | F 2 "" H 4900 3150 50 0001 C CNN 157 | F 3 "" H 4900 3150 50 0001 C CNN 158 | 1 4900 3150 159 | 0 1 1 0 160 | $EndComp 161 | $Comp 162 | L Device:R R16 163 | U 1 1 6338FDDE 164 | P 5400 3650 165 | AR Path="/63347CD9/6338FDDE" Ref="R16" Part="1" 166 | AR Path="/63451ACA/6338FDDE" Ref="R41" Part="1" 167 | AR Path="/63451D42/6338FDDE" Ref="R37" Part="1" 168 | F 0 "R16" V 5193 3650 50 0000 C CNN 169 | F 1 "2R" V 5284 3650 50 0000 C CNN 170 | F 2 "Resistor_SMD:R_0402_1005Metric" V 5330 3650 50 0001 C CNN 171 | F 3 "~" H 5400 3650 50 0001 C CNN 172 | 1 5400 3650 173 | 0 1 1 0 174 | $EndComp 175 | Text HLabel 5550 4450 2 50 Input ~ 0 176 | MOTOR 177 | Text HLabel 4200 4150 0 50 Input ~ 0 178 | PWM 179 | Text HLabel 4200 4050 0 50 Input ~ 0 180 | EN 181 | Wire Wire Line 182 | 4900 3150 4900 3450 183 | Wire Wire Line 184 | 4600 3150 4600 3450 185 | Wire Wire Line 186 | 4600 3450 4700 3450 187 | Connection ~ 4900 3150 188 | Connection ~ 4600 3150 189 | $Comp 190 | L power:GND #PWR042 191 | U 1 1 6452C215 192 | P 4900 2850 193 | AR Path="/63347CD9/6452C215" Ref="#PWR042" Part="1" 194 | AR Path="/63451ACA/6452C215" Ref="#PWR0228" Part="1" 195 | AR Path="/63451D42/6452C215" Ref="#PWR0218" Part="1" 196 | F 0 "#PWR0228" H 4900 2600 50 0001 C CNN 197 | F 1 "GND" H 4905 2677 50 0000 C CNN 198 | F 2 "" H 4900 2850 50 0001 C CNN 199 | F 3 "" H 4900 2850 50 0001 C CNN 200 | 1 4900 2850 201 | -1 0 0 1 202 | $EndComp 203 | $Comp 204 | L linear~actuator:FDMF3170 U2 205 | U 1 1 62C9295A 206 | P 4750 4100 207 | AR Path="/63347CD9/62C9295A" Ref="U2" Part="1" 208 | AR Path="/63451ACA/62C9295A" Ref="U10" Part="1" 209 | AR Path="/63451D42/62C9295A" Ref="U9" Part="1" 210 | F 0 "U2" H 4725 4931 50 0000 C CNN 211 | F 1 "FDMF3170" H 4725 4840 50 0000 C CNN 212 | F 2 "linear actuator:QFN-40_5x6_Pitch0.45mm" H 4800 3100 50 0001 C CNN 213 | F 3 "" H 4800 3100 50 0001 C CNN 214 | 1 4750 4100 215 | 1 0 0 -1 216 | $EndComp 217 | Wire Wire Line 218 | 4800 4850 4750 4850 219 | Connection ~ 4750 4850 220 | Wire Wire Line 221 | 4750 4850 4700 4850 222 | Wire Wire Line 223 | 4900 3450 4800 3450 224 | Text HLabel 4200 4350 0 50 Input ~ 0 225 | TMON 226 | Text HLabel 3000 5200 0 50 Input ~ 0 227 | IMON 228 | Wire Wire Line 229 | 4200 3650 4200 3150 230 | Wire Wire Line 231 | 4200 3150 4300 3150 232 | $Comp 233 | L power:GND #PWR040 234 | U 1 1 62CDD524 235 | P 4200 3150 236 | AR Path="/63347CD9/62CDD524" Ref="#PWR040" Part="1" 237 | AR Path="/63451ACA/62CDD524" Ref="#PWR0226" Part="1" 238 | AR Path="/63451D42/62CDD524" Ref="#PWR0216" Part="1" 239 | F 0 "#PWR0226" H 4200 2900 50 0001 C CNN 240 | F 1 "GND" H 4205 2977 50 0000 C CNN 241 | F 2 "" H 4200 3150 50 0001 C CNN 242 | F 3 "" H 4200 3150 50 0001 C CNN 243 | 1 4200 3150 244 | -1 0 0 1 245 | $EndComp 246 | $Comp 247 | L Device:C C15 248 | U 1 1 62CE00CD 249 | P 5400 4050 250 | AR Path="/63347CD9/62CE00CD" Ref="C15" Part="1" 251 | AR Path="/63451ACA/62CE00CD" Ref="C118" Part="1" 252 | AR Path="/63451D42/62CE00CD" Ref="C110" Part="1" 253 | F 0 "C15" V 5148 4050 50 0000 C CNN 254 | F 1 "220nF" V 5239 4050 50 0000 C CNN 255 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5438 3900 50 0001 C CNN 256 | F 3 "~" H 5400 4050 50 0001 C CNN 257 | 1 5400 4050 258 | 0 1 1 0 259 | $EndComp 260 | Wire Wire Line 261 | 4000 4550 4200 4550 262 | Wire Wire Line 263 | 4000 4650 4200 4650 264 | Text Label 4000 4550 0 50 ~ 0 265 | IMON 266 | Text Label 4000 4650 0 50 ~ 0 267 | REF 268 | Wire Wire Line 269 | 5550 3650 5550 4050 270 | $Comp 271 | L Device:R R14 272 | U 1 1 62D1C811 273 | P 3400 5350 274 | AR Path="/63347CD9/62D1C811" Ref="R14" Part="1" 275 | AR Path="/63451ACA/62D1C811" Ref="R39" Part="1" 276 | AR Path="/63451D42/62D1C811" Ref="R35" Part="1" 277 | F 0 "R14" H 3470 5396 50 0000 L CNN 278 | F 1 "1K" H 3470 5305 50 0000 L CNN 279 | F 2 "Resistor_SMD:R_0402_1005Metric" V 3330 5350 50 0001 C CNN 280 | F 3 "~" H 3400 5350 50 0001 C CNN 281 | 1 3400 5350 282 | 1 0 0 -1 283 | $EndComp 284 | $Comp 285 | L Device:C C12 286 | U 1 1 62D216B1 287 | P 3400 5650 288 | AR Path="/63347CD9/62D216B1" Ref="C12" Part="1" 289 | AR Path="/63451ACA/62D216B1" Ref="C115" Part="1" 290 | AR Path="/63451D42/62D216B1" Ref="C107" Part="1" 291 | F 0 "C12" H 3515 5696 50 0000 L CNN 292 | F 1 "1uF" H 3515 5605 50 0000 L CNN 293 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3438 5500 50 0001 C CNN 294 | F 3 "~" H 3400 5650 50 0001 C CNN 295 | 1 3400 5650 296 | 1 0 0 -1 297 | $EndComp 298 | $Comp 299 | L power:GND #PWR039 300 | U 1 1 62D26889 301 | P 3400 5800 302 | AR Path="/63347CD9/62D26889" Ref="#PWR039" Part="1" 303 | AR Path="/63451ACA/62D26889" Ref="#PWR0225" Part="1" 304 | AR Path="/63451D42/62D26889" Ref="#PWR0215" Part="1" 305 | F 0 "#PWR0225" H 3400 5550 50 0001 C CNN 306 | F 1 "GND" H 3405 5627 50 0000 C CNN 307 | F 2 "" H 3400 5800 50 0001 C CNN 308 | F 3 "" H 3400 5800 50 0001 C CNN 309 | 1 3400 5800 310 | 1 0 0 -1 311 | $EndComp 312 | Text Label 3550 5200 0 50 ~ 0 313 | IMON 314 | Text Label 3600 5500 0 50 ~ 0 315 | REF 316 | Connection ~ 3400 5500 317 | Wire Wire Line 318 | 3400 5200 3750 5200 319 | Wire Wire Line 320 | 3400 5500 3750 5500 321 | $Comp 322 | L power:+1V2 #PWR0213 323 | U 1 1 6315F291 324 | P 3000 5500 325 | AR Path="/63451D42/6315F291" Ref="#PWR0213" Part="1" 326 | AR Path="/63347CD9/6315F291" Ref="#PWR037" Part="1" 327 | AR Path="/63451ACA/6315F291" Ref="#PWR0223" Part="1" 328 | F 0 "#PWR0223" H 3000 5350 50 0001 C CNN 329 | F 1 "+1V2" V 3015 5628 50 0000 L CNN 330 | F 2 "" H 3000 5500 50 0001 C CNN 331 | F 3 "" H 3000 5500 50 0001 C CNN 332 | 1 3000 5500 333 | 0 -1 -1 0 334 | $EndComp 335 | $Comp 336 | L Device:C C10 337 | U 1 1 6316A95C 338 | P 3000 5350 339 | AR Path="/63347CD9/6316A95C" Ref="C10" Part="1" 340 | AR Path="/63451ACA/6316A95C" Ref="C113" Part="1" 341 | AR Path="/63451D42/6316A95C" Ref="C105" Part="1" 342 | F 0 "C10" H 3115 5396 50 0000 L CNN 343 | F 1 "22pF" H 3115 5305 50 0000 L CNN 344 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3038 5200 50 0001 C CNN 345 | F 3 "~" H 3000 5350 50 0001 C CNN 346 | 1 3000 5350 347 | 1 0 0 -1 348 | $EndComp 349 | Wire Wire Line 350 | 3400 5200 3000 5200 351 | Connection ~ 3400 5200 352 | Wire Wire Line 353 | 3000 5500 3400 5500 354 | Connection ~ 3000 5500 355 | $Comp 356 | L Device:C C17 357 | U 1 1 62DC28DE 358 | P 5750 5200 359 | AR Path="/63347CD9/62DC28DE" Ref="C17" Part="1" 360 | AR Path="/63451ACA/62DC28DE" Ref="C120" Part="1" 361 | AR Path="/63451D42/62DC28DE" Ref="C112" Part="1" 362 | F 0 "C17" H 5635 5154 50 0000 R CNN 363 | F 1 "1uF" H 5635 5245 50 0000 R CNN 364 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5788 5050 50 0001 C CNN 365 | F 3 "~" H 5750 5200 50 0001 C CNN 366 | 1 5750 5200 367 | -1 0 0 1 368 | $EndComp 369 | $EndSCHEMATC 370 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 2/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name "linear actuator")(type Legacy)(uri "${KIPRJMOD}/linear actuator.lib")(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-08_215227.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-08_215227.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_221548.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_221548.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_222116.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_222116.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_223101.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_223101.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_224522.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_224522.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_225637.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/motor_pcb/linear actuator 3/linear actuator-backups/linear actuator-2022-08-16_225637.zip -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-job.gbrjob: -------------------------------------------------------------------------------- 1 | { 2 | "Header": 3 | { 4 | "GenerationSoftware": 5 | { 6 | "Vendor": "KiCad", 7 | "Application": "Pcbnew", 8 | "Version": "5.1.10" 9 | }, 10 | "CreationDate": "2022-03-14T20:48:02-07:00" 11 | }, 12 | "GeneralSpecs": 13 | { 14 | "ProjectId": 15 | { 16 | "Name": "linear actuator", 17 | "GUID": "6c696e65-6172-4206-9163-747561746f72", 18 | "Revision": "rev?" 19 | }, 20 | "Size": 21 | { 22 | "X": 100.050, 23 | "Y": 101.050 24 | }, 25 | "LayerNumber": 4, 26 | "BoardThickness": 1.600 27 | }, 28 | "DesignRules": 29 | [ 30 | { 31 | "Layers": "Outer", 32 | "PadToPad": 0.200, 33 | "PadToTrack": 0.200, 34 | "TrackToTrack": 0.200, 35 | "MinLineWidth": 0.250, 36 | "TrackToRegion": 0.200, 37 | "RegionToRegion": 0.200 38 | }, 39 | { 40 | "Layers": "Inner", 41 | "PadToPad": 0.200, 42 | "PadToTrack": 0.200, 43 | "TrackToTrack": 0.200, 44 | "MinLineWidth": 0.250, 45 | "TrackToRegion": 0.200, 46 | "RegionToRegion": 0.200 47 | } 48 | ], 49 | "FilesAttributes": 50 | [ 51 | { 52 | "Path": "linear actuator-F_Cu.gbr", 53 | "FileFunction": "Copper,L1,Top", 54 | "FilePolarity": "Positive" 55 | }, 56 | { 57 | "Path": "linear actuator-In1_Cu.gbr", 58 | "FileFunction": "Copper,L2,Inr", 59 | "FilePolarity": "Positive" 60 | }, 61 | { 62 | "Path": "linear actuator-In2_Cu.gbr", 63 | "FileFunction": "Copper,L3,Inr", 64 | "FilePolarity": "Positive" 65 | }, 66 | { 67 | "Path": "linear actuator-B_Cu.gbr", 68 | "FileFunction": "Copper,L4,Bot", 69 | "FilePolarity": "Positive" 70 | }, 71 | { 72 | "Path": "linear actuator-F_Paste.gbr", 73 | "FileFunction": "SolderPaste,Top", 74 | "FilePolarity": "Positive" 75 | }, 76 | { 77 | "Path": "linear actuator-B_Paste.gbr", 78 | "FileFunction": "SolderPaste,Bot", 79 | "FilePolarity": "Positive" 80 | }, 81 | { 82 | "Path": "linear actuator-F_SilkS.gbr", 83 | "FileFunction": "Legend,Top", 84 | "FilePolarity": "Positive" 85 | }, 86 | { 87 | "Path": "linear actuator-B_SilkS.gbr", 88 | "FileFunction": "Legend,Bot", 89 | "FilePolarity": "Positive" 90 | }, 91 | { 92 | "Path": "linear actuator-F_Mask.gbr", 93 | "FileFunction": "SolderMask,Top", 94 | "FilePolarity": "Negative" 95 | }, 96 | { 97 | "Path": "linear actuator-B_Mask.gbr", 98 | "FileFunction": "SolderMask,Bot", 99 | "FilePolarity": "Negative" 100 | }, 101 | { 102 | "Path": "linear actuator-Edge_Cuts.gbr", 103 | "FileFunction": "Profile", 104 | "FilePolarity": "Positive" 105 | } 106 | ], 107 | "MaterialStackup": 108 | [ 109 | { 110 | "Type": "Legend", 111 | "Notes": "Layer F.SilkS" 112 | }, 113 | { 114 | "Type": "SolderPaste", 115 | "Notes": "Layer F.Paste" 116 | }, 117 | { 118 | "Type": "SolderMask", 119 | "Notes": "Layer F.Mask" 120 | }, 121 | { 122 | "Type": "Copper", 123 | "Notes": "Layer F.Cu" 124 | }, 125 | { 126 | "Type": "Dielectric", 127 | "Material": "FR4", 128 | "Notes": "Layers L1/L2" 129 | }, 130 | { 131 | "Type": "Copper", 132 | "Notes": "Layer In1.Cu" 133 | }, 134 | { 135 | "Type": "Dielectric", 136 | "Material": "FR4", 137 | "Notes": "Layers L2/L3" 138 | }, 139 | { 140 | "Type": "Copper", 141 | "Notes": "Layer In2.Cu" 142 | }, 143 | { 144 | "Type": "Dielectric", 145 | "Material": "FR4", 146 | "Notes": "Layers L3/L4" 147 | }, 148 | { 149 | "Type": "Copper", 150 | "Notes": "Layer B.Cu" 151 | }, 152 | { 153 | "Type": "SolderMask", 154 | "Notes": "Layer B.Mask" 155 | }, 156 | { 157 | "Type": "SolderPaste", 158 | "Notes": "Layer B.Paste" 159 | }, 160 | { 161 | "Type": "Legend", 162 | "Notes": "Layer B.SilkS" 163 | } 164 | ] 165 | } 166 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator-top-pos.csv: -------------------------------------------------------------------------------- 1 | Ref,Val,Package,PosX,PosY,Rot,Side 2 | "L2","L","L_10.4x10.4_H4.8",137.000000,-93.650000,180.000000,top 3 | "L3","L","L_10.4x10.4_H4.8",123.500000,-93.650000,180.000000,top 4 | "L4","L","L_10.4x10.4_H4.8",110.250000,-93.650000,180.000000,top 5 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.csv: -------------------------------------------------------------------------------- 1 | "Id";"Designator";"Package";"Quantity";"Designation";"Supplier and ref"; 2 | 1;"C114,C11,C120,C112,C17,C9,C8,C7,C101,C98,C103,C107,C115,C12,C100,C99,C96,C95,C94,C27,C26,C108,C109,C116,C117,C13,C14,C1";"C_0402_1005Metric";28;"1uF";;; 3 | 2;"R13,R11,R8,R7,R35,R39,R14,R30,R6,R4";"R_0402_1005Metric";10;"1K";;; 4 | 3;"Q2,Q1";"SOT-23";2;"Q_NMOS_GSD";;; 5 | 4;"J7,J6";"PinHeader_1x02_P2.54mm_Vertical";2;"Conn_01x02_Male";;; 6 | 5;"C106,C104,C92,C111,C119,C16";"C_0402_1005Metric";6;"0.1uF";;; 7 | 6;"J2";"PinHeader_1x05_P2.54mm_Vertical";1;"Conn_01x05_Male";;; 8 | 7;"J5,J1";"PinHeader_1x04_P2.54mm_Vertical";2;"Conn_01x04_Male";;; 9 | 8;"J4";"Molex_Micro-Fit_3.0_43045-0212_2x01_P3.00mm_Vertical";1;"Conn_01x02_Male";;; 10 | 9;"L4,L3,L1";"L_10x7_H10";3;"L";;; 11 | 10;"R3";"R_0402_1005Metric";1;"1K5";;; 12 | 11;"C6,C91";"C_0603_1608Metric";2;"4.7uF";;; 13 | 12;"C5";"R_0402_1005Metric";1;"1uF";;; 14 | 13;"U5";"QFN-16_3x3_Pitch0.5mm";1;"QMC5883L";;; 15 | 14;"R15,R37,R36,R41,R40,R16";"R_0402_1005Metric";6;"2R";;; 16 | 15;"C42,C36";"C_0805_2012Metric";2;"22uF";;; 17 | 16;"U10,U9,U2";"QFN-40_5x6_Pitch0.45mm";3;"FDMF3170";;; 18 | 17;"U8";"SOT-23-6";1;"LMR16006YQ";;; 19 | 18;"U1";"LQFP-64_10x10mm_P0.5mm";1;"STM32F412RETx";;; 20 | 19;"U7,U6";"SOT-23";2;"APE8865N-33-HF-3";;; 21 | 20;"R12,R10";"R_0402_1005Metric";2;"2.2K";;; 22 | 21;"R33";"R_0402_1005Metric";1;"13K";;; 23 | 22;"R32";"R_0402_1005Metric";1;"68K";;; 24 | 23;"R31";"R_0402_1005Metric";1;"220R";;; 25 | 24;"R29";"R_0402_1005Metric";1;"4K7";;; 26 | 25;"R9,TH1,R5,R2,R1";"R_0402_1005Metric";5;"10K";;; 27 | 26;"L2";"L_1210_3225Metric";1;"10uH";;; 28 | 27;"D14,D16,D1";"D_SOD-123";3;"D";;; 29 | 28;"D15";"SOT-23";1;"TL432DBZ";;; 30 | 29;"C113,C105,C10";"C_0402_1005Metric";3;"22pF";;; 31 | 30;"C90";"C_0402_1005Metric";1;"0.22uF";;; 32 | 31;"C110,C118,C15";"C_0402_1005Metric";3;"220nF";;; 33 | 32;"C102,C2";"C_0402_1005Metric";2;"10nF";;; 34 | 33;"C97,C93,C45,C86,C89,C88,C74,C82,C85,C84,C87,C78,C81,C79,C83,C77,C75,C80,C70,C73,C76,C66,C69,C72,C71,C62,C65,C68,C67,C58,C61,C64,C63,C54,C57,C60,C59,C50,C53,C56,C55,C46,C49,C52,C51,C41,C48,C47,C37,C44,C43,C40,C39,C38,C35,C34,C33,C32,C31,C30,C29,C28";"C_0805_2012Metric";62;"4.7uF";;; 35 | 34;"NT1,NT3,NT2";"NetTie-2_SMD_Pad2.0mm";3;"Net-Tie_2";;; 36 | 35;"R28,R27,R26,R25,R24,R23,R22,R21";"R_0402_1005Metric";8;"220K";;; 37 | 36;"R20,R19,R18,R17";"R_0402_1005Metric";4;"300R";;; 38 | 37;"C25,C24,C23,C22,C21,C20,C19,C18";"C_0402_1005Metric";8;"6pF";;; 39 | 38;"C4,C3";"C_0402_1005Metric";2;"12pF";;; 40 | 39;"D10,D12,D6,D8,D13,D11,D9,D7";"D_0805_2012Metric";8;"D_Photo";;; 41 | 40;"Y1";"Crystal_SMD_3225-4Pin_3.2x2.5mm";1;"Crystal_GND24";;; 42 | 41;"U4,U3";"SOIC-14_3.9x8.7mm_P1.27mm";2;"OPA4340UA";;; 43 | 42;"MH4,MH3,MH2,MH1";"MountingHole_3.2mm_M3";4;"MountingHole";;; 44 | 43;"J3";"USB_Micro-B_Molex_47346-0001";1;"USB_B_Micro";;; 45 | 44;"D5,D4,D3,D2";"D_0603_1608Metric_Castellated";4;"LED";;; 46 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.kicad_prl: -------------------------------------------------------------------------------- 1 | { 2 | "board": { 3 | "active_layer": 0, 4 | "active_layer_preset": "All Layers", 5 | "auto_track_width": true, 6 | "hidden_nets": [], 7 | "high_contrast_mode": 1, 8 | "net_color_mode": 1, 9 | "opacity": { 10 | "pads": 1.0, 11 | "tracks": 1.0, 12 | "vias": 1.0, 13 | "zones": 0.6 14 | }, 15 | "ratsnest_display_mode": 0, 16 | "selection_filter": { 17 | "dimensions": true, 18 | "footprints": true, 19 | "graphics": true, 20 | "keepouts": true, 21 | "lockedItems": true, 22 | "otherItems": true, 23 | "pads": true, 24 | "text": true, 25 | "tracks": true, 26 | "vias": true, 27 | "zones": true 28 | }, 29 | "visible_items": [ 30 | 0, 31 | 1, 32 | 2, 33 | 3, 34 | 4, 35 | 5, 36 | 8, 37 | 9, 38 | 10, 39 | 11, 40 | 12, 41 | 13, 42 | 14, 43 | 15, 44 | 16, 45 | 17, 46 | 18, 47 | 19, 48 | 20, 49 | 21, 50 | 22, 51 | 23, 52 | 24, 53 | 25, 54 | 26, 55 | 27, 56 | 28, 57 | 29, 58 | 30, 59 | 32, 60 | 33, 61 | 34, 62 | 35, 63 | 36 64 | ], 65 | "visible_layers": "fffffff_ffffffff", 66 | "zone_display_mode": 0 67 | }, 68 | "meta": { 69 | "filename": "linear actuator.kicad_prl", 70 | "version": 3 71 | }, 72 | "project": { 73 | "files": [] 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # FDMF3170 5 | # 6 | DEF FDMF3170 U 0 40 Y Y 1 F N 7 | F0 "U" 50 -1000 50 H V C CNN 8 | F1 "FDMF3170" 0 900 50 H V C CNN 9 | F2 "" 50 -1000 50 H I C CNN 10 | F3 "" 50 -1000 50 H I C CNN 11 | DRAW 12 | S -450 550 400 -650 0 1 0 f 13 | X VOS 1 -550 350 100 R 50 50 1 1 I 14 | X SW 10 500 -350 100 L 50 50 1 1 I 15 | X AGND 2 50 -750 100 U 50 50 1 1 I 16 | X VIN 25 500 -150 100 L 50 50 1 1 I 17 | X VCC 3 50 650 100 D 50 50 1 1 I 18 | X VIN 30 500 -150 100 L 50 50 1 1 I N 19 | X PHASE 32 500 50 100 L 50 50 1 1 I 20 | X BOOT 33 500 450 100 L 50 50 1 1 I 21 | X PWM 34 -550 -50 100 R 50 50 1 1 I 22 | X EN 35 -550 50 100 R 50 50 1 1 I 23 | X TMON 36 -550 -250 100 R 50 50 1 1 I 24 | X IMON 38 -550 -450 100 R 50 50 1 1 I 25 | X REFIN 39 -550 -550 100 R 50 50 1 1 I 26 | X PVCC 4 -50 650 100 D 50 50 1 1 I 27 | X PGND 40 -550 450 100 R 50 50 1 1 I N 28 | X PGND 5 -550 450 100 R 50 50 1 1 I 29 | X GL 6 -550 250 100 R 50 50 1 1 I 30 | X PGND 7 -50 -750 100 U 50 50 1 1 I 31 | ENDDRAW 32 | ENDDEF 33 | # 34 | # NCP302155 35 | # 36 | DEF NCP302155 U 0 40 Y Y 1 F N 37 | F0 "U" 0 750 50 H V C CNN 38 | F1 "NCP302155" 0 -650 50 H V C CNN 39 | F2 "" 0 750 50 H I C CNN 40 | F3 "" 0 750 50 H I C CNN 41 | DRAW 42 | S -300 700 300 -600 0 1 0 N 43 | X PWM 1 -400 150 100 R 50 50 1 1 B 44 | X PGND 12 400 -550 100 L 50 50 1 1 B 45 | X VSW 16 400 50 100 L 50 50 1 1 B 46 | X SMOD# 2 -400 250 100 R 50 50 1 1 B 47 | X GL 27 400 -150 100 L 50 50 1 1 B 48 | X PGND 28 400 -450 100 L 50 50 1 1 B 49 | X VCCD 29 -400 650 100 R 50 50 1 1 B 50 | X VCC 3 -400 450 100 R 50 50 1 1 B 51 | X THWN 30 -400 -150 100 R 50 50 1 1 B 52 | X DISAB# 31 -400 50 100 R 50 50 1 1 B 53 | X AGND 32 -400 -450 100 R 50 50 1 1 B 54 | X GL 33 400 -250 100 L 50 50 1 1 B 55 | X CGND 4 -400 -550 100 R 50 50 1 1 B 56 | X BOOT 5 400 650 100 L 50 50 1 1 B 57 | X PHASE 7 400 550 100 L 50 50 1 1 B 58 | X VIN 8 400 350 100 L 50 50 1 1 B 59 | ENDDRAW 60 | ENDDEF 61 | # 62 | # QMC5883L 63 | # 64 | DEF QMC5883L U 0 40 Y Y 1 F N 65 | F0 "U" 0 -540 50 H V C CNN 66 | F1 "QMC5883L" 0 650 50 H V C CNN 67 | F2 "" 0 -540 50 H I C CNN 68 | F3 "" 0 -540 50 H I C CNN 69 | DRAW 70 | S -300 550 300 -450 0 1 0 f 71 | X SCL 1 -400 200 100 R 50 50 1 1 I 72 | X C1 10 400 -100 100 L 50 50 1 1 I 73 | X GND 11 -400 -400 100 R 50 50 1 1 W 74 | X SETC 12 400 100 100 L 50 50 1 1 I 75 | X VDDIO 13 -400 500 100 R 50 50 1 1 I 76 | X DRDY 15 -400 -100 100 R 50 50 1 1 I 77 | X SDA 16 -400 100 100 R 50 50 1 1 I 78 | X VDD 2 400 500 100 L 50 50 1 1 W 79 | X S1 4 -400 400 100 R 50 50 1 1 I 80 | X SETP 8 400 300 100 L 50 50 1 1 I 81 | X GND 9 -400 -300 100 R 50 50 1 1 W 82 | ENDDRAW 83 | ENDDEF 84 | # 85 | #End Library 86 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/L_10.4x10.4_H4.8.kicad_mod: -------------------------------------------------------------------------------- 1 | (module L_10.4x10.4_H4.8 (layer F.Cu) (tedit 5990349B) 2 | (descr "Choke, SMD, 10.4x10.4mm 4.8mm height") 3 | (tags "Choke SMD") 4 | (attr smd) 5 | (fp_text reference REF** (at 0 -6.35) (layer F.SilkS) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (fp_text value L_10.4x10.4_H4.8 (at 0 6.35) (layer F.Fab) 9 | (effects (font (size 1 1) (thickness 0.15))) 10 | ) 11 | (fp_line (start -5.2 5.2) (end 5.2 5.2) (layer F.Fab) (width 0.1)) 12 | (fp_line (start -5.2 -5.2) (end 5.2 -5.2) (layer F.Fab) (width 0.1)) 13 | (fp_line (start -5.2 5.2) (end -5.2 2.1) (layer F.Fab) (width 0.1)) 14 | (fp_line (start 5.2 5.2) (end 5.2 2.1) (layer F.Fab) (width 0.1)) 15 | (fp_line (start -5.2 -5.2) (end -5.2 -2.1) (layer F.Fab) (width 0.1)) 16 | (fp_line (start 5.2 -5.2) (end 5.2 -2.1) (layer F.Fab) (width 0.1)) 17 | (fp_line (start 5.75 -5.45) (end -5.75 -5.45) (layer F.CrtYd) (width 0.05)) 18 | (fp_line (start 5.75 5.45) (end 5.75 -5.45) (layer F.CrtYd) (width 0.05)) 19 | (fp_line (start -5.75 5.45) (end 5.75 5.45) (layer F.CrtYd) (width 0.05)) 20 | (fp_line (start -5.75 -5.45) (end -5.75 5.45) (layer F.CrtYd) (width 0.05)) 21 | (fp_line (start 5.3 -5.3) (end 5.3 -2.1) (layer F.SilkS) (width 0.12)) 22 | (fp_line (start -5.3 -5.3) (end 5.3 -5.3) (layer F.SilkS) (width 0.12)) 23 | (fp_line (start -5.3 -2.1) (end -5.3 -5.3) (layer F.SilkS) (width 0.12)) 24 | (fp_line (start -5.3 5.3) (end -5.3 2.1) (layer F.SilkS) (width 0.12)) 25 | (fp_line (start 5.3 5.3) (end -5.3 5.3) (layer F.SilkS) (width 0.12)) 26 | (fp_line (start 5.3 2.1) (end 5.3 5.3) (layer F.SilkS) (width 0.12)) 27 | (fp_text user %R (at 0 0) (layer F.Fab) 28 | (effects (font (size 1 1) (thickness 0.15))) 29 | ) 30 | (fp_arc (start 0 0) (end 3.17 3.17) (angle 90) (layer F.Fab) (width 0.1)) 31 | (fp_arc (start 0 0) (end -3.17 -3.17) (angle 90) (layer F.Fab) (width 0.1)) 32 | (pad 1 smd rect (at -4.15 0) (size 2.7 3.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 2 smd rect (at 4.15 0) (size 2.7 3.6) (layers F.Cu F.Paste F.Mask)) 34 | (model ${KISYS3DMOD}/Inductor_SMD.3dshapes/L_10.4x10.4_H4.8.wrl 35 | (at (xyz 0 0 0)) 36 | (scale (xyz 1 1 1)) 37 | (rotate (xyz 0 0 0)) 38 | ) 39 | ) 40 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/L_10x7_H10.kicad_mod: -------------------------------------------------------------------------------- 1 | (footprint "L_10x7_H10" (version 20211014) (generator pcbnew) 2 | (layer "F.Cu") 3 | (tedit 62BD43C7) 4 | (descr "Choke, SMD, 10.4x10.4mm 4.8mm height") 5 | (tags "Choke SMD") 6 | (attr smd) 7 | (fp_text reference "REF**" (at 0 -6.35) (layer "F.SilkS") 8 | (effects (font (size 1 1) (thickness 0.15))) 9 | (tstamp 99b7afeb-c90e-4055-9e3e-045f25ef35ee) 10 | ) 11 | (fp_text value "L_10x7_H10" (at 0 6.35) (layer "F.Fab") 12 | (effects (font (size 1 1) (thickness 0.15))) 13 | (tstamp cac449f4-227e-42fa-b393-71ddf6714a16) 14 | ) 15 | (fp_text user "${REFERENCE}" (at 0 0) (layer "F.Fab") 16 | (effects (font (size 1 1) (thickness 0.15))) 17 | (tstamp 3fa4e2ef-5aba-4543-be2c-053f6b5ced8f) 18 | ) 19 | (fp_line (start -5.3 3.6) (end -5.3 2.1) (layer "F.SilkS") (width 0.12) (tstamp 663ecc38-ebae-4afd-befd-f8005aa743bf)) 20 | (fp_line (start 5.3 2.1) (end 5.3 3.6) (layer "F.SilkS") (width 0.12) (tstamp 7bcd062f-796f-4875-bd63-726536eaf633)) 21 | (fp_line (start -5.3 -2.1) (end -5.3 -3.6) (layer "F.SilkS") (width 0.12) (tstamp f15c3060-3d68-4572-995f-dac335c0be97)) 22 | (fp_line (start 5.3 3.6) (end -5.3 3.6) (layer "F.SilkS") (width 0.12) (tstamp f7116abc-4de5-43f7-a9c4-61b6d0ca76a9)) 23 | (fp_line (start 5.3 -3.6) (end 5.3 -2.1) (layer "F.SilkS") (width 0.12) (tstamp f8bf7553-b922-4e4d-98ec-abf053c00095)) 24 | (fp_line (start -5.3 -3.6) (end 5.3 -3.6) (layer "F.SilkS") (width 0.12) (tstamp fb64ea22-44a8-4420-8004-8208c473bc22)) 25 | (fp_line (start 5.75 -4.1) (end -5.75 -4.1) (layer "F.CrtYd") (width 0.05) (tstamp 0bc6455e-086d-45de-b2c6-3e4f8749dfd0)) 26 | (fp_line (start -5.75 4.05) (end 5.75 4.075) (layer "F.CrtYd") (width 0.05) (tstamp 7b5a52d3-7cd7-45bf-be5b-aea05747aa6e)) 27 | (fp_line (start 5.75 4.075) (end 5.75 -4.1) (layer "F.CrtYd") (width 0.05) (tstamp e029d621-07ad-4f8e-add6-3da69bd102db)) 28 | (fp_line (start -5.75 -4.1) (end -5.75 4.05) (layer "F.CrtYd") (width 0.05) (tstamp ee5494e1-7f07-4152-8179-aabe9787d434)) 29 | (fp_line (start -5.2 3.5) (end -5.2 2.1) (layer "F.Fab") (width 0.1) (tstamp 584f19a9-fd2b-44d7-8a7e-c4ca76aefad1)) 30 | (fp_line (start -5.2 -3.5) (end -5.2 -2.1) (layer "F.Fab") (width 0.1) (tstamp 91d6ce97-738d-4d05-b1e1-26171f2b6186)) 31 | (fp_line (start 5.2 3.5) (end 5.2 2.1) (layer "F.Fab") (width 0.1) (tstamp 9c985065-a697-4a64-8da3-547c3f91756b)) 32 | (fp_line (start 5.2 -3.5) (end 5.2 -2.1) (layer "F.Fab") (width 0.1) (tstamp d0083654-031e-4561-a0ed-b51103a7c37f)) 33 | (fp_line (start -5.2 3.5) (end 5.2 3.5) (layer "F.Fab") (width 0.1) (tstamp e097561f-b9ae-42dc-9b78-1c21d29f2d46)) 34 | (fp_line (start -5.2 -3.5) (end 5.2 -3.5) (layer "F.Fab") (width 0.1) (tstamp f983008c-637f-4012-a206-5052592340a1)) 35 | (pad "1" smd rect (at -3.55 -1.1 270) (size 1.65 3.3) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp 3978797d-85e6-4a37-bd58-acb20258a80b)) 36 | (pad "2" smd rect (at 3.55 1.1) (size 3.2 1.65) (layers "F.Cu" "F.Paste" "F.Mask") (tstamp c3d3ed75-9c7d-463f-955e-5ef3532e5c95)) 37 | (model "${KISYS3DMOD}/Inductor_SMD.3dshapes/L_10.4x10.4_H4.8.wrl" 38 | (offset (xyz 0 0 0)) 39 | (scale (xyz 1 1 1)) 40 | (rotate (xyz 0 0 0)) 41 | ) 42 | ) 43 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/PQFN-31_5x5_Pitch0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module PQFN-31_5x5_Pitch0.5mm (layer F.Cu) (tedit 62319274) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -4.05) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value PQFN-31_5x5_Pitch0.5mm (at 0 4.05) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -3.05 3.05) (end -3.05 -3.05) (layer F.CrtYd) (width 0.05)) 10 | (fp_line (start 3.05 3.05) (end -3.05 3.05) (layer F.CrtYd) (width 0.05)) 11 | (fp_line (start 3.05 -3.05) (end 3.05 3.05) (layer F.CrtYd) (width 0.05)) 12 | (fp_line (start -3.05 -3.05) (end 3.05 -3.05) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -2.25 -2.65) (end -2.8 -2.65) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -2.65 2.65) (end -2.65 2.25) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -2.25 2.65) (end -2.65 2.65) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 2.65 2.65) (end 2.65 2.25) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 2.25 2.65) (end 2.65 2.65) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 2.65 -2.65) (end 2.65 -2.25) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 2.25 -2.65) (end 2.65 -2.65) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 2.5 -2.5) (end -1.5 -2.5) (layer F.Fab) (width 0.15)) 21 | (fp_line (start 2.5 2.5) (end 2.5 -2.5) (layer F.Fab) (width 0.15)) 22 | (fp_line (start -2.5 2.5) (end 2.5 2.5) (layer F.Fab) (width 0.15)) 23 | (fp_line (start -2.5 -1.5) (end -2.5 2.5) (layer F.Fab) (width 0.15)) 24 | (fp_line (start -1.5 -2.5) (end -2.5 -1.5) (layer F.Fab) (width 0.15)) 25 | (pad 1 smd rect (at -2.4 -1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.4 -1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.4 -0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.4 -0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.4 0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.4 0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.4 1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at -2.4 1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 8 smd rect (at -1.75 2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 34 | (pad 12 smd rect (at 1 2.4) (size 1.8 0.6) (layers F.Cu F.Paste F.Mask)) 35 | (pad 16 smd rect (at 2.4 0 90) (size 3.8 0.6) (layers F.Cu F.Paste F.Mask)) 36 | (pad 16 smd rect (at 1.25 -2.4) (size 1.3 0.6) (layers F.Cu F.Paste F.Mask)) 37 | (pad 27 smd rect (at 0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 38 | (pad 28 smd rect (at -0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 39 | (pad 29 smd rect (at -0.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 40 | (pad 30 smd rect (at -1.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 41 | (pad 31 smd rect (at -1.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 42 | (pad 8 smd rect (at -1.185 1.385) (size 1.13 2.63) (layers F.Cu F.Paste F.Mask)) 43 | (pad 12 smd rect (at 1.175 0.475) (size 1.15 4.45) (layers F.Cu F.Paste F.Mask)) 44 | (pad 33 smd rect (at 0.225 -1.635) (size 0.35 0.53) (layers F.Cu F.Paste F.Mask)) 45 | (pad 32 smd rect (at -1.185 -1.05) (size 1.13 1.42) (layers F.Cu F.Paste F.Mask)) 46 | (pad 12 smd rect (at 0.165 0.625) (size 0.87 3.05) (layers F.Cu F.Paste F.Mask)) 47 | (pad 32 thru_hole circle (at -1.5 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 48 | (pad 32 thru_hole circle (at -0.9 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 49 | (pad 32 thru_hole circle (at -0.9 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 50 | (pad 32 thru_hole circle (at -1.5 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 51 | (pad 8 thru_hole circle (at -1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 52 | (pad 8 thru_hole circle (at -0.9 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 53 | (pad 8 thru_hole circle (at -1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 54 | (pad 8 thru_hole circle (at -0.9 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 55 | (pad 12 thru_hole circle (at 0.1 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 56 | (pad 12 thru_hole circle (at 0.8 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 57 | (pad 12 thru_hole circle (at 1.5 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 58 | (pad 12 thru_hole circle (at 1.5 -1.3) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 59 | (pad 12 thru_hole circle (at 0.8 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 60 | (pad 12 thru_hole circle (at 0.1 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 61 | (pad 12 thru_hole circle (at 1.5 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 62 | (pad 12 thru_hole circle (at 0.8 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 63 | (pad 12 thru_hole circle (at 0.1 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 64 | (pad 12 thru_hole circle (at 1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 65 | (pad 12 thru_hole circle (at 0.8 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 66 | (pad 12 thru_hole circle (at 0.1 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 67 | (pad 12 thru_hole circle (at 1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 68 | ) 69 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/QFN-16_3x3_Pitch0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module QFN-16_3x3_Pitch0.5mm (layer F.Cu) (tedit 62B78707) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -2.9) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value QFN-16_3x3_Pitch0.5mm (at 0 2.9) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -0.5 -1.5) (end -1.5 -0.5) (layer F.Fab) (width 0.15)) 10 | (fp_line (start -1.5 -0.5) (end -1.5 1.5) (layer F.Fab) (width 0.15)) 11 | (fp_line (start -1.5 1.5) (end 1.5 1.5) (layer F.Fab) (width 0.15)) 12 | (fp_line (start 1.5 1.5) (end 1.5 -1.5) (layer F.Fab) (width 0.15)) 13 | (fp_line (start 1.5 -1.5) (end -0.5 -1.5) (layer F.Fab) (width 0.15)) 14 | (fp_line (start 1.25 -1.65) (end 1.65 -1.65) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start 1.65 -1.65) (end 1.65 -1.25) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 1.25 1.65) (end 1.65 1.65) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 1.65 1.65) (end 1.65 1.25) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start -1.25 1.65) (end -1.65 1.65) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start -1.65 1.65) (end -1.65 1.25) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start -1.25 -1.65) (end -1.6625 -1.65) (layer F.SilkS) (width 0.12)) 21 | (fp_line (start -1.9 -1.9) (end 1.9 -1.9) (layer F.CrtYd) (width 0.05)) 22 | (fp_line (start 1.9 -1.9) (end 1.9 1.9) (layer F.CrtYd) (width 0.05)) 23 | (fp_line (start 1.9 1.9) (end -1.9 1.9) (layer F.CrtYd) (width 0.05)) 24 | (fp_line (start -1.9 1.9) (end -1.9 -1.9) (layer F.CrtYd) (width 0.05)) 25 | (pad 1 smd rect (at -1.2625 -0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -1.2625 -0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -1.2625 0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -1.2625 0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -0.75 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -0.25 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at 0.25 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at 0.75 1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 33 | (pad 9 smd rect (at 1.2625 0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 34 | (pad 10 smd rect (at 1.2625 0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 35 | (pad 11 smd rect (at 1.2625 -0.25 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 36 | (pad 12 smd rect (at 1.2625 -0.75 90) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 37 | (pad 13 smd rect (at 0.75 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 38 | (pad 14 smd rect (at 0.25 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 39 | (pad 15 smd rect (at -0.25 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 40 | (pad 16 smd rect (at -0.75 -1.2625) (size 0.25 0.325) (layers F.Cu F.Paste F.Mask)) 41 | ) 42 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/QFN-40_5x6_Pitch0.45mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module QFN-40_5x6_Pitch0.45mm (layer F.Cu) (tedit 62BD4648) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -4.55) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value QFN-39_5x6_Pitch0.45mm (at 0 4.55) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -3.05 3.55) (end -3.05 -3.55) (layer F.CrtYd) (width 0.05)) 10 | (fp_line (start 3.05 3.55) (end -3.05 3.55) (layer F.CrtYd) (width 0.05)) 11 | (fp_line (start 3.05 -3.55) (end 3.05 3.55) (layer F.CrtYd) (width 0.05)) 12 | (fp_line (start -3.05 -3.55) (end 3.05 -3.55) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -2.475 -3.15) (end -2.8 -3.15) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -2.65 3.15) (end -2.65 2.475) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -2.475 3.15) (end -2.65 3.15) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 2.65 3.15) (end 2.65 2.475) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 2.475 3.15) (end 2.65 3.15) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 2.65 -3.15) (end 2.65 -2.475) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 2.475 -3.15) (end 2.65 -3.15) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 2.5 -3) (end -1.5 -3) (layer F.Fab) (width 0.15)) 21 | (fp_line (start 2.5 3) (end 2.5 -3) (layer F.Fab) (width 0.15)) 22 | (fp_line (start -2.5 3) (end 2.5 3) (layer F.Fab) (width 0.15)) 23 | (fp_line (start -2.5 -2) (end -2.5 3) (layer F.Fab) (width 0.15)) 24 | (fp_line (start -1.5 -3) (end -2.5 -2) (layer F.Fab) (width 0.15)) 25 | (pad 1 smd rect (at -2.4 -2.25 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.4 -1.8 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.4 -1.35 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.4 -0.9 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.4 -0.45 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.4 0 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.4 1.05 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 32 | (pad 7 smd rect (at -2.4 1.5 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 7 smd rect (at -2.4 1.95 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 34 | (pad 10 smd rect (at -2.025 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 35 | (pad 10 smd rect (at -1.575 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 36 | (pad 10 smd rect (at -1.125 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 37 | (pad 10 smd rect (at -0.675 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 38 | (pad 10 smd rect (at -0.225 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 39 | (pad 10 smd rect (at 0.225 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 40 | (pad 10 smd rect (at 0.675 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 41 | (pad 10 smd rect (at 1.125 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 42 | (pad 10 smd rect (at 1.575 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 43 | (pad 10 smd rect (at 2.025 2.875) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 44 | (pad 7 smd rect (at 2.4 2.05 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 45 | (pad 7 smd rect (at 2.4 1.6 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 46 | (pad 7 smd rect (at 2.4 1.15 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 47 | (pad 7 smd rect (at 2.4 0.7 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 48 | (pad 7 smd rect (at 2.4 0.25 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 49 | (pad 25 smd rect (at 2.4 -0.375 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 50 | (pad 25 smd rect (at 2.4 -0.825 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 51 | (pad 25 smd rect (at 2.4 -1.275 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 52 | (pad 25 smd rect (at 2.4 -1.725 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 53 | (pad 25 smd rect (at 2.4 -2.175 90) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 54 | (pad 30 smd rect (at 2.025 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 55 | (pad 31 smd rect (at 1.575 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 56 | (pad 32 smd rect (at 1.125 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 57 | (pad 33 smd rect (at 0.675 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 58 | (pad 34 smd rect (at 0.225 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 59 | (pad 35 smd rect (at -0.225 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 60 | (pad 36 smd rect (at -0.675 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 61 | (pad 37 smd rect (at -1.125 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 62 | (pad 38 smd rect (at -1.575 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 63 | (pad 39 smd rect (at -2.025 -3) (size 0.25 0.6) (layers F.Cu F.Paste F.Mask)) 64 | (pad 41 smd rect (at -1.525 0.25 90) (size 0.349 0.5) (layers F.Cu F.Paste F.Mask)) 65 | (pad 40 smd rect (at -0.8875 -1.375) (size 1.775 2) (layers F.Cu F.Paste F.Mask)) 66 | (pad 25 smd rect (at 1.35 -1.275) (size 1.925 2) (layers F.Cu F.Paste F.Mask)) 67 | (pad 7 smd rect (at 0 1.5) (size 4.6 1.45) (layers F.Cu F.Paste F.Mask)) 68 | (pad 7 smd rect (at 0.7 0.8) (size 3.225 1.45) (layers F.Cu F.Paste F.Mask)) 69 | (pad 10 smd rect (at 0 2.625) (size 4.3 0.225) (layers F.Cu F.Paste F.Mask)) 70 | (pad 7 thru_hole circle (at -0.325 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 71 | (pad 7 thru_hole circle (at 0.475 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 72 | (pad 7 thru_hole circle (at 1.25 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 73 | (pad 7 thru_hole circle (at 2 0.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 74 | (pad 7 thru_hole circle (at 1.25 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 75 | (pad 7 thru_hole circle (at 2 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 76 | (pad 7 thru_hole circle (at -0.325 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 77 | (pad 7 thru_hole circle (at 0.475 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 78 | (pad 7 thru_hole circle (at 1.25 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 79 | (pad 7 thru_hole circle (at 2 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 80 | (pad 7 thru_hole circle (at -0.325 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 81 | (pad 7 thru_hole circle (at 0.475 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 82 | (pad 7 thru_hole circle (at -1.15 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 83 | (pad 7 thru_hole circle (at -2 1.875) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 84 | (pad 40 thru_hole circle (at -1.275 -2.125) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 85 | (pad 40 thru_hole circle (at -0.525 -2.125) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 86 | (pad 40 thru_hole circle (at -0.525 -1.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 87 | (pad 40 thru_hole circle (at -1.275 -1.375) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 88 | (pad 40 thru_hole circle (at -0.525 -0.625) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 89 | (pad 40 thru_hole circle (at -1.275 -0.625) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 90 | (pad 25 thru_hole circle (at 0.95 -0.525) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 91 | (pad 25 thru_hole circle (at 1.7 -0.525) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 92 | (pad 25 thru_hole circle (at 1.7 -1.275) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 93 | (pad 25 thru_hole circle (at 0.95 -2.025) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 94 | (pad 25 thru_hole circle (at 0.95 -1.275) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 95 | (pad 25 thru_hole circle (at 1.7 -2.025) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 96 | (pad 7 thru_hole circle (at -2 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 97 | (pad 7 thru_hole circle (at -1.15 1.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 98 | ) 99 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pretty/landing_pad.kicad_mod: -------------------------------------------------------------------------------- 1 | (module landing_pad (layer F.Cu) (tedit 622EC080) 2 | (fp_text reference REF** (at 0 0.5) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value landing_pad (at 0 -0.5) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (pad 1 smd rect (at 0 0) (size 3 3) (layers F.Cu F.Paste F.Mask)) 9 | ) 10 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/linear actuator.pro: -------------------------------------------------------------------------------- 1 | update=Wed 16 Mar 2022 12:25:06 AM PDT 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead= 19 | CopperLayerCount=4 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.5 27 | MinViaDrill=0.25 28 | MinMicroViaDiameter=0.25 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | TrackWidth2=0.4 33 | TrackWidth3=2 34 | TrackWidth4=3 35 | TrackWidth5=5 36 | ViaDiameter1=0.8 37 | ViaDrill1=0.4 38 | ViaDiameter2=0.5 39 | ViaDrill2=0.25 40 | dPairWidth1=0.2 41 | dPairGap1=0.25 42 | dPairViaGap1=0.25 43 | SilkLineWidth=0.12 44 | SilkTextSizeV=1 45 | SilkTextSizeH=1 46 | SilkTextSizeThickness=0.15 47 | SilkTextItalic=0 48 | SilkTextUpright=1 49 | CopperLineWidth=0.2 50 | CopperTextSizeV=1.5 51 | CopperTextSizeH=1.5 52 | CopperTextThickness=0.3 53 | CopperTextItalic=0 54 | CopperTextUpright=1 55 | EdgeCutLineWidth=0.05 56 | CourtyardLineWidth=0.05 57 | OthersLineWidth=0.15 58 | OthersTextSizeV=1 59 | OthersTextSizeH=1 60 | OthersTextSizeThickness=0.15 61 | OthersTextItalic=0 62 | OthersTextUpright=1 63 | SolderMaskClearance=0 64 | SolderMaskMinWidth=0 65 | SolderPasteClearance=0 66 | SolderPasteRatio=-0 67 | [pcbnew/Layer.F.Cu] 68 | Name=F.Cu 69 | Type=0 70 | Enabled=1 71 | [pcbnew/Layer.In1.Cu] 72 | Name=In1.Cu 73 | Type=1 74 | Enabled=1 75 | [pcbnew/Layer.In2.Cu] 76 | Name=In2.Cu 77 | Type=1 78 | Enabled=1 79 | [pcbnew/Layer.In3.Cu] 80 | Name=In3.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In4.Cu] 84 | Name=In4.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In5.Cu] 88 | Name=In5.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In6.Cu] 92 | Name=In6.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In7.Cu] 96 | Name=In7.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In8.Cu] 100 | Name=In8.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In9.Cu] 104 | Name=In9.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In10.Cu] 108 | Name=In10.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In11.Cu] 112 | Name=In11.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In12.Cu] 116 | Name=In12.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In13.Cu] 120 | Name=In13.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In14.Cu] 124 | Name=In14.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In15.Cu] 128 | Name=In15.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In16.Cu] 132 | Name=In16.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In17.Cu] 136 | Name=In17.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In18.Cu] 140 | Name=In18.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In19.Cu] 144 | Name=In19.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In20.Cu] 148 | Name=In20.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In21.Cu] 152 | Name=In21.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In22.Cu] 156 | Name=In22.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In23.Cu] 160 | Name=In23.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In24.Cu] 164 | Name=In24.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In25.Cu] 168 | Name=In25.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In26.Cu] 172 | Name=In26.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In27.Cu] 176 | Name=In27.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In28.Cu] 180 | Name=In28.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In29.Cu] 184 | Name=In29.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In30.Cu] 188 | Name=In30.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.B.Cu] 192 | Name=B.Cu 193 | Type=0 194 | Enabled=1 195 | [pcbnew/Layer.B.Adhes] 196 | Enabled=1 197 | [pcbnew/Layer.F.Adhes] 198 | Enabled=1 199 | [pcbnew/Layer.B.Paste] 200 | Enabled=1 201 | [pcbnew/Layer.F.Paste] 202 | Enabled=1 203 | [pcbnew/Layer.B.SilkS] 204 | Enabled=1 205 | [pcbnew/Layer.F.SilkS] 206 | Enabled=1 207 | [pcbnew/Layer.B.Mask] 208 | Enabled=1 209 | [pcbnew/Layer.F.Mask] 210 | Enabled=1 211 | [pcbnew/Layer.Dwgs.User] 212 | Enabled=1 213 | [pcbnew/Layer.Cmts.User] 214 | Enabled=1 215 | [pcbnew/Layer.Eco1.User] 216 | Enabled=1 217 | [pcbnew/Layer.Eco2.User] 218 | Enabled=1 219 | [pcbnew/Layer.Edge.Cuts] 220 | Enabled=1 221 | [pcbnew/Layer.Margin] 222 | Enabled=1 223 | [pcbnew/Layer.B.CrtYd] 224 | Enabled=1 225 | [pcbnew/Layer.F.CrtYd] 226 | Enabled=1 227 | [pcbnew/Layer.B.Fab] 228 | Enabled=1 229 | [pcbnew/Layer.F.Fab] 230 | Enabled=1 231 | [pcbnew/Layer.Rescue] 232 | Enabled=0 233 | [pcbnew/Netclasses] 234 | [pcbnew/Netclasses/Default] 235 | Name=Default 236 | Clearance=0.2 237 | TrackWidth=0.25 238 | ViaDiameter=0.8 239 | ViaDrill=0.4 240 | uViaDiameter=0.3 241 | uViaDrill=0.1 242 | dPairWidth=0.2 243 | dPairGap=0.25 244 | dPairViaGap=0.25 245 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/magnetic.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 4 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L power:GND #PWR0188 18 | U 1 1 62BF3248 19 | P 4500 4050 20 | F 0 "#PWR0188" H 4500 3800 50 0001 C CNN 21 | F 1 "GND" H 4505 3877 50 0000 C CNN 22 | F 2 "" H 4500 4050 50 0001 C CNN 23 | F 3 "" H 4500 4050 50 0001 C CNN 24 | 1 4500 4050 25 | 1 0 0 -1 26 | $EndComp 27 | Wire Wire Line 28 | 4500 3950 4500 4050 29 | $Comp 30 | L power:+3.3V #PWR0187 31 | U 1 1 62BF4177 32 | P 4500 3150 33 | F 0 "#PWR0187" H 4500 3000 50 0001 C CNN 34 | F 1 "+3.3V" H 4515 3323 50 0000 C CNN 35 | F 2 "" H 4500 3150 50 0001 C CNN 36 | F 3 "" H 4500 3150 50 0001 C CNN 37 | 1 4500 3150 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L linear~actuator:QMC5883L U5 42 | U 1 1 62BF67A4 43 | P 4900 3650 44 | F 0 "U5" H 4900 4375 50 0000 C CNN 45 | F 1 "QMC5883L" H 4900 4284 50 0000 C CNN 46 | F 2 "linear actuator:QFN-16_3x3_Pitch0.5mm" H 4900 3110 50 0001 C CNN 47 | F 3 "" H 4900 3110 50 0001 C CNN 48 | 1 4900 3650 49 | 1 0 0 -1 50 | $EndComp 51 | Connection ~ 4500 4050 52 | Wire Wire Line 53 | 4500 3250 4500 3150 54 | Connection ~ 4500 3150 55 | $Comp 56 | L power:+3.3V #PWR0189 57 | U 1 1 62BF7D20 58 | P 5300 3150 59 | F 0 "#PWR0189" H 5300 3000 50 0001 C CNN 60 | F 1 "+3.3V" H 5315 3323 50 0000 C CNN 61 | F 2 "" H 5300 3150 50 0001 C CNN 62 | F 3 "" H 5300 3150 50 0001 C CNN 63 | 1 5300 3150 64 | 1 0 0 -1 65 | $EndComp 66 | $Comp 67 | L Device:C C90 68 | U 1 1 62BF8F95 69 | P 5500 3450 70 | F 0 "C90" H 5615 3496 50 0000 L CNN 71 | F 1 "0.22uF" H 5615 3405 50 0000 L CNN 72 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5538 3300 50 0001 C CNN 73 | F 3 "~" H 5500 3450 50 0001 C CNN 74 | 1 5500 3450 75 | 1 0 0 -1 76 | $EndComp 77 | $Comp 78 | L Device:C C91 79 | U 1 1 62BF94AA 80 | P 5500 3900 81 | F 0 "C91" H 5615 3946 50 0000 L CNN 82 | F 1 "4.7uF" H 5615 3855 50 0000 L CNN 83 | F 2 "Capacitor_SMD:C_0603_1608Metric" H 5538 3750 50 0001 C CNN 84 | F 3 "~" H 5500 3900 50 0001 C CNN 85 | 1 5500 3900 86 | 1 0 0 -1 87 | $EndComp 88 | $Comp 89 | L power:GND #PWR0190 90 | U 1 1 62BF9DC6 91 | P 5500 4050 92 | F 0 "#PWR0190" H 5500 3800 50 0001 C CNN 93 | F 1 "GND" H 5505 3877 50 0000 C CNN 94 | F 2 "" H 5500 4050 50 0001 C CNN 95 | F 3 "" H 5500 4050 50 0001 C CNN 96 | 1 5500 4050 97 | 1 0 0 -1 98 | $EndComp 99 | Wire Wire Line 100 | 5300 3750 5500 3750 101 | Wire Wire Line 102 | 5500 3600 5300 3600 103 | Wire Wire Line 104 | 5300 3600 5300 3550 105 | Wire Wire Line 106 | 5500 3300 5300 3300 107 | Wire Wire Line 108 | 5300 3300 5300 3350 109 | $Comp 110 | L power:GND #PWR? 111 | U 1 1 62C13EF8 112 | P 6450 3750 113 | AR Path="/63347CD9/62C13EF8" Ref="#PWR?" Part="1" 114 | AR Path="/63451ACA/62C13EF8" Ref="#PWR?" Part="1" 115 | AR Path="/63451D42/62C13EF8" Ref="#PWR?" Part="1" 116 | AR Path="/62C13EF8" Ref="#PWR?" Part="1" 117 | AR Path="/62BEEC4C/62C13EF8" Ref="#PWR0192" Part="1" 118 | F 0 "#PWR0192" H 6450 3500 50 0001 C CNN 119 | F 1 "GND" H 6455 3577 50 0000 C CNN 120 | F 2 "" H 6450 3750 50 0001 C CNN 121 | F 3 "" H 6450 3750 50 0001 C CNN 122 | 1 6450 3750 123 | 1 0 0 -1 124 | $EndComp 125 | $Comp 126 | L Device:C C? 127 | U 1 1 62C13EFE 128 | P 6450 3600 129 | AR Path="/63347CD9/62C13EFE" Ref="C?" Part="1" 130 | AR Path="/63451ACA/62C13EFE" Ref="C?" Part="1" 131 | AR Path="/63451D42/62C13EFE" Ref="C?" Part="1" 132 | AR Path="/62C13EFE" Ref="C?" Part="1" 133 | AR Path="/62BEEC4C/62C13EFE" Ref="C92" Part="1" 134 | F 0 "C92" H 6335 3554 50 0000 R CNN 135 | F 1 "0.1uF" H 6335 3645 50 0000 R CNN 136 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6488 3450 50 0001 C CNN 137 | F 3 "~" H 6450 3600 50 0001 C CNN 138 | 1 6450 3600 139 | 1 0 0 -1 140 | $EndComp 141 | $Comp 142 | L power:+3.3V #PWR0191 143 | U 1 1 62C14690 144 | P 6450 3450 145 | F 0 "#PWR0191" H 6450 3300 50 0001 C CNN 146 | F 1 "+3.3V" H 6465 3623 50 0000 C CNN 147 | F 2 "" H 6450 3450 50 0001 C CNN 148 | F 3 "" H 6450 3450 50 0001 C CNN 149 | 1 6450 3450 150 | 1 0 0 -1 151 | $EndComp 152 | Text HLabel 4500 3450 0 50 Input ~ 0 153 | SCL 154 | Text HLabel 4500 3550 0 50 Input ~ 0 155 | SDA 156 | $Comp 157 | L power:GND #PWR? 158 | U 1 1 632C2DD9 159 | P 6950 3750 160 | AR Path="/63347CD9/632C2DD9" Ref="#PWR?" Part="1" 161 | AR Path="/63451ACA/632C2DD9" Ref="#PWR?" Part="1" 162 | AR Path="/63451D42/632C2DD9" Ref="#PWR?" Part="1" 163 | AR Path="/632C2DD9" Ref="#PWR?" Part="1" 164 | AR Path="/62BEEC4C/632C2DD9" Ref="#PWR0240" Part="1" 165 | F 0 "#PWR0240" H 6950 3500 50 0001 C CNN 166 | F 1 "GND" H 6955 3577 50 0000 C CNN 167 | F 2 "" H 6950 3750 50 0001 C CNN 168 | F 3 "" H 6950 3750 50 0001 C CNN 169 | 1 6950 3750 170 | 1 0 0 -1 171 | $EndComp 172 | $Comp 173 | L Device:C C? 174 | U 1 1 632C2DDF 175 | P 6950 3600 176 | AR Path="/63347CD9/632C2DDF" Ref="C?" Part="1" 177 | AR Path="/63451ACA/632C2DDF" Ref="C?" Part="1" 178 | AR Path="/63451D42/632C2DDF" Ref="C?" Part="1" 179 | AR Path="/632C2DDF" Ref="C?" Part="1" 180 | AR Path="/62BEEC4C/632C2DDF" Ref="C106" Part="1" 181 | F 0 "C106" H 6835 3554 50 0000 R CNN 182 | F 1 "0.1uF" H 6835 3645 50 0000 R CNN 183 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6988 3450 50 0001 C CNN 184 | F 3 "~" H 6950 3600 50 0001 C CNN 185 | 1 6950 3600 186 | 1 0 0 -1 187 | $EndComp 188 | $Comp 189 | L power:+3.3V #PWR0241 190 | U 1 1 632C2DE5 191 | P 6950 3450 192 | F 0 "#PWR0241" H 6950 3300 50 0001 C CNN 193 | F 1 "+3.3V" H 6965 3623 50 0000 C CNN 194 | F 2 "" H 6950 3450 50 0001 C CNN 195 | F 3 "" H 6950 3450 50 0001 C CNN 196 | 1 6950 3450 197 | 1 0 0 -1 198 | $EndComp 199 | $EndSCHEMATC 200 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/magnetic.sch-bak: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 4 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L power:GND #PWR0188 18 | U 1 1 62BF3248 19 | P 4500 4050 20 | F 0 "#PWR0188" H 4500 3800 50 0001 C CNN 21 | F 1 "GND" H 4505 3877 50 0000 C CNN 22 | F 2 "" H 4500 4050 50 0001 C CNN 23 | F 3 "" H 4500 4050 50 0001 C CNN 24 | 1 4500 4050 25 | 1 0 0 -1 26 | $EndComp 27 | Wire Wire Line 28 | 4500 3950 4500 4050 29 | $Comp 30 | L power:+3.3V #PWR0187 31 | U 1 1 62BF4177 32 | P 4500 3150 33 | F 0 "#PWR0187" H 4500 3000 50 0001 C CNN 34 | F 1 "+3.3V" H 4515 3323 50 0000 C CNN 35 | F 2 "" H 4500 3150 50 0001 C CNN 36 | F 3 "" H 4500 3150 50 0001 C CNN 37 | 1 4500 3150 38 | 1 0 0 -1 39 | $EndComp 40 | $Comp 41 | L linear~actuator:QMC5883L U5 42 | U 1 1 62BF67A4 43 | P 4900 3650 44 | F 0 "U5" H 4900 4375 50 0000 C CNN 45 | F 1 "QMC5883L" H 4900 4284 50 0000 C CNN 46 | F 2 "linear actuator:QFN-16_3x3_Pitch0.5mm" H 4900 3110 50 0001 C CNN 47 | F 3 "" H 4900 3110 50 0001 C CNN 48 | 1 4900 3650 49 | 1 0 0 -1 50 | $EndComp 51 | Connection ~ 4500 4050 52 | Wire Wire Line 53 | 4500 3250 4500 3150 54 | Connection ~ 4500 3150 55 | $Comp 56 | L power:+3.3V #PWR0189 57 | U 1 1 62BF7D20 58 | P 5300 3150 59 | F 0 "#PWR0189" H 5300 3000 50 0001 C CNN 60 | F 1 "+3.3V" H 5315 3323 50 0000 C CNN 61 | F 2 "" H 5300 3150 50 0001 C CNN 62 | F 3 "" H 5300 3150 50 0001 C CNN 63 | 1 5300 3150 64 | 1 0 0 -1 65 | $EndComp 66 | $Comp 67 | L Device:C C90 68 | U 1 1 62BF8F95 69 | P 5500 3450 70 | F 0 "C90" H 5615 3496 50 0000 L CNN 71 | F 1 "0.22uF" H 5615 3405 50 0000 L CNN 72 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5538 3300 50 0001 C CNN 73 | F 3 "~" H 5500 3450 50 0001 C CNN 74 | 1 5500 3450 75 | 1 0 0 -1 76 | $EndComp 77 | $Comp 78 | L Device:C C91 79 | U 1 1 62BF94AA 80 | P 5500 3900 81 | F 0 "C91" H 5615 3946 50 0000 L CNN 82 | F 1 "4.7uF" H 5615 3855 50 0000 L CNN 83 | F 2 "Capacitor_SMD:C_0603_1608Metric" H 5538 3750 50 0001 C CNN 84 | F 3 "~" H 5500 3900 50 0001 C CNN 85 | 1 5500 3900 86 | 1 0 0 -1 87 | $EndComp 88 | $Comp 89 | L power:GND #PWR0190 90 | U 1 1 62BF9DC6 91 | P 5500 4050 92 | F 0 "#PWR0190" H 5500 3800 50 0001 C CNN 93 | F 1 "GND" H 5505 3877 50 0000 C CNN 94 | F 2 "" H 5500 4050 50 0001 C CNN 95 | F 3 "" H 5500 4050 50 0001 C CNN 96 | 1 5500 4050 97 | 1 0 0 -1 98 | $EndComp 99 | Wire Wire Line 100 | 5300 3750 5500 3750 101 | Wire Wire Line 102 | 5500 3600 5300 3600 103 | Wire Wire Line 104 | 5300 3600 5300 3550 105 | Wire Wire Line 106 | 5500 3300 5300 3300 107 | Wire Wire Line 108 | 5300 3300 5300 3350 109 | $Comp 110 | L power:GND #PWR? 111 | U 1 1 62C13EF8 112 | P 6450 3750 113 | AR Path="/63347CD9/62C13EF8" Ref="#PWR?" Part="1" 114 | AR Path="/63451ACA/62C13EF8" Ref="#PWR?" Part="1" 115 | AR Path="/63451D42/62C13EF8" Ref="#PWR?" Part="1" 116 | AR Path="/62C13EF8" Ref="#PWR?" Part="1" 117 | AR Path="/62BEEC4C/62C13EF8" Ref="#PWR0192" Part="1" 118 | F 0 "#PWR0192" H 6450 3500 50 0001 C CNN 119 | F 1 "GND" H 6455 3577 50 0000 C CNN 120 | F 2 "" H 6450 3750 50 0001 C CNN 121 | F 3 "" H 6450 3750 50 0001 C CNN 122 | 1 6450 3750 123 | 1 0 0 -1 124 | $EndComp 125 | $Comp 126 | L Device:C C? 127 | U 1 1 62C13EFE 128 | P 6450 3600 129 | AR Path="/63347CD9/62C13EFE" Ref="C?" Part="1" 130 | AR Path="/63451ACA/62C13EFE" Ref="C?" Part="1" 131 | AR Path="/63451D42/62C13EFE" Ref="C?" Part="1" 132 | AR Path="/62C13EFE" Ref="C?" Part="1" 133 | AR Path="/62BEEC4C/62C13EFE" Ref="C92" Part="1" 134 | F 0 "C92" H 6335 3554 50 0000 R CNN 135 | F 1 "0.1uF" H 6335 3645 50 0000 R CNN 136 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6488 3450 50 0001 C CNN 137 | F 3 "~" H 6450 3600 50 0001 C CNN 138 | 1 6450 3600 139 | 1 0 0 -1 140 | $EndComp 141 | $Comp 142 | L power:+3.3V #PWR0191 143 | U 1 1 62C14690 144 | P 6450 3450 145 | F 0 "#PWR0191" H 6450 3300 50 0001 C CNN 146 | F 1 "+3.3V" H 6465 3623 50 0000 C CNN 147 | F 2 "" H 6450 3450 50 0001 C CNN 148 | F 3 "" H 6450 3450 50 0001 C CNN 149 | 1 6450 3450 150 | 1 0 0 -1 151 | $EndComp 152 | Text HLabel 4500 3450 0 50 Input ~ 0 153 | SCL 154 | Text HLabel 4500 3550 0 50 Input ~ 0 155 | SDA 156 | $Comp 157 | L power:GND #PWR? 158 | U 1 1 632C2DD9 159 | P 6950 3750 160 | AR Path="/63347CD9/632C2DD9" Ref="#PWR?" Part="1" 161 | AR Path="/63451ACA/632C2DD9" Ref="#PWR?" Part="1" 162 | AR Path="/63451D42/632C2DD9" Ref="#PWR?" Part="1" 163 | AR Path="/632C2DD9" Ref="#PWR?" Part="1" 164 | AR Path="/62BEEC4C/632C2DD9" Ref="#PWR0240" Part="1" 165 | F 0 "#PWR0240" H 6950 3500 50 0001 C CNN 166 | F 1 "GND" H 6955 3577 50 0000 C CNN 167 | F 2 "" H 6950 3750 50 0001 C CNN 168 | F 3 "" H 6950 3750 50 0001 C CNN 169 | 1 6950 3750 170 | 1 0 0 -1 171 | $EndComp 172 | $Comp 173 | L Device:C C? 174 | U 1 1 632C2DDF 175 | P 6950 3600 176 | AR Path="/63347CD9/632C2DDF" Ref="C?" Part="1" 177 | AR Path="/63451ACA/632C2DDF" Ref="C?" Part="1" 178 | AR Path="/63451D42/632C2DDF" Ref="C?" Part="1" 179 | AR Path="/632C2DDF" Ref="C?" Part="1" 180 | AR Path="/62BEEC4C/632C2DDF" Ref="C106" Part="1" 181 | F 0 "C106" H 6835 3554 50 0000 R CNN 182 | F 1 "0.1uF" H 6835 3645 50 0000 R CNN 183 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 6988 3450 50 0001 C CNN 184 | F 3 "~" H 6950 3600 50 0001 C CNN 185 | 1 6950 3600 186 | 1 0 0 -1 187 | $EndComp 188 | $Comp 189 | L power:+3.3V #PWR0241 190 | U 1 1 632C2DE5 191 | P 6950 3450 192 | F 0 "#PWR0241" H 6950 3300 50 0001 C CNN 193 | F 1 "+3.3V" H 6965 3623 50 0000 C CNN 194 | F 2 "" H 6950 3450 50 0001 C CNN 195 | F 3 "" H 6950 3450 50 0001 C CNN 196 | 1 6950 3450 197 | 1 0 0 -1 198 | $EndComp 199 | $EndSCHEMATC 200 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/phase.sch: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 6 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:L L? 18 | U 1 1 6334A6F7 19 | P 5400 4450 20 | AR Path="/6334A6F7" Ref="L?" Part="1" 21 | AR Path="/63347CD9/6334A6F7" Ref="L1" Part="1" 22 | AR Path="/63451ACA/6334A6F7" Ref="L4" Part="1" 23 | AR Path="/63451D42/6334A6F7" Ref="L3" Part="1" 24 | F 0 "L3" H 5453 4496 50 0000 L CNN 25 | F 1 "L" H 5453 4405 50 0000 L CNN 26 | F 2 "linear actuator:L_10x7_H10" H 5400 4450 50 0001 C CNN 27 | F 3 "~" H 5400 4450 50 0001 C CNN 28 | 1 5400 4450 29 | 0 -1 -1 0 30 | $EndComp 31 | $Comp 32 | L power:VBUS #PWR044 33 | U 1 1 6334CCC6 34 | P 5250 4250 35 | AR Path="/63347CD9/6334CCC6" Ref="#PWR044" Part="1" 36 | AR Path="/63451ACA/6334CCC6" Ref="#PWR0230" Part="1" 37 | AR Path="/63451D42/6334CCC6" Ref="#PWR0220" Part="1" 38 | F 0 "#PWR0230" H 5250 4100 50 0001 C CNN 39 | F 1 "VBUS" V 5265 4378 50 0000 L CNN 40 | F 2 "" H 5250 4250 50 0001 C CNN 41 | F 3 "" H 5250 4250 50 0001 C CNN 42 | 1 5250 4250 43 | 0 1 1 0 44 | $EndComp 45 | $Comp 46 | L power:GND #PWR041 47 | U 1 1 6334DC43 48 | P 4750 4850 49 | AR Path="/63347CD9/6334DC43" Ref="#PWR041" Part="1" 50 | AR Path="/63451ACA/6334DC43" Ref="#PWR0227" Part="1" 51 | AR Path="/63451D42/6334DC43" Ref="#PWR0217" Part="1" 52 | F 0 "#PWR0227" H 4750 4600 50 0001 C CNN 53 | F 1 "GND" H 4755 4677 50 0000 C CNN 54 | F 2 "" H 4750 4850 50 0001 C CNN 55 | F 3 "" H 4750 4850 50 0001 C CNN 56 | 1 4750 4850 57 | 1 0 0 -1 58 | $EndComp 59 | $Comp 60 | L Device:C C16 61 | U 1 1 63370015 62 | P 5450 5200 63 | AR Path="/63347CD9/63370015" Ref="C16" Part="1" 64 | AR Path="/63451ACA/63370015" Ref="C119" Part="1" 65 | AR Path="/63451D42/63370015" Ref="C111" Part="1" 66 | F 0 "C111" H 5335 5154 50 0000 R CNN 67 | F 1 "0.1uF" H 5335 5245 50 0000 R CNN 68 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5488 5050 50 0001 C CNN 69 | F 3 "~" H 5450 5200 50 0001 C CNN 70 | 1 5450 5200 71 | -1 0 0 1 72 | $EndComp 73 | $Comp 74 | L power:VBUS #PWR045 75 | U 1 1 63370D22 76 | P 5750 5050 77 | AR Path="/63347CD9/63370D22" Ref="#PWR045" Part="1" 78 | AR Path="/63451ACA/63370D22" Ref="#PWR0231" Part="1" 79 | AR Path="/63451D42/63370D22" Ref="#PWR0221" Part="1" 80 | F 0 "#PWR0231" H 5750 4900 50 0001 C CNN 81 | F 1 "VBUS" V 5765 5178 50 0000 L CNN 82 | F 2 "" H 5750 5050 50 0001 C CNN 83 | F 3 "" H 5750 5050 50 0001 C CNN 84 | 1 5750 5050 85 | 1 0 0 -1 86 | $EndComp 87 | $Comp 88 | L power:GND #PWR046 89 | U 1 1 63372BC8 90 | P 5750 5350 91 | AR Path="/63347CD9/63372BC8" Ref="#PWR046" Part="1" 92 | AR Path="/63451ACA/63372BC8" Ref="#PWR0232" Part="1" 93 | AR Path="/63451D42/63372BC8" Ref="#PWR0222" Part="1" 94 | F 0 "#PWR0232" H 5750 5100 50 0001 C CNN 95 | F 1 "GND" H 5755 5177 50 0000 C CNN 96 | F 2 "" H 5750 5350 50 0001 C CNN 97 | F 3 "" H 5750 5350 50 0001 C CNN 98 | 1 5750 5350 99 | 1 0 0 -1 100 | $EndComp 101 | Wire Wire Line 102 | 5450 5050 5750 5050 103 | Wire Wire Line 104 | 5750 5350 5450 5350 105 | $Comp 106 | L Device:C C14 107 | U 1 1 633885F4 108 | P 4900 3000 109 | AR Path="/63347CD9/633885F4" Ref="C14" Part="1" 110 | AR Path="/63451ACA/633885F4" Ref="C117" Part="1" 111 | AR Path="/63451D42/633885F4" Ref="C109" Part="1" 112 | F 0 "C109" V 4648 3000 50 0000 C CNN 113 | F 1 "1uF" V 4739 3000 50 0000 C CNN 114 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4938 2850 50 0001 C CNN 115 | F 3 "~" H 4900 3000 50 0001 C CNN 116 | 1 4900 3000 117 | -1 0 0 1 118 | $EndComp 119 | $Comp 120 | L Device:C C13 121 | U 1 1 6338913B 122 | P 4450 3150 123 | AR Path="/63347CD9/6338913B" Ref="C13" Part="1" 124 | AR Path="/63451ACA/6338913B" Ref="C116" Part="1" 125 | AR Path="/63451D42/6338913B" Ref="C108" Part="1" 126 | F 0 "C108" V 4198 3150 50 0000 C CNN 127 | F 1 "1uF" V 4289 3150 50 0000 C CNN 128 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4488 3000 50 0001 C CNN 129 | F 3 "~" H 4450 3150 50 0001 C CNN 130 | 1 4450 3150 131 | 0 1 1 0 132 | $EndComp 133 | $Comp 134 | L Device:R R15 135 | U 1 1 633899E8 136 | P 4750 3150 137 | AR Path="/63347CD9/633899E8" Ref="R15" Part="1" 138 | AR Path="/63451ACA/633899E8" Ref="R40" Part="1" 139 | AR Path="/63451D42/633899E8" Ref="R36" Part="1" 140 | F 0 "R36" V 4543 3150 50 0000 C CNN 141 | F 1 "2R" V 4634 3150 50 0000 C CNN 142 | F 2 "Resistor_SMD:R_0402_1005Metric" V 4680 3150 50 0001 C CNN 143 | F 3 "~" H 4750 3150 50 0001 C CNN 144 | 1 4750 3150 145 | 0 1 1 0 146 | $EndComp 147 | $Comp 148 | L power:+5V #PWR043 149 | U 1 1 6338CA4E 150 | P 4900 3150 151 | AR Path="/63347CD9/6338CA4E" Ref="#PWR043" Part="1" 152 | AR Path="/63451ACA/6338CA4E" Ref="#PWR0229" Part="1" 153 | AR Path="/63451D42/6338CA4E" Ref="#PWR0219" Part="1" 154 | F 0 "#PWR0229" H 4900 3000 50 0001 C CNN 155 | F 1 "+5V" H 4915 3323 50 0000 C CNN 156 | F 2 "" H 4900 3150 50 0001 C CNN 157 | F 3 "" H 4900 3150 50 0001 C CNN 158 | 1 4900 3150 159 | 0 1 1 0 160 | $EndComp 161 | $Comp 162 | L Device:R R16 163 | U 1 1 6338FDDE 164 | P 5400 3650 165 | AR Path="/63347CD9/6338FDDE" Ref="R16" Part="1" 166 | AR Path="/63451ACA/6338FDDE" Ref="R41" Part="1" 167 | AR Path="/63451D42/6338FDDE" Ref="R37" Part="1" 168 | F 0 "R37" V 5193 3650 50 0000 C CNN 169 | F 1 "2R" V 5284 3650 50 0000 C CNN 170 | F 2 "Resistor_SMD:R_0402_1005Metric" V 5330 3650 50 0001 C CNN 171 | F 3 "~" H 5400 3650 50 0001 C CNN 172 | 1 5400 3650 173 | 0 1 1 0 174 | $EndComp 175 | Text HLabel 5550 4450 2 50 Input ~ 0 176 | MOTOR 177 | Text HLabel 4200 4150 0 50 Input ~ 0 178 | PWM 179 | Text HLabel 4200 4050 0 50 Input ~ 0 180 | EN 181 | Wire Wire Line 182 | 4900 3150 4900 3450 183 | Wire Wire Line 184 | 4600 3150 4600 3450 185 | Wire Wire Line 186 | 4600 3450 4700 3450 187 | Connection ~ 4900 3150 188 | Connection ~ 4600 3150 189 | $Comp 190 | L power:GND #PWR042 191 | U 1 1 6452C215 192 | P 4900 2850 193 | AR Path="/63347CD9/6452C215" Ref="#PWR042" Part="1" 194 | AR Path="/63451ACA/6452C215" Ref="#PWR0228" Part="1" 195 | AR Path="/63451D42/6452C215" Ref="#PWR0218" Part="1" 196 | F 0 "#PWR0228" H 4900 2600 50 0001 C CNN 197 | F 1 "GND" H 4905 2677 50 0000 C CNN 198 | F 2 "" H 4900 2850 50 0001 C CNN 199 | F 3 "" H 4900 2850 50 0001 C CNN 200 | 1 4900 2850 201 | -1 0 0 1 202 | $EndComp 203 | $Comp 204 | L linear~actuator:FDMF3170 U2 205 | U 1 1 62C9295A 206 | P 4750 4100 207 | AR Path="/63347CD9/62C9295A" Ref="U2" Part="1" 208 | AR Path="/63451ACA/62C9295A" Ref="U10" Part="1" 209 | AR Path="/63451D42/62C9295A" Ref="U9" Part="1" 210 | F 0 "U9" H 4725 4931 50 0000 C CNN 211 | F 1 "FDMF3170" H 4725 4840 50 0000 C CNN 212 | F 2 "linear actuator:QFN-40_5x6_Pitch0.45mm" H 4800 3100 50 0001 C CNN 213 | F 3 "" H 4800 3100 50 0001 C CNN 214 | 1 4750 4100 215 | 1 0 0 -1 216 | $EndComp 217 | Wire Wire Line 218 | 4800 4850 4750 4850 219 | Connection ~ 4750 4850 220 | Wire Wire Line 221 | 4750 4850 4700 4850 222 | Wire Wire Line 223 | 4900 3450 4800 3450 224 | Text HLabel 4200 4350 0 50 Input ~ 0 225 | TMON 226 | Text HLabel 3000 5200 0 50 Input ~ 0 227 | IMON 228 | Wire Wire Line 229 | 4200 3650 4200 3150 230 | Wire Wire Line 231 | 4200 3150 4300 3150 232 | $Comp 233 | L power:GND #PWR040 234 | U 1 1 62CDD524 235 | P 4200 3150 236 | AR Path="/63347CD9/62CDD524" Ref="#PWR040" Part="1" 237 | AR Path="/63451ACA/62CDD524" Ref="#PWR0226" Part="1" 238 | AR Path="/63451D42/62CDD524" Ref="#PWR0216" Part="1" 239 | F 0 "#PWR0226" H 4200 2900 50 0001 C CNN 240 | F 1 "GND" H 4205 2977 50 0000 C CNN 241 | F 2 "" H 4200 3150 50 0001 C CNN 242 | F 3 "" H 4200 3150 50 0001 C CNN 243 | 1 4200 3150 244 | -1 0 0 1 245 | $EndComp 246 | $Comp 247 | L Device:C C15 248 | U 1 1 62CE00CD 249 | P 5400 4050 250 | AR Path="/63347CD9/62CE00CD" Ref="C15" Part="1" 251 | AR Path="/63451ACA/62CE00CD" Ref="C118" Part="1" 252 | AR Path="/63451D42/62CE00CD" Ref="C110" Part="1" 253 | F 0 "C110" V 5148 4050 50 0000 C CNN 254 | F 1 "220nF" V 5239 4050 50 0000 C CNN 255 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5438 3900 50 0001 C CNN 256 | F 3 "~" H 5400 4050 50 0001 C CNN 257 | 1 5400 4050 258 | 0 1 1 0 259 | $EndComp 260 | Wire Wire Line 261 | 4000 4550 4200 4550 262 | Wire Wire Line 263 | 4000 4650 4200 4650 264 | Text Label 4000 4550 0 50 ~ 0 265 | IMON 266 | Text Label 4000 4650 0 50 ~ 0 267 | REF 268 | Wire Wire Line 269 | 5550 3650 5550 4050 270 | $Comp 271 | L Device:R R14 272 | U 1 1 62D1C811 273 | P 3400 5350 274 | AR Path="/63347CD9/62D1C811" Ref="R14" Part="1" 275 | AR Path="/63451ACA/62D1C811" Ref="R39" Part="1" 276 | AR Path="/63451D42/62D1C811" Ref="R35" Part="1" 277 | F 0 "R35" H 3470 5396 50 0000 L CNN 278 | F 1 "1K" H 3470 5305 50 0000 L CNN 279 | F 2 "Resistor_SMD:R_0402_1005Metric" V 3330 5350 50 0001 C CNN 280 | F 3 "~" H 3400 5350 50 0001 C CNN 281 | 1 3400 5350 282 | 1 0 0 -1 283 | $EndComp 284 | $Comp 285 | L Device:C C12 286 | U 1 1 62D216B1 287 | P 3400 5650 288 | AR Path="/63347CD9/62D216B1" Ref="C12" Part="1" 289 | AR Path="/63451ACA/62D216B1" Ref="C115" Part="1" 290 | AR Path="/63451D42/62D216B1" Ref="C107" Part="1" 291 | F 0 "C107" H 3515 5696 50 0000 L CNN 292 | F 1 "1uF" H 3515 5605 50 0000 L CNN 293 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3438 5500 50 0001 C CNN 294 | F 3 "~" H 3400 5650 50 0001 C CNN 295 | 1 3400 5650 296 | 1 0 0 -1 297 | $EndComp 298 | $Comp 299 | L power:GND #PWR039 300 | U 1 1 62D26889 301 | P 3400 5800 302 | AR Path="/63347CD9/62D26889" Ref="#PWR039" Part="1" 303 | AR Path="/63451ACA/62D26889" Ref="#PWR0225" Part="1" 304 | AR Path="/63451D42/62D26889" Ref="#PWR0215" Part="1" 305 | F 0 "#PWR0225" H 3400 5550 50 0001 C CNN 306 | F 1 "GND" H 3405 5627 50 0000 C CNN 307 | F 2 "" H 3400 5800 50 0001 C CNN 308 | F 3 "" H 3400 5800 50 0001 C CNN 309 | 1 3400 5800 310 | 1 0 0 -1 311 | $EndComp 312 | Text Label 3550 5200 0 50 ~ 0 313 | IMON 314 | Text Label 3600 5500 0 50 ~ 0 315 | REF 316 | Connection ~ 3400 5500 317 | Wire Wire Line 318 | 3400 5200 3750 5200 319 | Wire Wire Line 320 | 3400 5500 3750 5500 321 | $Comp 322 | L power:+1V2 #PWR0213 323 | U 1 1 6315F291 324 | P 3000 5500 325 | AR Path="/63451D42/6315F291" Ref="#PWR0213" Part="1" 326 | AR Path="/63347CD9/6315F291" Ref="#PWR037" Part="1" 327 | AR Path="/63451ACA/6315F291" Ref="#PWR0223" Part="1" 328 | F 0 "#PWR0223" H 3000 5350 50 0001 C CNN 329 | F 1 "+1V2" V 3015 5628 50 0000 L CNN 330 | F 2 "" H 3000 5500 50 0001 C CNN 331 | F 3 "" H 3000 5500 50 0001 C CNN 332 | 1 3000 5500 333 | 0 -1 -1 0 334 | $EndComp 335 | $Comp 336 | L Device:C C10 337 | U 1 1 6316A95C 338 | P 3000 5350 339 | AR Path="/63347CD9/6316A95C" Ref="C10" Part="1" 340 | AR Path="/63451ACA/6316A95C" Ref="C113" Part="1" 341 | AR Path="/63451D42/6316A95C" Ref="C105" Part="1" 342 | F 0 "C105" H 3115 5396 50 0000 L CNN 343 | F 1 "22pF" H 3115 5305 50 0000 L CNN 344 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3038 5200 50 0001 C CNN 345 | F 3 "~" H 3000 5350 50 0001 C CNN 346 | 1 3000 5350 347 | 1 0 0 -1 348 | $EndComp 349 | Wire Wire Line 350 | 3400 5200 3000 5200 351 | Connection ~ 3400 5200 352 | Wire Wire Line 353 | 3000 5500 3400 5500 354 | Connection ~ 3000 5500 355 | $Comp 356 | L Device:C C17 357 | U 1 1 62DC28DE 358 | P 5750 5200 359 | AR Path="/63347CD9/62DC28DE" Ref="C17" Part="1" 360 | AR Path="/63451ACA/62DC28DE" Ref="C120" Part="1" 361 | AR Path="/63451D42/62DC28DE" Ref="C112" Part="1" 362 | F 0 "C112" H 5635 5154 50 0000 R CNN 363 | F 1 "1uF" H 5635 5245 50 0000 R CNN 364 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5788 5050 50 0001 C CNN 365 | F 3 "~" H 5750 5200 50 0001 C CNN 366 | 1 5750 5200 367 | -1 0 0 1 368 | $EndComp 369 | $EndSCHEMATC 370 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/phase.sch-bak: -------------------------------------------------------------------------------- 1 | EESchema Schematic File Version 4 2 | EELAYER 30 0 3 | EELAYER END 4 | $Descr A4 11693 8268 5 | encoding utf-8 6 | Sheet 2 8 7 | Title "" 8 | Date "" 9 | Rev "" 10 | Comp "" 11 | Comment1 "" 12 | Comment2 "" 13 | Comment3 "" 14 | Comment4 "" 15 | $EndDescr 16 | $Comp 17 | L Device:L L? 18 | U 1 1 6334A6F7 19 | P 5400 4450 20 | AR Path="/6334A6F7" Ref="L?" Part="1" 21 | AR Path="/63347CD9/6334A6F7" Ref="L1" Part="1" 22 | AR Path="/63451ACA/6334A6F7" Ref="L4" Part="1" 23 | AR Path="/63451D42/6334A6F7" Ref="L3" Part="1" 24 | F 0 "L1" H 5453 4496 50 0000 L CNN 25 | F 1 "L" H 5453 4405 50 0000 L CNN 26 | F 2 "linear actuator:L_10x7_H10" H 5400 4450 50 0001 C CNN 27 | F 3 "~" H 5400 4450 50 0001 C CNN 28 | 1 5400 4450 29 | 0 -1 -1 0 30 | $EndComp 31 | $Comp 32 | L power:VBUS #PWR044 33 | U 1 1 6334CCC6 34 | P 5250 4250 35 | AR Path="/63347CD9/6334CCC6" Ref="#PWR044" Part="1" 36 | AR Path="/63451ACA/6334CCC6" Ref="#PWR0230" Part="1" 37 | AR Path="/63451D42/6334CCC6" Ref="#PWR0220" Part="1" 38 | F 0 "#PWR0230" H 5250 4100 50 0001 C CNN 39 | F 1 "VBUS" V 5265 4378 50 0000 L CNN 40 | F 2 "" H 5250 4250 50 0001 C CNN 41 | F 3 "" H 5250 4250 50 0001 C CNN 42 | 1 5250 4250 43 | 0 1 1 0 44 | $EndComp 45 | $Comp 46 | L power:GND #PWR041 47 | U 1 1 6334DC43 48 | P 4750 4850 49 | AR Path="/63347CD9/6334DC43" Ref="#PWR041" Part="1" 50 | AR Path="/63451ACA/6334DC43" Ref="#PWR0227" Part="1" 51 | AR Path="/63451D42/6334DC43" Ref="#PWR0217" Part="1" 52 | F 0 "#PWR0227" H 4750 4600 50 0001 C CNN 53 | F 1 "GND" H 4755 4677 50 0000 C CNN 54 | F 2 "" H 4750 4850 50 0001 C CNN 55 | F 3 "" H 4750 4850 50 0001 C CNN 56 | 1 4750 4850 57 | 1 0 0 -1 58 | $EndComp 59 | $Comp 60 | L Device:C C16 61 | U 1 1 63370015 62 | P 5450 5200 63 | AR Path="/63347CD9/63370015" Ref="C16" Part="1" 64 | AR Path="/63451ACA/63370015" Ref="C119" Part="1" 65 | AR Path="/63451D42/63370015" Ref="C111" Part="1" 66 | F 0 "C16" H 5335 5154 50 0000 R CNN 67 | F 1 "0.1uF" H 5335 5245 50 0000 R CNN 68 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5488 5050 50 0001 C CNN 69 | F 3 "~" H 5450 5200 50 0001 C CNN 70 | 1 5450 5200 71 | -1 0 0 1 72 | $EndComp 73 | $Comp 74 | L power:VBUS #PWR045 75 | U 1 1 63370D22 76 | P 5750 5050 77 | AR Path="/63347CD9/63370D22" Ref="#PWR045" Part="1" 78 | AR Path="/63451ACA/63370D22" Ref="#PWR0231" Part="1" 79 | AR Path="/63451D42/63370D22" Ref="#PWR0221" Part="1" 80 | F 0 "#PWR0231" H 5750 4900 50 0001 C CNN 81 | F 1 "VBUS" V 5765 5178 50 0000 L CNN 82 | F 2 "" H 5750 5050 50 0001 C CNN 83 | F 3 "" H 5750 5050 50 0001 C CNN 84 | 1 5750 5050 85 | 1 0 0 -1 86 | $EndComp 87 | $Comp 88 | L power:GND #PWR046 89 | U 1 1 63372BC8 90 | P 5750 5350 91 | AR Path="/63347CD9/63372BC8" Ref="#PWR046" Part="1" 92 | AR Path="/63451ACA/63372BC8" Ref="#PWR0232" Part="1" 93 | AR Path="/63451D42/63372BC8" Ref="#PWR0222" Part="1" 94 | F 0 "#PWR0232" H 5750 5100 50 0001 C CNN 95 | F 1 "GND" H 5755 5177 50 0000 C CNN 96 | F 2 "" H 5750 5350 50 0001 C CNN 97 | F 3 "" H 5750 5350 50 0001 C CNN 98 | 1 5750 5350 99 | 1 0 0 -1 100 | $EndComp 101 | Wire Wire Line 102 | 5450 5050 5750 5050 103 | Wire Wire Line 104 | 5750 5350 5450 5350 105 | $Comp 106 | L Device:C C14 107 | U 1 1 633885F4 108 | P 4900 3000 109 | AR Path="/63347CD9/633885F4" Ref="C14" Part="1" 110 | AR Path="/63451ACA/633885F4" Ref="C117" Part="1" 111 | AR Path="/63451D42/633885F4" Ref="C109" Part="1" 112 | F 0 "C14" V 4648 3000 50 0000 C CNN 113 | F 1 "1uF" V 4739 3000 50 0000 C CNN 114 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4938 2850 50 0001 C CNN 115 | F 3 "~" H 4900 3000 50 0001 C CNN 116 | 1 4900 3000 117 | -1 0 0 1 118 | $EndComp 119 | $Comp 120 | L Device:C C13 121 | U 1 1 6338913B 122 | P 4450 3150 123 | AR Path="/63347CD9/6338913B" Ref="C13" Part="1" 124 | AR Path="/63451ACA/6338913B" Ref="C116" Part="1" 125 | AR Path="/63451D42/6338913B" Ref="C108" Part="1" 126 | F 0 "C13" V 4198 3150 50 0000 C CNN 127 | F 1 "1uF" V 4289 3150 50 0000 C CNN 128 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 4488 3000 50 0001 C CNN 129 | F 3 "~" H 4450 3150 50 0001 C CNN 130 | 1 4450 3150 131 | 0 1 1 0 132 | $EndComp 133 | $Comp 134 | L Device:R R15 135 | U 1 1 633899E8 136 | P 4750 3150 137 | AR Path="/63347CD9/633899E8" Ref="R15" Part="1" 138 | AR Path="/63451ACA/633899E8" Ref="R40" Part="1" 139 | AR Path="/63451D42/633899E8" Ref="R36" Part="1" 140 | F 0 "R15" V 4543 3150 50 0000 C CNN 141 | F 1 "2R" V 4634 3150 50 0000 C CNN 142 | F 2 "Resistor_SMD:R_0402_1005Metric" V 4680 3150 50 0001 C CNN 143 | F 3 "~" H 4750 3150 50 0001 C CNN 144 | 1 4750 3150 145 | 0 1 1 0 146 | $EndComp 147 | $Comp 148 | L power:+5V #PWR043 149 | U 1 1 6338CA4E 150 | P 4900 3150 151 | AR Path="/63347CD9/6338CA4E" Ref="#PWR043" Part="1" 152 | AR Path="/63451ACA/6338CA4E" Ref="#PWR0229" Part="1" 153 | AR Path="/63451D42/6338CA4E" Ref="#PWR0219" Part="1" 154 | F 0 "#PWR0229" H 4900 3000 50 0001 C CNN 155 | F 1 "+5V" H 4915 3323 50 0000 C CNN 156 | F 2 "" H 4900 3150 50 0001 C CNN 157 | F 3 "" H 4900 3150 50 0001 C CNN 158 | 1 4900 3150 159 | 0 1 1 0 160 | $EndComp 161 | $Comp 162 | L Device:R R16 163 | U 1 1 6338FDDE 164 | P 5400 3650 165 | AR Path="/63347CD9/6338FDDE" Ref="R16" Part="1" 166 | AR Path="/63451ACA/6338FDDE" Ref="R41" Part="1" 167 | AR Path="/63451D42/6338FDDE" Ref="R37" Part="1" 168 | F 0 "R16" V 5193 3650 50 0000 C CNN 169 | F 1 "2R" V 5284 3650 50 0000 C CNN 170 | F 2 "Resistor_SMD:R_0402_1005Metric" V 5330 3650 50 0001 C CNN 171 | F 3 "~" H 5400 3650 50 0001 C CNN 172 | 1 5400 3650 173 | 0 1 1 0 174 | $EndComp 175 | Text HLabel 5550 4450 2 50 Input ~ 0 176 | MOTOR 177 | Text HLabel 4200 4150 0 50 Input ~ 0 178 | PWM 179 | Text HLabel 4200 4050 0 50 Input ~ 0 180 | EN 181 | Wire Wire Line 182 | 4900 3150 4900 3450 183 | Wire Wire Line 184 | 4600 3150 4600 3450 185 | Wire Wire Line 186 | 4600 3450 4700 3450 187 | Connection ~ 4900 3150 188 | Connection ~ 4600 3150 189 | $Comp 190 | L power:GND #PWR042 191 | U 1 1 6452C215 192 | P 4900 2850 193 | AR Path="/63347CD9/6452C215" Ref="#PWR042" Part="1" 194 | AR Path="/63451ACA/6452C215" Ref="#PWR0228" Part="1" 195 | AR Path="/63451D42/6452C215" Ref="#PWR0218" Part="1" 196 | F 0 "#PWR0228" H 4900 2600 50 0001 C CNN 197 | F 1 "GND" H 4905 2677 50 0000 C CNN 198 | F 2 "" H 4900 2850 50 0001 C CNN 199 | F 3 "" H 4900 2850 50 0001 C CNN 200 | 1 4900 2850 201 | -1 0 0 1 202 | $EndComp 203 | $Comp 204 | L linear~actuator:FDMF3170 U2 205 | U 1 1 62C9295A 206 | P 4750 4100 207 | AR Path="/63347CD9/62C9295A" Ref="U2" Part="1" 208 | AR Path="/63451ACA/62C9295A" Ref="U10" Part="1" 209 | AR Path="/63451D42/62C9295A" Ref="U9" Part="1" 210 | F 0 "U2" H 4725 4931 50 0000 C CNN 211 | F 1 "FDMF3170" H 4725 4840 50 0000 C CNN 212 | F 2 "linear actuator:QFN-40_5x6_Pitch0.45mm" H 4800 3100 50 0001 C CNN 213 | F 3 "" H 4800 3100 50 0001 C CNN 214 | 1 4750 4100 215 | 1 0 0 -1 216 | $EndComp 217 | Wire Wire Line 218 | 4800 4850 4750 4850 219 | Connection ~ 4750 4850 220 | Wire Wire Line 221 | 4750 4850 4700 4850 222 | Wire Wire Line 223 | 4900 3450 4800 3450 224 | Text HLabel 4200 4350 0 50 Input ~ 0 225 | TMON 226 | Text HLabel 3000 5200 0 50 Input ~ 0 227 | IMON 228 | Wire Wire Line 229 | 4200 3650 4200 3150 230 | Wire Wire Line 231 | 4200 3150 4300 3150 232 | $Comp 233 | L power:GND #PWR040 234 | U 1 1 62CDD524 235 | P 4200 3150 236 | AR Path="/63347CD9/62CDD524" Ref="#PWR040" Part="1" 237 | AR Path="/63451ACA/62CDD524" Ref="#PWR0226" Part="1" 238 | AR Path="/63451D42/62CDD524" Ref="#PWR0216" Part="1" 239 | F 0 "#PWR0226" H 4200 2900 50 0001 C CNN 240 | F 1 "GND" H 4205 2977 50 0000 C CNN 241 | F 2 "" H 4200 3150 50 0001 C CNN 242 | F 3 "" H 4200 3150 50 0001 C CNN 243 | 1 4200 3150 244 | -1 0 0 1 245 | $EndComp 246 | $Comp 247 | L Device:C C15 248 | U 1 1 62CE00CD 249 | P 5400 4050 250 | AR Path="/63347CD9/62CE00CD" Ref="C15" Part="1" 251 | AR Path="/63451ACA/62CE00CD" Ref="C118" Part="1" 252 | AR Path="/63451D42/62CE00CD" Ref="C110" Part="1" 253 | F 0 "C15" V 5148 4050 50 0000 C CNN 254 | F 1 "220nF" V 5239 4050 50 0000 C CNN 255 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5438 3900 50 0001 C CNN 256 | F 3 "~" H 5400 4050 50 0001 C CNN 257 | 1 5400 4050 258 | 0 1 1 0 259 | $EndComp 260 | Wire Wire Line 261 | 4000 4550 4200 4550 262 | Wire Wire Line 263 | 4000 4650 4200 4650 264 | Text Label 4000 4550 0 50 ~ 0 265 | IMON 266 | Text Label 4000 4650 0 50 ~ 0 267 | REF 268 | Wire Wire Line 269 | 5550 3650 5550 4050 270 | $Comp 271 | L Device:R R14 272 | U 1 1 62D1C811 273 | P 3400 5350 274 | AR Path="/63347CD9/62D1C811" Ref="R14" Part="1" 275 | AR Path="/63451ACA/62D1C811" Ref="R39" Part="1" 276 | AR Path="/63451D42/62D1C811" Ref="R35" Part="1" 277 | F 0 "R14" H 3470 5396 50 0000 L CNN 278 | F 1 "1K" H 3470 5305 50 0000 L CNN 279 | F 2 "Resistor_SMD:R_0402_1005Metric" V 3330 5350 50 0001 C CNN 280 | F 3 "~" H 3400 5350 50 0001 C CNN 281 | 1 3400 5350 282 | 1 0 0 -1 283 | $EndComp 284 | $Comp 285 | L Device:C C12 286 | U 1 1 62D216B1 287 | P 3400 5650 288 | AR Path="/63347CD9/62D216B1" Ref="C12" Part="1" 289 | AR Path="/63451ACA/62D216B1" Ref="C115" Part="1" 290 | AR Path="/63451D42/62D216B1" Ref="C107" Part="1" 291 | F 0 "C12" H 3515 5696 50 0000 L CNN 292 | F 1 "1uF" H 3515 5605 50 0000 L CNN 293 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3438 5500 50 0001 C CNN 294 | F 3 "~" H 3400 5650 50 0001 C CNN 295 | 1 3400 5650 296 | 1 0 0 -1 297 | $EndComp 298 | $Comp 299 | L power:GND #PWR039 300 | U 1 1 62D26889 301 | P 3400 5800 302 | AR Path="/63347CD9/62D26889" Ref="#PWR039" Part="1" 303 | AR Path="/63451ACA/62D26889" Ref="#PWR0225" Part="1" 304 | AR Path="/63451D42/62D26889" Ref="#PWR0215" Part="1" 305 | F 0 "#PWR0225" H 3400 5550 50 0001 C CNN 306 | F 1 "GND" H 3405 5627 50 0000 C CNN 307 | F 2 "" H 3400 5800 50 0001 C CNN 308 | F 3 "" H 3400 5800 50 0001 C CNN 309 | 1 3400 5800 310 | 1 0 0 -1 311 | $EndComp 312 | Text Label 3550 5200 0 50 ~ 0 313 | IMON 314 | Text Label 3600 5500 0 50 ~ 0 315 | REF 316 | Connection ~ 3400 5500 317 | Wire Wire Line 318 | 3400 5200 3750 5200 319 | Wire Wire Line 320 | 3400 5500 3750 5500 321 | $Comp 322 | L power:+1V2 #PWR0213 323 | U 1 1 6315F291 324 | P 3000 5500 325 | AR Path="/63451D42/6315F291" Ref="#PWR0213" Part="1" 326 | AR Path="/63347CD9/6315F291" Ref="#PWR037" Part="1" 327 | AR Path="/63451ACA/6315F291" Ref="#PWR0223" Part="1" 328 | F 0 "#PWR0223" H 3000 5350 50 0001 C CNN 329 | F 1 "+1V2" V 3015 5628 50 0000 L CNN 330 | F 2 "" H 3000 5500 50 0001 C CNN 331 | F 3 "" H 3000 5500 50 0001 C CNN 332 | 1 3000 5500 333 | 0 -1 -1 0 334 | $EndComp 335 | $Comp 336 | L Device:C C10 337 | U 1 1 6316A95C 338 | P 3000 5350 339 | AR Path="/63347CD9/6316A95C" Ref="C10" Part="1" 340 | AR Path="/63451ACA/6316A95C" Ref="C113" Part="1" 341 | AR Path="/63451D42/6316A95C" Ref="C105" Part="1" 342 | F 0 "C10" H 3115 5396 50 0000 L CNN 343 | F 1 "22pF" H 3115 5305 50 0000 L CNN 344 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 3038 5200 50 0001 C CNN 345 | F 3 "~" H 3000 5350 50 0001 C CNN 346 | 1 3000 5350 347 | 1 0 0 -1 348 | $EndComp 349 | Wire Wire Line 350 | 3400 5200 3000 5200 351 | Connection ~ 3400 5200 352 | Wire Wire Line 353 | 3000 5500 3400 5500 354 | Connection ~ 3000 5500 355 | $Comp 356 | L Device:C C17 357 | U 1 1 62DC28DE 358 | P 5750 5200 359 | AR Path="/63347CD9/62DC28DE" Ref="C17" Part="1" 360 | AR Path="/63451ACA/62DC28DE" Ref="C120" Part="1" 361 | AR Path="/63451D42/62DC28DE" Ref="C112" Part="1" 362 | F 0 "C17" H 5635 5154 50 0000 R CNN 363 | F 1 "1uF" H 5635 5245 50 0000 R CNN 364 | F 2 "Capacitor_SMD:C_0402_1005Metric" H 5788 5050 50 0001 C CNN 365 | F 3 "~" H 5750 5200 50 0001 C CNN 366 | 1 5750 5200 367 | -1 0 0 1 368 | $EndComp 369 | $EndSCHEMATC 370 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator 3/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name "linear actuator")(type Legacy)(uri "${KIPRJMOD}/linear actuator.lib")(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator-job.gbrjob: -------------------------------------------------------------------------------- 1 | { 2 | "Header": 3 | { 4 | "GenerationSoftware": 5 | { 6 | "Vendor": "KiCad", 7 | "Application": "Pcbnew", 8 | "Version": "5.1.10" 9 | }, 10 | "CreationDate": "2022-03-14T20:48:02-07:00" 11 | }, 12 | "GeneralSpecs": 13 | { 14 | "ProjectId": 15 | { 16 | "Name": "linear actuator", 17 | "GUID": "6c696e65-6172-4206-9163-747561746f72", 18 | "Revision": "rev?" 19 | }, 20 | "Size": 21 | { 22 | "X": 100.050, 23 | "Y": 101.050 24 | }, 25 | "LayerNumber": 4, 26 | "BoardThickness": 1.600 27 | }, 28 | "DesignRules": 29 | [ 30 | { 31 | "Layers": "Outer", 32 | "PadToPad": 0.200, 33 | "PadToTrack": 0.200, 34 | "TrackToTrack": 0.200, 35 | "MinLineWidth": 0.250, 36 | "TrackToRegion": 0.200, 37 | "RegionToRegion": 0.200 38 | }, 39 | { 40 | "Layers": "Inner", 41 | "PadToPad": 0.200, 42 | "PadToTrack": 0.200, 43 | "TrackToTrack": 0.200, 44 | "MinLineWidth": 0.250, 45 | "TrackToRegion": 0.200, 46 | "RegionToRegion": 0.200 47 | } 48 | ], 49 | "FilesAttributes": 50 | [ 51 | { 52 | "Path": "linear actuator-F_Cu.gbr", 53 | "FileFunction": "Copper,L1,Top", 54 | "FilePolarity": "Positive" 55 | }, 56 | { 57 | "Path": "linear actuator-In1_Cu.gbr", 58 | "FileFunction": "Copper,L2,Inr", 59 | "FilePolarity": "Positive" 60 | }, 61 | { 62 | "Path": "linear actuator-In2_Cu.gbr", 63 | "FileFunction": "Copper,L3,Inr", 64 | "FilePolarity": "Positive" 65 | }, 66 | { 67 | "Path": "linear actuator-B_Cu.gbr", 68 | "FileFunction": "Copper,L4,Bot", 69 | "FilePolarity": "Positive" 70 | }, 71 | { 72 | "Path": "linear actuator-F_Paste.gbr", 73 | "FileFunction": "SolderPaste,Top", 74 | "FilePolarity": "Positive" 75 | }, 76 | { 77 | "Path": "linear actuator-B_Paste.gbr", 78 | "FileFunction": "SolderPaste,Bot", 79 | "FilePolarity": "Positive" 80 | }, 81 | { 82 | "Path": "linear actuator-F_SilkS.gbr", 83 | "FileFunction": "Legend,Top", 84 | "FilePolarity": "Positive" 85 | }, 86 | { 87 | "Path": "linear actuator-B_SilkS.gbr", 88 | "FileFunction": "Legend,Bot", 89 | "FilePolarity": "Positive" 90 | }, 91 | { 92 | "Path": "linear actuator-F_Mask.gbr", 93 | "FileFunction": "SolderMask,Top", 94 | "FilePolarity": "Negative" 95 | }, 96 | { 97 | "Path": "linear actuator-B_Mask.gbr", 98 | "FileFunction": "SolderMask,Bot", 99 | "FilePolarity": "Negative" 100 | }, 101 | { 102 | "Path": "linear actuator-Edge_Cuts.gbr", 103 | "FileFunction": "Profile", 104 | "FilePolarity": "Positive" 105 | } 106 | ], 107 | "MaterialStackup": 108 | [ 109 | { 110 | "Type": "Legend", 111 | "Notes": "Layer F.SilkS" 112 | }, 113 | { 114 | "Type": "SolderPaste", 115 | "Notes": "Layer F.Paste" 116 | }, 117 | { 118 | "Type": "SolderMask", 119 | "Notes": "Layer F.Mask" 120 | }, 121 | { 122 | "Type": "Copper", 123 | "Notes": "Layer F.Cu" 124 | }, 125 | { 126 | "Type": "Dielectric", 127 | "Material": "FR4", 128 | "Notes": "Layers L1/L2" 129 | }, 130 | { 131 | "Type": "Copper", 132 | "Notes": "Layer In1.Cu" 133 | }, 134 | { 135 | "Type": "Dielectric", 136 | "Material": "FR4", 137 | "Notes": "Layers L2/L3" 138 | }, 139 | { 140 | "Type": "Copper", 141 | "Notes": "Layer In2.Cu" 142 | }, 143 | { 144 | "Type": "Dielectric", 145 | "Material": "FR4", 146 | "Notes": "Layers L3/L4" 147 | }, 148 | { 149 | "Type": "Copper", 150 | "Notes": "Layer B.Cu" 151 | }, 152 | { 153 | "Type": "SolderMask", 154 | "Notes": "Layer B.Mask" 155 | }, 156 | { 157 | "Type": "SolderPaste", 158 | "Notes": "Layer B.Paste" 159 | }, 160 | { 161 | "Type": "Legend", 162 | "Notes": "Layer B.SilkS" 163 | } 164 | ] 165 | } 166 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator-top-pos.csv: -------------------------------------------------------------------------------- 1 | Ref,Val,Package,PosX,PosY,Rot,Side 2 | "L2","L","L_10.4x10.4_H4.8",137.000000,-93.650000,180.000000,top 3 | "L3","L","L_10.4x10.4_H4.8",123.500000,-93.650000,180.000000,top 4 | "L4","L","L_10.4x10.4_H4.8",110.250000,-93.650000,180.000000,top 5 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator.dcm: -------------------------------------------------------------------------------- 1 | EESchema-DOCLIB Version 2.0 2 | # 3 | #End Doc Library 4 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator.lib: -------------------------------------------------------------------------------- 1 | EESchema-LIBRARY Version 2.4 2 | #encoding utf-8 3 | # 4 | # NCP302155 5 | # 6 | DEF NCP302155 U 0 40 Y Y 1 F N 7 | F0 "U" 0 750 50 H V C CNN 8 | F1 "NCP302155" 0 -650 50 H V C CNN 9 | F2 "" 0 750 50 H I C CNN 10 | F3 "" 0 750 50 H I C CNN 11 | DRAW 12 | S -300 700 300 -600 0 1 0 N 13 | X PWM 1 -400 150 100 R 50 50 1 1 B 14 | X PGND 12 400 -550 100 L 50 50 1 1 B 15 | X VSW 16 400 50 100 L 50 50 1 1 B 16 | X SMOD# 2 -400 250 100 R 50 50 1 1 B 17 | X GL 27 400 -150 100 L 50 50 1 1 B 18 | X PGND 28 400 -450 100 L 50 50 1 1 B 19 | X VCCD 29 -400 650 100 R 50 50 1 1 B 20 | X VCC 3 -400 450 100 R 50 50 1 1 B 21 | X THWN 30 -400 -150 100 R 50 50 1 1 B 22 | X DISAB# 31 -400 50 100 R 50 50 1 1 B 23 | X AGND 32 -400 -450 100 R 50 50 1 1 B 24 | X GL 33 400 -250 100 L 50 50 1 1 B 25 | X CGND 4 -400 -550 100 R 50 50 1 1 B 26 | X BOOT 5 400 650 100 L 50 50 1 1 B 27 | X PHASE 7 400 550 100 L 50 50 1 1 B 28 | X VIN 8 400 350 100 L 50 50 1 1 B 29 | ENDDRAW 30 | ENDDEF 31 | # 32 | #End Library 33 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator.pretty/PQFN-31_5x5_Pitch0.5mm.kicad_mod: -------------------------------------------------------------------------------- 1 | (module PQFN-31_5x5_Pitch0.5mm (layer F.Cu) (tedit 62319274) 2 | (attr smd) 3 | (fp_text reference REF** (at 0 -4.05) (layer F.SilkS) 4 | (effects (font (size 1 1) (thickness 0.15))) 5 | ) 6 | (fp_text value PQFN-31_5x5_Pitch0.5mm (at 0 4.05) (layer F.Fab) 7 | (effects (font (size 1 1) (thickness 0.15))) 8 | ) 9 | (fp_line (start -3.05 3.05) (end -3.05 -3.05) (layer F.CrtYd) (width 0.05)) 10 | (fp_line (start 3.05 3.05) (end -3.05 3.05) (layer F.CrtYd) (width 0.05)) 11 | (fp_line (start 3.05 -3.05) (end 3.05 3.05) (layer F.CrtYd) (width 0.05)) 12 | (fp_line (start -3.05 -3.05) (end 3.05 -3.05) (layer F.CrtYd) (width 0.05)) 13 | (fp_line (start -2.25 -2.65) (end -2.8 -2.65) (layer F.SilkS) (width 0.12)) 14 | (fp_line (start -2.65 2.65) (end -2.65 2.25) (layer F.SilkS) (width 0.12)) 15 | (fp_line (start -2.25 2.65) (end -2.65 2.65) (layer F.SilkS) (width 0.12)) 16 | (fp_line (start 2.65 2.65) (end 2.65 2.25) (layer F.SilkS) (width 0.12)) 17 | (fp_line (start 2.25 2.65) (end 2.65 2.65) (layer F.SilkS) (width 0.12)) 18 | (fp_line (start 2.65 -2.65) (end 2.65 -2.25) (layer F.SilkS) (width 0.12)) 19 | (fp_line (start 2.25 -2.65) (end 2.65 -2.65) (layer F.SilkS) (width 0.12)) 20 | (fp_line (start 2.5 -2.5) (end -1.5 -2.5) (layer F.Fab) (width 0.15)) 21 | (fp_line (start 2.5 2.5) (end 2.5 -2.5) (layer F.Fab) (width 0.15)) 22 | (fp_line (start -2.5 2.5) (end 2.5 2.5) (layer F.Fab) (width 0.15)) 23 | (fp_line (start -2.5 -1.5) (end -2.5 2.5) (layer F.Fab) (width 0.15)) 24 | (fp_line (start -1.5 -2.5) (end -2.5 -1.5) (layer F.Fab) (width 0.15)) 25 | (pad 1 smd rect (at -2.4 -1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 26 | (pad 2 smd rect (at -2.4 -1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 27 | (pad 3 smd rect (at -2.4 -0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 28 | (pad 4 smd rect (at -2.4 -0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 29 | (pad 5 smd rect (at -2.4 0.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 30 | (pad 6 smd rect (at -2.4 0.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 31 | (pad 7 smd rect (at -2.4 1.25 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 32 | (pad 8 smd rect (at -2.4 1.75 90) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 33 | (pad 8 smd rect (at -1.75 2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 34 | (pad 12 smd rect (at 1 2.4) (size 1.8 0.6) (layers F.Cu F.Paste F.Mask)) 35 | (pad 16 smd rect (at 2.4 0 90) (size 3.8 0.6) (layers F.Cu F.Paste F.Mask)) 36 | (pad 16 smd rect (at 1.25 -2.4) (size 1.3 0.6) (layers F.Cu F.Paste F.Mask)) 37 | (pad 27 smd rect (at 0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 38 | (pad 28 smd rect (at -0.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 39 | (pad 29 smd rect (at -0.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 40 | (pad 30 smd rect (at -1.25 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 41 | (pad 31 smd rect (at -1.75 -2.4) (size 0.3 0.6) (layers F.Cu F.Paste F.Mask)) 42 | (pad 8 smd rect (at -1.185 1.385) (size 1.13 2.63) (layers F.Cu F.Paste F.Mask)) 43 | (pad 12 smd rect (at 1.175 0.475) (size 1.15 4.45) (layers F.Cu F.Paste F.Mask)) 44 | (pad 33 smd rect (at 0.225 -1.635) (size 0.35 0.53) (layers F.Cu F.Paste F.Mask)) 45 | (pad 32 smd rect (at -1.185 -1.05) (size 1.13 1.42) (layers F.Cu F.Paste F.Mask)) 46 | (pad 12 smd rect (at 0.165 0.625) (size 0.87 3.05) (layers F.Cu F.Paste F.Mask)) 47 | (pad 32 thru_hole circle (at -1.5 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 48 | (pad 32 thru_hole circle (at -0.9 -1.4) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 49 | (pad 32 thru_hole circle (at -0.9 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 50 | (pad 32 thru_hole circle (at -1.5 -0.7) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 51 | (pad 8 thru_hole circle (at -1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 52 | (pad 8 thru_hole circle (at -0.9 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 53 | (pad 8 thru_hole circle (at -1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 54 | (pad 8 thru_hole circle (at -0.9 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 55 | (pad 12 thru_hole circle (at 0.1 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 56 | (pad 12 thru_hole circle (at 0.8 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 57 | (pad 12 thru_hole circle (at 1.5 -0.6) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 58 | (pad 12 thru_hole circle (at 1.5 -1.3) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 59 | (pad 12 thru_hole circle (at 0.8 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 60 | (pad 12 thru_hole circle (at 0.1 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 61 | (pad 12 thru_hole circle (at 1.5 0.1) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 62 | (pad 12 thru_hole circle (at 0.8 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 63 | (pad 12 thru_hole circle (at 0.1 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 64 | (pad 12 thru_hole circle (at 1.5 0.8) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 65 | (pad 12 thru_hole circle (at 0.8 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 66 | (pad 12 thru_hole circle (at 0.1 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 67 | (pad 12 thru_hole circle (at 1.5 1.5) (size 0.5 0.5) (drill 0.25) (layers *.Cu *.Mask)) 68 | ) 69 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator.pretty/landing_pad.kicad_mod: -------------------------------------------------------------------------------- 1 | (module landing_pad (layer F.Cu) (tedit 622EC080) 2 | (fp_text reference REF** (at 0 0.5) (layer F.SilkS) 3 | (effects (font (size 1 1) (thickness 0.15))) 4 | ) 5 | (fp_text value landing_pad (at 0 -0.5) (layer F.Fab) 6 | (effects (font (size 1 1) (thickness 0.15))) 7 | ) 8 | (pad 1 smd rect (at 0 0) (size 3 3) (layers F.Cu F.Paste F.Mask)) 9 | ) 10 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/linear actuator.pro: -------------------------------------------------------------------------------- 1 | update=Wed 16 Mar 2022 12:25:06 AM PDT 2 | version=1 3 | last_client=kicad 4 | [general] 5 | version=1 6 | RootSch= 7 | BoardNm= 8 | [cvpcb] 9 | version=1 10 | NetIExt=net 11 | [eeschema] 12 | version=1 13 | LibDir= 14 | [eeschema/libraries] 15 | [pcbnew] 16 | version=1 17 | PageLayoutDescrFile= 18 | LastNetListRead= 19 | CopperLayerCount=4 20 | BoardThickness=1.6 21 | AllowMicroVias=0 22 | AllowBlindVias=0 23 | RequireCourtyardDefinitions=0 24 | ProhibitOverlappingCourtyards=1 25 | MinTrackWidth=0.2 26 | MinViaDiameter=0.5 27 | MinViaDrill=0.25 28 | MinMicroViaDiameter=0.25 29 | MinMicroViaDrill=0.09999999999999999 30 | MinHoleToHole=0.25 31 | TrackWidth1=0.25 32 | TrackWidth2=0.4 33 | TrackWidth3=2 34 | TrackWidth4=3 35 | TrackWidth5=5 36 | ViaDiameter1=0.8 37 | ViaDrill1=0.4 38 | ViaDiameter2=0.5 39 | ViaDrill2=0.25 40 | dPairWidth1=0.2 41 | dPairGap1=0.25 42 | dPairViaGap1=0.25 43 | SilkLineWidth=0.12 44 | SilkTextSizeV=1 45 | SilkTextSizeH=1 46 | SilkTextSizeThickness=0.15 47 | SilkTextItalic=0 48 | SilkTextUpright=1 49 | CopperLineWidth=0.2 50 | CopperTextSizeV=1.5 51 | CopperTextSizeH=1.5 52 | CopperTextThickness=0.3 53 | CopperTextItalic=0 54 | CopperTextUpright=1 55 | EdgeCutLineWidth=0.05 56 | CourtyardLineWidth=0.05 57 | OthersLineWidth=0.15 58 | OthersTextSizeV=1 59 | OthersTextSizeH=1 60 | OthersTextSizeThickness=0.15 61 | OthersTextItalic=0 62 | OthersTextUpright=1 63 | SolderMaskClearance=0 64 | SolderMaskMinWidth=0 65 | SolderPasteClearance=0 66 | SolderPasteRatio=-0 67 | [pcbnew/Layer.F.Cu] 68 | Name=F.Cu 69 | Type=0 70 | Enabled=1 71 | [pcbnew/Layer.In1.Cu] 72 | Name=In1.Cu 73 | Type=1 74 | Enabled=1 75 | [pcbnew/Layer.In2.Cu] 76 | Name=In2.Cu 77 | Type=1 78 | Enabled=1 79 | [pcbnew/Layer.In3.Cu] 80 | Name=In3.Cu 81 | Type=0 82 | Enabled=0 83 | [pcbnew/Layer.In4.Cu] 84 | Name=In4.Cu 85 | Type=0 86 | Enabled=0 87 | [pcbnew/Layer.In5.Cu] 88 | Name=In5.Cu 89 | Type=0 90 | Enabled=0 91 | [pcbnew/Layer.In6.Cu] 92 | Name=In6.Cu 93 | Type=0 94 | Enabled=0 95 | [pcbnew/Layer.In7.Cu] 96 | Name=In7.Cu 97 | Type=0 98 | Enabled=0 99 | [pcbnew/Layer.In8.Cu] 100 | Name=In8.Cu 101 | Type=0 102 | Enabled=0 103 | [pcbnew/Layer.In9.Cu] 104 | Name=In9.Cu 105 | Type=0 106 | Enabled=0 107 | [pcbnew/Layer.In10.Cu] 108 | Name=In10.Cu 109 | Type=0 110 | Enabled=0 111 | [pcbnew/Layer.In11.Cu] 112 | Name=In11.Cu 113 | Type=0 114 | Enabled=0 115 | [pcbnew/Layer.In12.Cu] 116 | Name=In12.Cu 117 | Type=0 118 | Enabled=0 119 | [pcbnew/Layer.In13.Cu] 120 | Name=In13.Cu 121 | Type=0 122 | Enabled=0 123 | [pcbnew/Layer.In14.Cu] 124 | Name=In14.Cu 125 | Type=0 126 | Enabled=0 127 | [pcbnew/Layer.In15.Cu] 128 | Name=In15.Cu 129 | Type=0 130 | Enabled=0 131 | [pcbnew/Layer.In16.Cu] 132 | Name=In16.Cu 133 | Type=0 134 | Enabled=0 135 | [pcbnew/Layer.In17.Cu] 136 | Name=In17.Cu 137 | Type=0 138 | Enabled=0 139 | [pcbnew/Layer.In18.Cu] 140 | Name=In18.Cu 141 | Type=0 142 | Enabled=0 143 | [pcbnew/Layer.In19.Cu] 144 | Name=In19.Cu 145 | Type=0 146 | Enabled=0 147 | [pcbnew/Layer.In20.Cu] 148 | Name=In20.Cu 149 | Type=0 150 | Enabled=0 151 | [pcbnew/Layer.In21.Cu] 152 | Name=In21.Cu 153 | Type=0 154 | Enabled=0 155 | [pcbnew/Layer.In22.Cu] 156 | Name=In22.Cu 157 | Type=0 158 | Enabled=0 159 | [pcbnew/Layer.In23.Cu] 160 | Name=In23.Cu 161 | Type=0 162 | Enabled=0 163 | [pcbnew/Layer.In24.Cu] 164 | Name=In24.Cu 165 | Type=0 166 | Enabled=0 167 | [pcbnew/Layer.In25.Cu] 168 | Name=In25.Cu 169 | Type=0 170 | Enabled=0 171 | [pcbnew/Layer.In26.Cu] 172 | Name=In26.Cu 173 | Type=0 174 | Enabled=0 175 | [pcbnew/Layer.In27.Cu] 176 | Name=In27.Cu 177 | Type=0 178 | Enabled=0 179 | [pcbnew/Layer.In28.Cu] 180 | Name=In28.Cu 181 | Type=0 182 | Enabled=0 183 | [pcbnew/Layer.In29.Cu] 184 | Name=In29.Cu 185 | Type=0 186 | Enabled=0 187 | [pcbnew/Layer.In30.Cu] 188 | Name=In30.Cu 189 | Type=0 190 | Enabled=0 191 | [pcbnew/Layer.B.Cu] 192 | Name=B.Cu 193 | Type=0 194 | Enabled=1 195 | [pcbnew/Layer.B.Adhes] 196 | Enabled=1 197 | [pcbnew/Layer.F.Adhes] 198 | Enabled=1 199 | [pcbnew/Layer.B.Paste] 200 | Enabled=1 201 | [pcbnew/Layer.F.Paste] 202 | Enabled=1 203 | [pcbnew/Layer.B.SilkS] 204 | Enabled=1 205 | [pcbnew/Layer.F.SilkS] 206 | Enabled=1 207 | [pcbnew/Layer.B.Mask] 208 | Enabled=1 209 | [pcbnew/Layer.F.Mask] 210 | Enabled=1 211 | [pcbnew/Layer.Dwgs.User] 212 | Enabled=1 213 | [pcbnew/Layer.Cmts.User] 214 | Enabled=1 215 | [pcbnew/Layer.Eco1.User] 216 | Enabled=1 217 | [pcbnew/Layer.Eco2.User] 218 | Enabled=1 219 | [pcbnew/Layer.Edge.Cuts] 220 | Enabled=1 221 | [pcbnew/Layer.Margin] 222 | Enabled=1 223 | [pcbnew/Layer.B.CrtYd] 224 | Enabled=1 225 | [pcbnew/Layer.F.CrtYd] 226 | Enabled=1 227 | [pcbnew/Layer.B.Fab] 228 | Enabled=1 229 | [pcbnew/Layer.F.Fab] 230 | Enabled=1 231 | [pcbnew/Layer.Rescue] 232 | Enabled=0 233 | [pcbnew/Netclasses] 234 | [pcbnew/Netclasses/Default] 235 | Name=Default 236 | Clearance=0.2 237 | TrackWidth=0.25 238 | ViaDiameter=0.8 239 | ViaDrill=0.4 240 | uViaDiameter=0.3 241 | uViaDrill=0.1 242 | dPairWidth=0.2 243 | dPairGap=0.25 244 | dPairViaGap=0.25 245 | -------------------------------------------------------------------------------- /motor_pcb/linear actuator/sym-lib-table: -------------------------------------------------------------------------------- 1 | (sym_lib_table 2 | (lib (name "linear actuator")(type Legacy)(uri "${KIPRJMOD}/linear actuator.lib")(options "")(descr "")) 3 | ) 4 | -------------------------------------------------------------------------------- /motor_pcb/motor_pcb.py: -------------------------------------------------------------------------------- 1 | # kicad script for generating the motor 2 | 3 | import pcbnew 4 | 5 | board = pcbnew.GetBoard() 6 | 7 | layertable = {} 8 | 9 | for i in range(100): 10 | name = board.GetLayerName(i) 11 | if name != "BAD INDEX!": 12 | layertable[name] = i 13 | 14 | offset_x = 50 + (150 - 9.5 * (15 + 2/3)) / 2 15 | offset_y = 122 16 | 17 | 18 | def draw_via(x, y, net): 19 | v = pcbnew.PCB_VIA(board) 20 | v.SetPosition(pcbnew.wxPoint(int(1e6 * x), int(1e6 * y))) 21 | v.SetDrill(int(1e6 * 0.25)) 22 | v.SetWidth(int(1e6 * 0.5)) 23 | net = board.GetNetcodeFromNetname(net) 24 | v.SetNetCode(net) 25 | board.Add(v) 26 | 27 | 28 | def draw_via_rect(net, x1, y1, x2, y2): 29 | via_size = 0.5 30 | width = abs(x2 - x1) 31 | height = abs(y2 - y1) 32 | 33 | w_count = int(width / via_size) 34 | h_count = int(height / via_size) 35 | 36 | w_offset = (width - w_count * via_size) / 2 37 | h_offset = (height - h_count * via_size) / 2 38 | 39 | for i in range(w_count): 40 | for j in range(h_count): 41 | draw_via(offset_x + min(x1, x2) + w_offset + (i + 0.5) * via_size, 42 | offset_y + min(y1, y2) + h_offset + (j + 0.5) * via_size, 43 | net) 44 | 45 | 46 | def draw_rect(layer, net, x1, y1, x2, y2): 47 | x1 = int(1e6 * (x1 + offset_x)) 48 | x2 = int(1e6 * (x2 + offset_x)) 49 | y1 = int(1e6 * (y1 + offset_y)) 50 | y2 = int(1e6 * (y2 + offset_y)) 51 | 52 | motor_net = board.GetNetcodeFromNetname(net) 53 | area = board.AddArea(None, motor_net, layertable[layer], pcbnew.wxPoint(x1, y1), pcbnew.ZONE_FILL_MODE_POLYGONS) 54 | 55 | outline = area.Outline() 56 | 57 | # outline.Append(x1, y1) 58 | outline.Append(x2, y1) 59 | outline.Append(x2, y2) 60 | outline.Append(x1, y2) 61 | 62 | 63 | def draw_rects(layers, net, x1, y1, x2, y2): 64 | for l in layers: 65 | draw_rect(l, net, x1, y1, x2, y2) 66 | 67 | 68 | phase_idx = { 69 | 0: "U", 70 | 1: "W", 71 | 2: "V", 72 | } 73 | 74 | phase_to_layer = { 75 | 0: "B.Cu", 76 | 1: "In1.Cu", 77 | 2: "In2.Cu", 78 | } 79 | 80 | def draw_motor(): 81 | phase_width = 9.5 82 | end_turn_width = 2 83 | motor_length = 50 84 | trace_space = 0.2 85 | 86 | total_end_turn_width = end_turn_width * 3 87 | 88 | trace_total = phase_width / 3 89 | trace_width = phase_width / 3 - trace_space 90 | 91 | motor_turns = 16 92 | 93 | for i in range(motor_turns): 94 | phase_start = i * phase_width 95 | for j in range(3): 96 | if i == 0 and j == 1: 97 | continue 98 | 99 | if i == motor_turns - 1 and j != 1: 100 | continue 101 | 102 | net = f"/{phase_idx[j]}/MOTOR" 103 | 104 | draw_rects(["F.Cu", "In1.Cu", "In2.Cu", "B.Cu"], net, 105 | phase_start + trace_total * j, 106 | 0, 107 | phase_start + trace_width + trace_total * j, 108 | motor_length) 109 | 110 | # draw poly on top 111 | draw_rects([phase_to_layer[j]], net, 112 | phase_start + trace_total * j, 113 | 1, 114 | phase_start + trace_width + trace_total * j, 115 | -total_end_turn_width) 116 | 117 | # draw poly on bottom 118 | draw_rects([phase_to_layer[j]], net, 119 | phase_start + trace_total * j, 120 | motor_length - 1, 121 | phase_start + trace_width + trace_total * j, 122 | motor_length + total_end_turn_width) 123 | 124 | if (i % 2 == 1 and i not in [0, motor_turns - 1]) != (j == 1): 125 | draw_rects([phase_to_layer[j]], net, 126 | phase_start + trace_total * j, 127 | -trace_space, 128 | phase_start + trace_width + trace_total * (j + 3), 129 | -total_end_turn_width) 130 | 131 | else: 132 | draw_rects([phase_to_layer[j]], net, 133 | phase_start + trace_total * j, 134 | motor_length + trace_space, 135 | phase_start + trace_width + trace_total * (j + 3), 136 | motor_length + total_end_turn_width) 137 | 138 | draw_via_rect(net, 139 | phase_start + trace_total * j, 140 | 0, 141 | phase_start + trace_width + trace_total * j, 142 | 5) 143 | draw_via_rect(net, 144 | phase_start + trace_total * j, 145 | motor_length, 146 | phase_start + trace_width + trace_total * j, 147 | motor_length - 5) 148 | 149 | 150 | draw_motor() 151 | 152 | pcbnew.Refresh() 153 | -------------------------------------------------------------------------------- /motor_pcb/readme.md: -------------------------------------------------------------------------------- 1 | # PCB schematics and layouts 2 | 3 | ## Linear actuator 4 | 5 | First version of the fully integrated linear actuator. 6 | 7 | ### Errata 8 | 9 | - a few analog pins are not connected to analog inputs... 10 | - encoder is not lined up with quadrature tracks (quadrature phase is not 90 degrees) 11 | 12 | ## Linear actuator 2 13 | 14 | Second version, manufactured with 2 oz of copper. 15 | 16 | ### Errata 17 | 18 | - there is a mistake with the motor windings, with the windings being abcABC instead of aBcAbC 19 | - BOM forgot a part (diode for buck + misc power) 20 | - Footprint for photodiodes are not ideal 21 | - Encoder is not lined up with quadrature tracks (quadrature phase is not 90 degrees) 22 | 23 | Otherwise, works fine! -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # Linear Actuator Hardware 2 | 3 | A fully integrated PCB linear actuator, with the motor driver, encoder and motor all on a single PCB. All designs are 4 | open source: 5 | 6 | - [Firmware and host software](https://github.com/kingoflolz/linear-actuator-firmware) 7 | - [Blog post with commentary](https://benwang.dev/2022/08/09/PCB-Linear-Actuator.html) 8 | 9 | Files in this repository are licensed under the Apache-2.0 license -------------------------------------------------------------------------------- /simulator/Untitledtest.fem: -------------------------------------------------------------------------------- 1 | [Format] = 4.0 2 | [Frequency] = 0 3 | [Precision] = 1e-008 4 | [MinAngle] = 30 5 | [DoSmartMesh] = 1 6 | [Depth] = 1 7 | [LengthUnits] = millimeters 8 | [ProblemType] = planar 9 | [Coordinates] = cartesian 10 | [ACSolver] = 0 11 | [PrevType] = 0 12 | [PrevSoln] = "" 13 | [Comment] = "Add comments here." 14 | [PointProps] = 0 15 | [BdryProps] = 10 16 | 17 | = "dirichlet" 18 | = 0 19 | = 0 20 | = 0 21 | = 0 22 | = 0 23 | = 0 24 | = 0 25 | = 0 26 | = 0 27 | = 0 28 | = 0 29 | = 0 30 | = 0 31 | 32 | 33 | = "apb1" 34 | = 5 35 | = 0 36 | = 0 37 | = 0 38 | = 0 39 | = 0 40 | = 0 41 | = 0 42 | = 0 43 | = 0 44 | = 0 45 | = 0 46 | = 0 47 | 48 | 49 | = "apb2" 50 | = 5 51 | = 0 52 | = 0 53 | = 0 54 | = 0 55 | = 0 56 | = 0 57 | = 0 58 | = 0 59 | = 0 60 | = 0 61 | = 0 62 | = 0 63 | 64 | 65 | = "apb3" 66 | = 5 67 | = 0 68 | = 0 69 | = 0 70 | = 0 71 | = 0 72 | = 0 73 | = 0 74 | = 0 75 | = 0 76 | = 0 77 | = 0 78 | = 0 79 | 80 | 81 | = "apb4" 82 | = 5 83 | = 0 84 | = 0 85 | = 0 86 | = 0 87 | = 0 88 | = 0 89 | = 0 90 | = 0 91 | = 0 92 | = 0 93 | = 0 94 | = 0 95 | 96 | 97 | = "apb5" 98 | = 5 99 | = 0 100 | = 0 101 | = 0 102 | = 0 103 | = 0 104 | = 0 105 | = 0 106 | = 0 107 | = 0 108 | = 0 109 | = 0 110 | = 0 111 | 112 | 113 | = "apb6" 114 | = 5 115 | = 0 116 | = 0 117 | = 0 118 | = 0 119 | = 0 120 | = 0 121 | = 0 122 | = 0 123 | = 0 124 | = 0 125 | = 0 126 | = 0 127 | 128 | 129 | = "apb7" 130 | = 5 131 | = 0 132 | = 0 133 | = 0 134 | = 0 135 | = 0 136 | = 0 137 | = 0 138 | = 0 139 | = 0 140 | = 0 141 | = 0 142 | = 0 143 | 144 | 145 | = "apb8" 146 | = 5 147 | = 0 148 | = 0 149 | = 0 150 | = 0 151 | = 0 152 | = 0 153 | = 0 154 | = 0 155 | = 0 156 | = 0 157 | = 0 158 | = 0 159 | 160 | 161 | = "apb9" 162 | = 5 163 | = 0 164 | = 0 165 | = 0 166 | = 0 167 | = 0 168 | = 0 169 | = 0 170 | = 0 171 | = 0 172 | = 0 173 | = 0 174 | = 0 175 | 176 | [BlockProps] = 4 177 | 178 | = "N40" 179 | = 1.05 180 | = 1.05 181 | = 969969 182 | = 0 183 | = 0 184 | = 0 185 | = 0.66700000000000004 186 | = 0 187 | = 0 188 | = 0 189 | = 0 190 | = 0 191 | = 1 192 | = 0 193 | = 0 194 | = 0 195 | 196 | 197 | = "1018 Steel" 198 | = 529 199 | = 529 200 | = 0 201 | = 0 202 | = 0 203 | = 0 204 | = 5.7999999999999998 205 | = 0 206 | = 20 207 | = 0 208 | = 0 209 | = 0 210 | = 1 211 | = 0 212 | = 0 213 | = 13 214 | 0 0 215 | 0.25030000000000002 238.73249999999999 216 | 0.92500000000000004 795.77499999999998 217 | 1.25 1591.55 218 | 1.3899999999999999 2387.3249999999998 219 | 1.5249999999999999 3978.875 220 | 1.71 7957.75 221 | 1.8700000000000001 15915.5 222 | 1.9550000000000001 23873.25 223 | 2.02 39788.75 224 | 2.1099999999999999 79577.5 225 | 2.2250000000000001 159155 226 | 2.4300000000000002 318310 227 | 228 | 229 | = "Air" 230 | = 1 231 | = 1 232 | = 0 233 | = 0 234 | = 0 235 | = 0 236 | = 0 237 | = 0 238 | = 0 239 | = 0 240 | = 0 241 | = 0 242 | = 1 243 | = 0 244 | = 0 245 | = 0 246 | 247 | 248 | = "Copper" 249 | = 1 250 | = 1 251 | = 0 252 | = 0 253 | = 0 254 | = 0 255 | = 58 256 | = 0 257 | = 0 258 | = 0 259 | = 0 260 | = 0 261 | = 1 262 | = 0 263 | = 0 264 | = 0 265 | 266 | [CircuitProps] = 6 267 | 268 | = "circuit1" 269 | = 4.9999999999999991 270 | = 0 271 | = 1 272 | 273 | 274 | = "circuit2" 275 | = 4.9999999999999991 276 | = 0 277 | = 1 278 | 279 | 280 | = "circuit3" 281 | = 10 282 | = 0 283 | = 1 284 | 285 | 286 | = "circuit4" 287 | = 10 288 | = 0 289 | = 1 290 | 291 | 292 | = "circuit5" 293 | = 4.9999999999999991 294 | = 0 295 | = 1 296 | 297 | 298 | = "circuit6" 299 | = 4.9999999999999991 300 | = 0 301 | = 1 302 | 303 | [NumPoints] = 44 304 | 0 1.3 0 0 305 | 10 1.3 0 0 306 | 0 2.8799999999999999 0 0 307 | 10 2.8799999999999999 0 0 308 | 0 -1.3 0 0 309 | 10 -1.3 0 0 310 | 0 -2.8799999999999999 0 0 311 | 10 -2.8799999999999999 0 0 312 | 0 5.8799999999999999 0 0 313 | 10 5.8799999999999999 0 0 314 | 0 -5.8799999999999999 0 0 315 | 10 -5.8799999999999999 0 0 316 | 0 10.879999999999999 0 0 317 | 10 10.879999999999999 0 0 318 | 0 -10.879999999999999 0 0 319 | 10 -10.879999999999999 0 0 320 | 0 0.83500000000000008 0 0 321 | 0 -0.83500000000000008 0 0 322 | 10 0.83500000000000008 0 0 323 | 10 -0.83500000000000008 0 0 324 | 0.10000000000000009 0.80000000000000004 0 0 325 | 3.2333333333333334 0.80000000000000004 0 0 326 | 0.10000000000000009 0.83500000000000008 0 0 327 | 3.2333333333333334 0.83500000000000008 0 0 328 | 0.10000000000000009 -0.80000000000000004 0 0 329 | 3.2333333333333334 -0.80000000000000004 0 0 330 | 0.10000000000000009 -0.83500000000000008 0 0 331 | 3.2333333333333334 -0.83500000000000008 0 0 332 | 3.4333333333333336 0.80000000000000004 0 0 333 | 6.5666666666666664 0.80000000000000004 0 0 334 | 3.4333333333333336 0.83500000000000008 0 0 335 | 6.5666666666666664 0.83500000000000008 0 0 336 | 3.4333333333333336 -0.80000000000000004 0 0 337 | 6.5666666666666664 -0.80000000000000004 0 0 338 | 3.4333333333333336 -0.83500000000000008 0 0 339 | 6.5666666666666664 -0.83500000000000008 0 0 340 | 6.7666666666666675 0.80000000000000004 0 0 341 | 9.9000000000000004 0.80000000000000004 0 0 342 | 6.7666666666666675 0.83500000000000008 0 0 343 | 9.9000000000000004 0.83500000000000008 0 0 344 | 6.7666666666666675 -0.80000000000000004 0 0 345 | 9.9000000000000004 -0.80000000000000004 0 0 346 | 6.7666666666666675 -0.83500000000000008 0 0 347 | 9.9000000000000004 -0.83500000000000008 0 0 348 | [NumSegments] = 50 349 | 0 1 -1 0 0 0 350 | 2 0 -1 4 0 0 351 | 3 2 -1 0 0 0 352 | 1 3 -1 4 0 0 353 | 4 5 -1 0 0 0 354 | 6 4 -1 7 0 0 355 | 7 6 -1 0 0 0 356 | 5 7 -1 7 0 0 357 | 8 2 -1 3 0 0 358 | 9 8 -1 0 0 0 359 | 3 9 -1 3 0 0 360 | 10 6 -1 6 0 0 361 | 11 10 -1 0 0 0 362 | 7 11 -1 6 0 0 363 | 12 8 -1 2 0 0 364 | 13 9 -1 2 0 0 365 | 14 10 -1 5 0 0 366 | 15 11 -1 5 0 0 367 | 12 13 -1 1 0 0 368 | 14 15 -1 1 0 0 369 | 16 17 -1 8 0 0 370 | 18 19 -1 8 0 0 371 | 16 0 -1 9 0 0 372 | 18 1 -1 9 0 0 373 | 17 4 -1 10 0 0 374 | 19 5 -1 10 0 0 375 | 20 21 -1 0 0 1 376 | 22 20 -1 0 0 1 377 | 23 22 -1 0 0 1 378 | 21 23 -1 0 0 1 379 | 24 25 -1 0 0 1 380 | 26 24 -1 0 0 1 381 | 27 26 -1 0 0 1 382 | 25 27 -1 0 0 1 383 | 28 29 -1 0 0 1 384 | 30 28 -1 0 0 1 385 | 31 30 -1 0 0 1 386 | 29 31 -1 0 0 1 387 | 32 33 -1 0 0 1 388 | 34 32 -1 0 0 1 389 | 35 34 -1 0 0 1 390 | 33 35 -1 0 0 1 391 | 36 37 -1 0 0 1 392 | 38 36 -1 0 0 1 393 | 39 38 -1 0 0 1 394 | 37 39 -1 0 0 1 395 | 40 41 -1 0 0 1 396 | 42 40 -1 0 0 1 397 | 43 42 -1 0 0 1 398 | 41 43 -1 0 0 1 399 | [NumArcSegments] = 0 400 | [NumHoles] = 0 401 | [NumBlockLabels] = 13 402 | 5 2.0899999999999999 1 -1 0 90 0 1 0 403 | 5 -2.0899999999999999 1 -1 0 90 0 1 0 404 | 5 4.3799999999999999 2 -1 0 0 0 1 0 405 | 5 -4.3799999999999999 2 -1 0 0 0 1 0 406 | 5 0 3 -1 0 0 0 1 0 407 | 5 8.379999999999999 3 -1 0 0 0 1 0 408 | 5 -8.379999999999999 3 -1 0 0 0 1 0 409 | 1.6666666666666667 0.81750000000000012 4 -1 1 0 0 1 0 410 | 1.6666666666666667 -0.81750000000000012 4 -1 2 0 0 1 0 411 | 5 0.81750000000000012 4 -1 3 0 0 1 0 412 | 5 -0.81750000000000012 4 -1 4 0 0 1 0 413 | 8.3333333333333339 0.81750000000000012 4 -1 5 0 0 1 0 414 | 8.3333333333333339 -0.81750000000000012 4 -1 6 0 0 1 0 415 | -------------------------------------------------------------------------------- /simulator/femmoutfiletest: -------------------------------------------------------------------------------- 1 | -0.01178182527987725 2 | -0.02402021735554313 3 | -------------------------------------------------------------------------------- /simulator/idtestn0.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kingoflolz/linear-actuator-hardware/2bdb52dbd99c4ef4cfaba9ae22e7d30c92c92029/simulator/idtestn0.bmp -------------------------------------------------------------------------------- /simulator/readme.md: -------------------------------------------------------------------------------- 1 | # Magnetics Simulator 2 | 3 | A python interface for [FEMM](https://www.femm.info/wiki/HomePage) which is used to implement a simulation for the linear actuator. --------------------------------------------------------------------------------