Author Topic: Is the latest Eagle any better at differential routing?  (Read 11793 times)

0 Members and 1 Guest are viewing this topic.

Offline KE5FX

  • Super Contributor
  • ***
  • Posts: 1876
  • Country: us
    • KE5FX.COM
Re: Is the latest Eagle any better at differential routing?
« Reply #25 on: December 13, 2017, 10:31:04 pm »
What are the CS file formats like?  The one thing that EAGLE did right, the thing that makes it hard to switch away from, is their XML format. 

I'll go so far as to say I'll never again adopt a CAD tool that doesn't use a human-editable text-based format.

Not sure, but I have also never made any real use of Eagle's XML format either. How do you see that as a feature?

Just as a few examples off the top of my head:
  • Having always done diff-pair routing manually in the past, I decided to try the meander command out for the first time when you raised the question.  My work-in-progress has 128 signal lines, so going back and renaming every one of them with _N and _P suffixes would have been time-consuming.  Instead, I just pulled up the .brd and .sch files in a text editor and did the job instantly with a simple search/replace macro.
  • The same technique comes in handy for error-free replication of multi-pin connectors and buses -- just copy the component instance and rename the lines from ADC0_xxx to ADC1_xxx, or whatever.
  • My homebrew BOM generator tool works by loading the project's .sch file, enumerating the parts, and cross-referencing them against a master parts database.  Lots of people have written BOM tools in EAGLE's scripting language, but my particular tool is really a small-scale enterprise resource planning app.  It has to interact with other tools and applications, generate Excel spreadsheets, that sort of thing.  Direct access to the .sch data hierarchy from an external C/C++ application is a must.
  • The EAGLE authors have made several half-baked attempts at hierarchical design and layout reuse, but as far as I'm aware, they are still nowhere near ready for prime time.  As with my ERP tools, I was able to write a custom tool to do exactly what I needed, again without wasting time with a proprietary scripting language.
  • I've lost track of the number of times I've cut and pasted schematic sections from one design to another, only to realize later that I've made my design dependent on random libraries scattered all over the place.  It only takes a few minutes in a text editor to change all of the .sch and .brd files to refer to the same parts in my project-specific .lbr file.  I've never found an officially-supported way to do that other than by manually replacing each individual part.
Many of these shenanigans wouldn't be necessary in a better-engineered application, but I'm well aware that other EDA packages have quirks and annoyances of their own.  EAGLE figuratively gave itself a new lease on life with the XML format, and now that they literally insist on leasing it, I need to move to a new tool with similar capabilities.  An open file format is definitely a requirement, now that I've personally seen how important it is.
« Last Edit: December 13, 2017, 10:38:14 pm by KE5FX »
 

Offline rachaelp

  • Supporter
  • ****
  • Posts: 156
  • Country: gb
Re: Is the latest Eagle any better at differential routing?
« Reply #26 on: December 13, 2017, 10:31:25 pm »
Not sure, but I have also never made any real use of Eagle's XML format either. How do you see that as a feature?

There are a few advantages of the XML file format:

1) If for any reason you needed to migrate data to another system, with it being in XML format its far easier to parse and extract the relevant data. From this perspective it's more about future proofing your data. If it's in some proprietary binary format, you're a lot more stuck to transfer your data elsewhere.

2) It makes it easier to write utilities to integrate EAGLE into other parts of your system.

3) If for some reason there is a corruption in the file causing a error, it is possible to open, edit and manually fix the issue.

4) If you want to create a new library with a large number of components, say with a known range of values, then you can do this more easily by either using a text editor or writing a utility to generate the .lbr file with all the parts with all the values. E.g. a comprehensive passives library with a number of parts in a range of packages and standard values.

5) Version control systems work with XML files. I use GIT extensively and I can use it with EAGLE files easily.

There are probably other advantages too which I haven't thought of right now.

Best Regards,

