I'm using the eagle autorouter to route my PCB because it makes cleaner tracks than if I did it myself. One problem I have is that sometimes it insists on attempting to make the same connection over and over again even though in the end the connection is not optimal (and I know this because on some routing attempts, I scored 100%). I'd rather block these bad attempts so that routing can complete faster.

Could I somehow block it by drawing a line to act as a "fence" so that routed tracks can't go through it? If so, what line and what layer? or is this even possible?

  • 4
    \$\begingroup\$ Simple answer: Don't use the autorouter. There are other possibilities, routing some tracks manually then auto the rest, use keep-outs, etc. but the best way is to just stop autorouting. \$\endgroup\$ Commented Dec 9, 2016 at 20:16
  • \$\begingroup\$ Didn't you already ask this question before? \$\endgroup\$
    – DerStrom8
    Commented Dec 9, 2016 at 20:29

2 Answers 2


To actually answer your question...

In the board editor, go to layers 'tRestrict' and 'bRestrict'. With these layers selected, you can draw polygons that restrict traces from certain areas on the top and bottom layers respectively. The auto-router will then not place traces in the areas you specify.

  • \$\begingroup\$ oh. so I'm gonna take it that bRestrict stands for bottom restrict? ... P.S. your answer works for me. I'll play around with that feature. \$\endgroup\$
    – user116345
    Commented Dec 9, 2016 at 21:53
  • \$\begingroup\$ Correct. tRestrict and bRestrict allow you to set areas where traces shouldn't exist. tKeepout and bKeepout allow you to specify areas where components shouldn't exist. This is a useful feature for when you run the DRC (design rules check), which will flag any policies you violate. The autorouter tool also follows these policies you set. \$\endgroup\$
    – Izzo
    Commented Dec 9, 2016 at 21:54
  • \$\begingroup\$ From my experience because of the restrictions sometimes autorouter goes crazy and starts routing outside of dimensions. \$\endgroup\$
    – Anonymous
    Commented Dec 12, 2016 at 7:13

I was also going to write what Roger advised. I tried to use autorouter several times, and was not satisfied with its results. Thus I decided to route boards manually. For some reason, it drives me because I see the result of my work, and I like it. First manually routed boards were far from perfect, but you will find out how to make them well, just studying other's designs.

This is about using autorouter.

Back to your question - there're several settings for autorouter, and sometimes I see questions on how to make it route in specific way, and even kind of bug reports aurotouter not performing as expected. These questions are rarely (if never) answered. I think you should get better result asking in element14 community, or applying for EAGLE support. I applied to them several times in the past, and must say they have (had) decent support.

Now about resolving the issue of routing the board. You can auto-route it, and you can route it manually. But before you route, you need to place components properly on the board so that routing would be minimally painful. For this purpose you can use autorouter - run it and see how you like its results. With third try of rearranging components on the board you may have some idea how your board can be routed more or less optimally.

And then, when you fixed component layout, you can

  • use autorouter and then just correct / move tracks you do not like manually;
  • do not use autorouter any more, but do the task manually, and it will be much simpler because you have an idea of routing already.

You should know one thing (at least it is valid for version of EAGLE I use) - that autorouting can not be redone with Ctrl-Z. Before autorouting, always save the project. If autorouting failed, just reload the project.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.