Eagle2Freerouter, replacing brd_to_dsn.ulp

Get support from us or from other users of the router.

Eagle2Freerouter, replacing brd_to_dsn.ulp

Postby Elco » Mon Apr 01, 2013 11:49 am

This topic is for comments and questions for Eagle2Freerouter.ulp, a new modular converter from Eagle boards to the SPECCTRA DSN format compatible with Freerouting.
See the announcement in the 'news' forum.

The design also supports using a circle (Eagle Circle command) as board dimension, and multiple non overlapping board contours that are routed simultaneously. See the user guide.

A new version is available (30 Sept 2013) which fixes two bugs:
- Correct dsn file name generation on MacBook Pro
- Settings for component outline drawing in the ULP. Outline = 0 (default): no outlines, 1 = approximate outlines generated by connecting individual lines, 2 = draw all lines individually.
Component outlines have no influence on routing, they are just nice to see where the package sits. However some components have so many lines that it blocks Freerouter.
Attachments
eagle2freerouter19-apr-2014.zip
Bugfix to correct PAD size on a single layer board with only the bottom layer used
(12.91 KiB) Downloaded 461 times
eagle2freerouter-30-sept-2013.zip
Prior version. Will manually route if the board has only one layer defined, but not start the autorouter unless a via is present.
(12.41 KiB) Downloaded 406 times
Last edited by Elco on Sat Apr 19, 2014 2:33 pm, edited 24 times in total.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter update 13 April

Postby Elco » Sat Apr 13, 2013 3:15 pm

Update 13-04-2013: Added generation of correct shape for rectangular SMD pads with rotation and a roundness factor.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, update 27 April

Postby Elco » Sat Apr 27, 2013 1:07 pm

Fix: If the board name contained spaces, the script file that restarts the Eagle2Freerouter ULP would generate an incorrect RUN command, preventing a restart.
Fix: incorrect size generation of square pads.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, replacing brd_to_dsn.ulp

Postby Elco » Fri May 03, 2013 3:14 pm

Update May 3:

- Completion message added
- Fixed a rotation error for Trough-hole PADs.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, update 6 may 2013

Postby Elco » Mon May 06, 2013 2:10 pm

Selective locking features added by modifying parameters in the top of the ULP code. The autorouter will not move the locked parts.

int wire_protect = 0; set to 1 to lock all drawn wires before routing.
To protect individual wires, set the style of those wires to WIRE_STYLE_SHORTDASH in Eagle.

string via_protect = ""; protect via's with listed signals, eg "GND, N$1, V5", or "*" for all
For instance: via_protect = "GND" will lock all via's inserted in the GND plane (if they have been set to signal GND), and protects them from removal by the router.

string poly_protect = ""; protect polygons with listed signals, eg "GND, N$1", or "*" for all
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, May 8 update, full functionality

Postby Elco » Wed May 08, 2013 10:50 am

This version has a few fixes (orientation TH pads) and includes the ability to specify layer specific restrict (keepout) areas for vias and wires. This is useful to prevent auto routing to breakup polygons (protecting a polygon will not prevent wiring to cut it up).

Draw the layer specific restrict information (as polygons, rectangles or circles) in a user layer (between layer 110 and 120, range can be set in the ULP). Name the layer with 'wire_restrict_layer=XX' , where XX is the intended signal layer. The same for 'via_restrict_layer'.
For instance layer 110: 'wire_restrict_layer=12'
(If the name does not contain 'wire_restrict_layer' or if layer 12 does not exist, this information is ignored). For details see the comments in the ULP.

The generated script file will update the Eagle Board, which can be further edited in Eagle as usual.

This completes the intended functionality of this DSN converter. Let me know if you find problems or look for additional functionality.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, version 29 May 2013

Postby Elco » Wed May 29, 2013 3:21 pm

This version has a major fix: Setting the DSN resolution correctly to avoid tiny airwires when using a mixture of components using metric and imperial grids.
Also the parameter drop_poly is added, allowing named polygons to be ignored while routing. This prevents these polygons to break continuity (and generate airwires)
when they are restored when loading the output script back into Eagle. This works great for polygons that provide power or ground planes.
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, replacing brd_to_dsn.ulp

Postby BambiB » Mon Jul 29, 2013 4:32 pm

On a Mac (MacBook Pro OS 10.75) the line (line #976 of the current version):

Code: Select all
dlgFileSave("DSN description of " + B.name, default_file, "*.dsn");


in the Eagle2Freerouter ULP causes the conversion to end with no .dsn file created. Apparently there's some problem with the Eagle dlgFileSave function.

You can replace this line with something like:

Code: Select all
Output_file =B.name+".dsn";


Which will cause the dsn file to be written using the source file's name with the .dsn suffix.
BambiB
 
Posts: 1
Joined: Mon Jul 29, 2013 4:19 pm

Re: Eagle2Freerouter, replacing brd_to_dsn.ulp

Postby Elco » Fri Aug 02, 2013 6:25 pm

Thanks for the update.
Will include that in the next release.
Elco
Elco
 
Posts: 38
Joined: Wed Dec 21, 2011 4:15 pm

Re: Eagle2Freerouter, replacing brd_to_dsn.ulp

Postby newhobby » Tue Aug 06, 2013 5:05 pm

I just downloaded the DSN a couple days ago and used it for the first time.
Thanks for taking on the project :)
I was tired of converting my circles into squares before generating DSN.
Anyway, I made a DSN, which imported just fine on the freerouting app, but I still got the really tiny air wires mentioned on a previous post.
Did I not use it correctly?
newhobby
 
Posts: 7
Joined: Tue Jan 31, 2012 4:47 am

Next

Return to Technical Support

Who is online

Users browsing this forum: No registered users and 1 guest

cron