| Electronics > Projects, Designs, and Technical Stuff |
| A simple tool to aid in reverse engineering a PCB |
| << < (4/7) > >> |
| CatalinaWOW:
Some work with an image editor (changing hues etc) prior to superposing the images can help on double sided boards. If you are really familiar with image editing you can do even more to separate traces, hardware, components and solder mask. |
| Macbeth:
I use Photoshop especially with boards that have been photographed at different angles. You identify or make your own fiducials and then apply the warp/transform filters with the mirror and of course transparency tools. CS2 is free since they abandoned their servers. Somehow I have CS6 for free too, I don't know what happened there.. But GIMP should do too. |
| ogden:
Only tool you need after such a photos is brain. [edit] You shall consider it as an compliment because photos are pristine |
| janoc:
--- Quote from: intabits on November 30, 2018, 11:41:03 am --- As to alignment, I envision just having a corner jig to position the PCB with stability, and a camera on a small tripod looking down on it. Take a snap, flip the PCB, position into the corner, take another snap. Use dumb old MS-paint to crop the images, using the corner jig edges as one reference, and just make sure that the X-Y pixels counts are similar on both images. Done. Or just select the PCB area, also easy. But yes, cropping, scaling, rotation and alignment facilities could be added. --- End quote --- A better solution is to get rid of the tripod (so that you can use a phone instead of a camera/scanner that may not be on hand, find a good angle where you don't have glare, etc.) and instead find 4 points that you know the position on the board (e.g. 4 corners). Then you can warp the image to get rid of any trapezoidal distortion due to the camera not being exactly perpendicular with the board. In theory this could be done with any 4 points (they don't have to be right angle corners but those are the simplest) automatically - it is called finding a homography transform. https://docs.opencv.org/3.4/d9/dab/tutorial_homography.html (see the part on perspective removal) https://www.learnopencv.com/homography-examples-using-opencv-python-c/ That's basically what the Photoshop/Gimp do when you ask them to do perspective correction. The layer alignment can be done in a similar way - first rectify the images up as above and then you can find a transform between matching points that will scale and align one layer over the other one. All that this needs is solving a system of linear equations. It can be done semi-automatically - e.g. have the user mark the points with a mouse. A few other features I have found useful or wished to have: - filling the traces with color so that you can easily see the individual nets - marking of the components and their pins - have a way to generate a netlist/rough schematic out of the above - e.g. this could be perfectly doable with KiCAD where the schematic is just a large text file. |
| T3sl4co1l:
Yeah, I do this. Usually I color the layers so they're easier to follow; which is more effective here with silver traces, than with modern green boards (so one layer stays normal and the other is rotated to red or whatever). Tim |
| Navigation |
| Message Index |
| Next page |
| Previous page |