Rachael
I have a weakness for Test Equipment so can often be found having a TEA break (https://www.eevblog.com/forum/chat/test-equipment-anonymous-(tea)-group-therapy-thread/)
 

Offline rx8pilotTopic starter

  • Super Contributor
  • ***
  • Posts: 3634
  • Country: us
  • If you want more money, be more valuable.
Re: Is the latest Eagle any better at differential routing?
« Reply #27 on: December 13, 2017, 11:49:22 pm »
Those are legitimate uses - thanks for pointing them out. The XML format and ULP API definitely opens the system for unique solutions and applications. Like you said, the fact you need it implies the software is incomplete and requires the end users to figure out on their own how to get the finish line.

When compared to a solution that does not need special development except for the most extreme corner cases - it looks un-appealing to me. I am VERY thankful for EAGLE since it is what allowed me to get started for a low cost. Altium Designer (at the time) was over $10k and I was a total beginner at PCB layout.

Holding my final thoughts until I have a go with the latest version of Eagle. Like it was mentioned earlier, Autodesk is pouring a considerable effort into it.
Factory400 - the worlds smallest factory. https://www.youtube.com/c/Factory400
 

Offline rachaelp

  • Supporter
  • ****
  • Posts: 156
  • Country: gb
Re: Is the latest Eagle any better at differential routing?
« Reply #28 on: December 14, 2017, 12:06:33 am »
Those are legitimate uses - thanks for pointing them out. The XML format and ULP API definitely opens the system for unique solutions and applications. Like you said, the fact you need it implies the software is incomplete and requires the end users to figure out on their own how to get the finish line.

I look at it like it’s offering me to customise it to work efficiently with my workflow and I can easily make it work in a way that makes me very productive. But this level of commitment to customisation isn’t for everybody. Even so you can definitely use it perfectly well straight out the box once you’ve properly used it.

Other tools aren’t without needing customisation but they make it harder to do it. I used to use DxDesigner and I was incredibly frustrated by the insistence of a 1-to-1 symbol in to package pad relationship. So depending on what package I chose for a FET determined what symbol I used. I wanted standard FET symbols and just be able to map the pins to the appropriate package pads whether it be one or many, and don’t get me started on the stupidly large symbols which were required for power/ground pins on CPUs and FPGAs.... in the end I wrote an entire system external to DxDesigner including a very complicated netlist post-processor to do the mapping based on a load of mapping files which I created as part of my library so that the pins of my sensible symbols were correctly mapped to the correct number of package pads in PADS...

I can’t nelieve how quickly thinking about DxDesigner got me irritated and ranty...., Sorry!  ;D

Best Regards,

Rachael
I have a weakness for Test Equipment so can often be found having a TEA break (https://www.eevblog.com/forum/chat/test-equipment-anonymous-(tea)-group-therapy-thread/)
 

Offline rx8pilotTopic starter

  • Super Contributor
  • ***
  • Posts: 3634
  • Country: us
  • If you want more money, be more valuable.
Re: Is the latest Eagle any better at differential routing?
« Reply #29 on: December 14, 2017, 12:31:59 am »

I can’t nelieve how quickly thinking about DxDesigner got me irritated and ranty...., Sorry!  ;D

Once you have a bad experience with software.....it can boil to near rage. I have a long list of rotten experiences with big $$ professional software that is crap. The vendors go-to solution is always to 'upgrade' to the next level for a pile of cash. Never seems to work.

I have been a Solidworks owner since 1998 - it just works. They are always improving. A couple of bumps here and there, but overall - amazing. I want that same experience for PCB design. Eagle is so close....yet so far.

Subtle things I have noticed (among many) just in an hour.....
Hovering over a net highlights the whole net so you get a visual cue of what your routing needs to do. You can lock 45's and verticals super simple. Exported a STEP file (no random ULP) that went directly into SolidWorks so I could work out the heatsink based on MOSFET locations.

As for diff-pair routing.....still learning obviously. I was able to route easy enough, the setup is easy. The routing is much easier to control overall. Still trying to figure out how to edit/modify a diff-pair afterward. Seems to default to moving a single track although both tracks in the pair are highlighted.

For now, I had to put it away and get back to work. The boards I am working on now are fairly simple, so no major rush. Back to high-speed stuff in a couple of weeks.
Factory400 - the worlds smallest factory. https://www.youtube.com/c/Factory400
 

Offline rachaelp

  • Supporter
  • ****
  • Posts: 156
  • Country: gb
Re: Is the latest Eagle any better at differential routing?
« Reply #30 on: December 14, 2017, 10:13:23 am »

I can’t nelieve how quickly thinking about DxDesigner got me irritated and ranty...., Sorry!  ;D

Once you have a bad experience with software.....it can boil to near rage. I have a long list of rotten experiences with big $$ professional software that is crap. The vendors go-to solution is always to 'upgrade' to the next level for a pile of cash. Never seems to work.

Yeah that was always the problem I found. They won't talk to you until you've upgraded to the latest version but then even if they do agree it's a bug, you likely won't see a fix for a long time. As for feature requests, rather than the developers taking each idea they see on its own merit and deciding whether to implement it, you just get told to "suggest it on the Mentor Ideas website" and you put it there, amongst the literally thousands of other suggestions where it may pick up a few votes until it drops off the first few pages because there are so many suggestions coming in, then it no longer gets seen because people only read the first page or two so no more upvotes and then your out of luck....

I have been a Solidworks owner since 1998 - it just works. They are always improving. A couple of bumps here and there, but overall - amazing. I want that same experience for PCB design. Eagle is so close....yet so far.

Have you registered on the Autodesk EAGLE forums and posted your suggestions for EAGLE improvements over there? The developers and senior management are quite active on that forum as well as Jorge and Ed who always respond to suggestions made there. I've seen a number of things that have been suggested there make it into one of the Autodesk releases so they are listening and acting upon suggestions now.

Subtle things I have noticed (among many) just in an hour.....
Hovering over a net highlights the whole net so you get a visual cue of what your routing needs to do. You can lock 45's and verticals super simple. Exported a STEP file (no random ULP) that went directly into SolidWorks so I could work out the heatsink based on MOSFET locations.

I think Autodesk are concentrating on getting the EAGLE<->Fusion360 integration to be their primary MCAD integration. Once you get a board into Fusion360 though I'm sure you can export it as STEP at this point if you want to go into SolidWorks. I would be happier if the 3D model of the board was created in EAGLE directly by adding STEP files for components and having a 3D view there which could then be exported to Fusion360 for inclusion into a larger mechanical design or alternatively STEP to go elsewhere. I'm hoping it'll move more in that direction.

As for diff-pair routing.....still learning obviously. I was able to route easy enough, the setup is easy. The routing is much easier to control overall. Still trying to figure out how to edit/modify a diff-pair afterward. Seems to default to moving a single track although both tracks in the pair are highlighted.

Yes, the diff pair routing does need some work to make it a polished feature in EAGLE. It could be made less fiddly to draw the pairs in but I think the largest issues are caused when you need to make a change. It's sometimes easier to rip up and re-route. I'm pretty sure they will fix the issues with this though, it seems like quite a major improvement as diff pair routing is quite an important thing for a lot of people.

For now, I had to put it away and get back to work. The boards I am working on now are fairly simple, so no major rush. Back to high-speed stuff in a couple of weeks.

I could do with a few simple boards, my last few have been quite challenging.... 0.5mm BGA's with dual stacked micro-vias, gigabit Ethernet, lots of impedance matching and length matched nets, etc and of course I had crazy deadlines and people harassing and asking me how it was going every 5 minutes!!

Best Regards,

Rachael
I have a weakness for Test Equipment so can often be found having a TEA break (https://www.eevblog.com/forum/chat/test-equipment-anonymous-(tea)-group-therapy-thread/)
 

Offline latigid on

  • Contributor
  • Posts: 23
  • Country: de
Re: Is the latest Eagle any better at differential routing?
« Reply #31 on: December 19, 2017, 11:04:46 pm »
I tried again with differential routing. I could get the MEANDER tool to work by assigning the trace to length match with Ctrl + click. But there was no real benefit: the meander length was essentially arbitrary. Also, it seemed to generate some sort of UNROUTED trace.

In the end, I found it easier to route the pair as individual traces, add meanders manually and check with RUN LENGTH sig1 sig2.
 

Offline rachaelp

  • Supporter
  • ****
  • Posts: 156
  • Country: gb
Re: Is the latest Eagle any better at differential routing?
« Reply #32 on: December 19, 2017, 11:28:11 pm »
I tried again with differential routing. I could get the MEANDER tool to work by assigning the trace to length match with Ctrl + click. But there was no real benefit: the meander length was essentially arbitrary.

The meander length isn't arbitrary unless you don't specify the meander length.

E.g. If you want to length match a bunch of signals on a data bus to 10cm:

GRID mm;
MEANDER 100

Now drag to meander each of data lines and it gives you a percentage for how close to the ideal length and will limit the length at 100%. I recently finished a 10-layer board with lots of impedance matched and length matched traces and it was actually quite quick and easy to get this done.

Best Regards,

Rachael
I have a weakness for Test Equipment so can often be found having a TEA break (https://www.eevblog.com/forum/chat/test-equipment-anonymous-(tea)-group-therapy-thread/)
 
The following users thanked this post: ebastler


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf