Compromised Design Rules in Altium
mstamler , 08-02-2020, 06:50 AM
I have started the Advanced PCB Layout course and am so far pleased with it. One issue has come up that I tried to resolve via the forum without success. For the irex board I downloaded the final open source files and loaded it into Altium 19. I then ran DRC and encountered over 3000 violations. I assume that this is because the design rules are not correct. The question I posted and which I am asking you here is how are the design rules kept together with the project? Unlike Allegro they do not seem to be on a project basis and requires export/import functions. When I downloaded the design files for Lesson 1 I definitely saw that the original Altium defaults were in effect and this caused many violations. Obviously, this is a critical issue. Again, in all of my Allegro project the design files are embedded in the .brd file and are tightly coupled to the project as they should be. What can I do to resolve this issue for the irex design files and for the lesson files of the course? I scanned the entire file tree and found no rules file to import?
If the design rules are not locked with the project and they are somehow compromised because of Altium version differences then this undermines the integrity of the PCB database. I don't know what the solution is but perhaps by exporting and then importing the design rules is it.
In any case the final design files provided for the open source irex boards should include these exported rules file. I believe that this is the reason that there are violations.
Comments?
robertferanec , 08-03-2020, 10:51 AM
Yes, design rules are kept in project. However, there is some incompatibility between Altium versions. Sometimes new rules are introduced or existing rules are adjusted and then opening an old project in latest altium may cause some violations. It should not be complicated to fix - you need to have a look what exactly is causing the violation and adjust or set the rule.
PS: The worst are length tuning rules - altium keeps changing the algoritm to calculate the signal length and this may cause troubles.
WhoKnewKnows , 08-03-2020, 11:22 AM
As a side note, this sort of thing is a failing of Altium. Altium frequently adapts the user's work to newer versions quietly, which I think is irresponsible. Think of how many times you've opened a project in a newer version, saved without warning, then tried to open the same thing with the previous version and received a warning that the file being opened is from a newer version (shame on you if you didn't archive your work somewhere separate). There's a similar responsibly that Altium overlooks when they change design rules functionality.
mstamler , 08-03-2020, 11:16 PM
This particular question goes to the heart of the database integrity of Altium. I never expected that design rules would be compromised by changing versions! This is the holy of holies. Think of the PCB engineer who has inherited a working design and has not contact with the original engineer. Now he gets violations and does not know what to do. It completely undermines the integrity of the tool. If we can't trust the solidity of the design rule database then what can we trust? What other items are compromised?
BTW: This has never, never happened to me in Allegro.
At the very least to help with this two things should be done:
1) Export the design rule file and add it to the files that are posted on line
2) Document what Altium version was used. In this way the original design can be put up with zero violations and that at least is a good starting point.
Can this be done for the irex files?
BR
robertferanec , 08-04-2020, 06:08 AM
Oh, I have seen even worse errors/bugs/"features" in Altium (e.g. bugs in manufacturing outputs).
These are the kind of things why we have been using only 1 version of Altium (AD14) for a very very very long time. I am only updating Altium, because I am recording youtube videos.
PS: I believe, iMX6 Rex was done in AD13 or AD14 (based on the date when gerbers were released)
Use our interactive
Discord forum to reply or ask new questions.