← Back to team overview

kicad-developers team mailing list archive

Re: gerber file compare technique

 

I think I read that article about 3 months ago, and it may have been in my subconscious
mind when I was thinking two days ago that I was inventing something.

Although honestly, my conscious mind did not remember this article, strange.  Aging.


One thing I picked up the 2nd time reading is that any gerber viewer working on just the
old and new single pair of single layer files would do essentially what I accomplished.

If imagemagick could be taught to understand gerber files, then I suppose its "compare"
program could also do this directly.




> Here's an excellent article by some open-source hardware folks about 
> doing visual diffs on schematics and PCB layouts. They use GEDA for 
> their work but 95% of the information would apply to those of us using 
> KiCad. I'm currently working on a way to automatically render my gerbers 
> into PNG upon commit to git/svn (for easier browsing from smartphones 
> etc) as well as doing a visual diff between each version I check-in.
>
> http://www.evilmadscientist.com/article.php/visdiff
>
> Cheers,
> Matthew
>
> On 2/16/2012 1:28 AM, Dick Hollenbeck wrote:
>> Today we transitioned from working prototypes to production orders on a version 2.0 board,
>> meaning the gerbers have to
>> be pretty darn close to the known working prototypes, yet you need that last little tweak
>> to fix the minor issue you found in the low quantity prototype run.
>>
>> I did not want to do another prototype sized quantity run.  How to reach the confidence
>> needed to boldly move forward?
>>
>> One technique I worked up this afternoon involves imagemagick and gerbv and a script.
>>
>> http://www.imagemagick.org/script/compare.php
>>
>> The above tells how two PNG files can be compared using image XORing.
>>
>> gerbv can be scripted from the command line to output a *.PNG file for a single layer file
>> load, both old and new images pertaining to the same layer.
>>
>> The attached script is just a start, but it can be used to iterate through all your gerber
>> layers using one old gerber layer and the matching new gerber layer file as matched pairs.
>>
>> It worked well enough to find a bug in the silkscreen layer for me, and I am quite excited
>> about its use moving forward, and wanted to share it with all the folks on the developer's
>> list so that the technique can be refined and expanded upon.
>>
>> I hope you find the technique useful as a starting point.
>>
>> Dick
>>
>>
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> More help   : https://help.launchpad.net/ListHelp
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>



References