Surface mount ESP32 won't pass DRC


#21

So it was something related to my data directories. I removed them and opened up the same fzz file and it passed DRC right away. Now I’ll go and finish up with all of those suggestions.

Thank you.


#22

While it is good that that fixed it, it is also somewhat scary because it really shouldn’t have. That indicates that it is possible to screw Fritzing up in a not easy to identify (and thus fix) way. I have a another similar issue with translates in pcb svgs. I have a part that I fixed for someone where a translate scale(rotate 90) in the pcb svg generated incorrect geber output. Removing the translates (which is a good idea anyway) fixed it, but now adding the translates back in to the svg no longer causes the gerber output to be wrong and I don’t know why. These kinds of bugs are scary (to say nothing of being hard to fix, because they are hard to reproduce!)

edit: Good news! I have reproduced the problem, which means I can (eventually) fix it. I figured out what is happening. The loader is using the version of the part in the mine parts bin (without comment!) instead of the version in the temp bin in the fzz file. Since in this case the two versions are different it causes this problem (you get a non working part instead of the fixed one). Clearing the user databases clears the mine parts bin and the fzz file works with the new part from the temp parts bin in the fzz file. The ideal fix is to compare the part in the mine parts bin with the one in the temp parts bin in the fzz file and if they are identical proceed. If they are not identical we need to toss a “part is already loaded in to fritzing” error message to tell the user there is a problem . If the compare the files part is too difficult we can just toss the error message if there are two versions of the part. I tested this by changing the non working part to have the message "Version with translates in pcb! " in the description field of the original (broken) part. With that stored in the mine parts bin, I loaded the hotrod6.fzz file and clicked on the part in the temp parts bin. It comes up with the "Version with translates in pcb! " from the mine parts bin rather than the corrected version in the temp bin (although it could not load the alternate part anyway as the part in the mine parts bin already exists) in Inspector and DRC fails, where DRC worked correctly before the bad part was saved in the mine parts bin.

Peter


#23

Awesome to hear. I’m glad that I could contribute to this great software in a round-about way!

Ordered my first PCB yesterday (just a breakout board I need to breadboard the bigger one I’ve been working on.) I’m quite excited for the moment I have that in hand!