From 73a48f1dcb8bbe25221a5df952a36aec301b9f37 Mon Sep 17 00:00:00 2001 From: jaseg Date: Sun, 30 Apr 2023 01:58:30 +0200 Subject: protoserve: Add ALio layout --- gerbonara/cad/protoserve.py | 18 ++++++++- gerbonara/cad/protoserve_data/protoserve.html | 56 +++++++++++++++++++++++++-- 2 files changed, 69 insertions(+), 5 deletions(-) diff --git a/gerbonara/cad/protoserve.py b/gerbonara/cad/protoserve.py index 4a10acc..bcd48ce 100644 --- a/gerbonara/cad/protoserve.py +++ b/gerbonara/cad/protoserve.py @@ -100,7 +100,7 @@ def deserialize(obj, unit): via_dia = mil(float(obj['via_dia'])) trace_width = mil(float(obj['trace_width'])) # Force 1mm margin to avoid shorts when adjacent to planes such as that one in the RF THT proto. - return pb.PatternProtoArea(pitch, pitch, pb.PoweredProto(pitch, hole_dia, clearance, via_size=via_drill, power_pad_dia=via_dia, trace_width=trace_width, unit=unit), margin=1.0, unit=unit) + return pb.PatternProtoArea(pitch, pitch, pb.PoweredProto(pitch, hole_dia, clearance, via_size=via_drill, power_pad_dia=via_dia, trace_width=trace_width, unit=unit), margin=unit(1.0, MM), unit=unit) case 'flower': pitch = mil(float(obj.get('pitch', 2.54))) @@ -111,6 +111,22 @@ def deserialize(obj, unit): case 'spiky': return pb.PatternProtoArea(2.54, 2.54, pb.SpikyProto(), unit=unit) + case 'alio': + pitch = mil(float(obj.get('pitch', 2.54))) + drill = mil(float(obj.get('hole_dia', 0.9))) + clearance = mil(float(obj.get('clearance', 0.3))) + link_pad_width = mil(float(obj.get('link_pad_width', 1.1))) + link_trace_width = mil(float(obj.get('link_trace_width', 0.5))) + via_size = mil(float(obj.get('via_hole_dia', 0.4))) + return pb.PatternProtoArea(pitch, pitch, pb.AlioCell( + pitch=pitch, + drill=drill, + clearance=clearance, + link_pad_width=link_pad_width, + link_trace_width=link_trace_width, + via_size=via_size + ), margin=unit(1.5, MM), unit=unit) + case 'rf': pitch = float(obj.get('pitch', 2.54)) hole_dia = float(obj['hole_dia']) diff --git a/gerbonara/cad/protoserve_data/protoserve.html b/gerbonara/cad/protoserve_data/protoserve.html index 9568718..00b038e 100644 --- a/gerbonara/cad/protoserve_data/protoserve.html +++ b/gerbonara/cad/protoserve_data/protoserve.html @@ -360,10 +360,11 @@ input { SMD area THT area Manhattan area - THT Flower area - Powered THT area - RF THT area - Spiky hybrid area + THT Flower area + Powered THT area + RF THT area + Spiky hybrid area + ALio hybrid area @@ -615,6 +616,53 @@ input { This area has a fixed 100 mil / 2.54 mm pitch. + + +