@@ -139,11 +139,15 @@ def _fpt_uuid(identifier: str) -> str:
139139 drill = LEAD_WIDTH_TO_DRILL [lead_width ]
140140 restring = min (
141141 (0.4 if diameter >= 6.0 else 0.3 ), # preferred restring
142- (pitch - drill - 0.25 ) / 2 ,
142+ (pitch - drill - 0.2 ) / 2 ,
143143 ) # minimum required restring
144144 pad_diameter = drill + (2 * restring ) # outer diameter of pad
145145 courtyard_diameter = diameter + (1.0 if diameter >= 10.0 else 0.8 )
146146
147+ # verify that no library check would fail
148+ assert restring > 0.149999 # minimum pad restring
149+ assert (pitch - pad_diameter ) > 0.199999 # minimum copper clearance
150+
147151 def _generate_fill_polygon (identifier : str , layer : str ) -> Polygon :
148152 polygon = Polygon (
149153 uuid = _fpt_uuid (identifier ),
@@ -488,6 +492,9 @@ def _uuid(identifier: str) -> str:
488492 )
489493 )
490494
495+ # Approve "no parts" warning because it's a generic device
496+ device .add_approval ('(approved no_parts)' )
497+
491498 # write files
492499 device .serialize (path .join ('out' , library , 'dev' ))
493500 print ('Wrote device {}' .format (name ))
@@ -543,7 +550,7 @@ def _uuid(identifier: str) -> str:
543550 lead_width = config ['lead_width' ],
544551 generate_3d_models = generate_3d_models ,
545552 author = 'U. Bruhin' ,
546- version = '0.2 ' ,
553+ version = '0.3 ' ,
547554 create_date = '2019-12-29T14:14:11Z' ,
548555 )
549556 generate_dev (
@@ -553,7 +560,7 @@ def _uuid(identifier: str) -> str:
553560 pitch = config ['pitch' ],
554561 lead_width = config ['lead_width' ],
555562 author = 'U. Bruhin' ,
556- version = '0.1' ,
563+ version = '0.1.1 ' ,
557564 create_date = '2019-12-29T14:14:11Z' ,
558565 )
559566
0 commit comments