diff --git a/src/freeroute/cli.py b/src/freeroute/cli.py index bbfdc80..db2f5fd 100644 --- a/src/freeroute/cli.py +++ b/src/freeroute/cli.py @@ -113,10 +113,10 @@ def build_parser() -> argparse.ArgumentParser: parser.add_argument( "--grid-resolution", type=int, - default=1, + default=None, metavar="K", - help="grid and exact engines: cells K times finer than trace + clearance " - "(default 1); 2 or more reaches fine-pitch pins, at some cost in time", + help="grid and exact engines: cells K times finer than trace + clearance; " + "default 2 for exact (reaches 0.5 mm pitch pins), 1 for grid", ) parser.add_argument( "--heuristic-weight", @@ -182,7 +182,7 @@ def main(argv: list[str] | None = None) -> int: rip_up=rip_up, max_passes=max_passes, edge_clearance_mm=args.edge_clearance, - resolution=args.grid_resolution, + resolution=2 if args.grid_resolution is None else args.grid_resolution, heuristic_weight=args.heuristic_weight, ) elif args.engine == "room": @@ -193,7 +193,8 @@ def main(argv: list[str] | None = None) -> int: else: result = build_routing_result( dsn, layers=layers, rip_up=rip_up, max_passes=max_passes, - edge_clearance_mm=args.edge_clearance, resolution=args.grid_resolution, + edge_clearance_mm=args.edge_clearance, + resolution=1 if args.grid_resolution is None else args.grid_resolution, ) ses_text = write_ses(dsn, result)