I’m starting from the PCB then back to schematics.
I positioned the components, and I tired to draw the tracks.
Of course KiCAD is forbidding me to connect pads that don’t belong to the same netlist.
But there is not any netlist.
And moreover, if I try to enter anything into the “Net” field of thepad, it’s impossible to write.
How can I overcome this please?
I was trying to do it through the properties that’s on the left side of the screen.
instead of I have to select the pad AND pressing E (edit) (or right click and go to edit).
Thank you, this solved my problem
My own preference in this regard is to work as much to the normal “forward” workflow as possible.
Start with putting a bunch of symbols on the schematic (of at least a part of the schematic).
Assign footprint to the schematic symbols.
Use [F8] to put the footprints on the PCB.
Place the footprints.
Build up schematic connections, [F8] again and draw PCB tracks.
In the end, it may seem a shortcut to just put footprints on the PCB and attempt to connect them, (If you want to go this way, then the Wire It plugin may help), but you are just postponing the schematic part and will have to do that at some time later anyway. You will also want to have labeled net names in the schematic, set up net classes for design rules etc. Building up the schematic and the PCB at the same time is closer to KiCad’s normal workflow and I guess that overall it may save you some time.
Also, if you make mistakes during the process, having both the partial schematic and partial PCB at hand helps in figuring out where the mistake may be. If you’re blindly re-tracing tracks over a bitmap, then mistakes may go unnoticed for a long time.
I’m reverse engineering a PCB so that I have to rebuild the schematics starting from the footprint and tracks.
It’s small one and I want to use it to get more familiarity with the process.
The “wire it plugin” I don’t firn into the plugins’ list, also by filtering them.
The “WireIt” plugin can be found on: https://github.com/devbisme/WireIt and it has also been mentioned a few times on this forum. Apparently it should work with KiCad up to V7. I do not know of plans to update it or put it in the plugin manager.
Yes, of course you have to start with the PCB you have. But still start with re-creating the schematic:
Look at the PCB, get the biggest IC on it.
Put a schematic symbol for that IC in the schematic.
Do footprint assignment and put the footprint on the KiCad PCB.
Draw the outline of the PCB from taking physical measurements of the PCB.
Use PCB Editor / Place / Add Reference Image to add images of your PCB.
Scale the image to fit the PCB outline.
Put the big ass IC footprint in the correct location.
Add some connected passives to the schematic, then re-iterate from step 2.
This is quite a lot of switching between the schematic and PCB editors, but it is still quite efficient because every step is done only once, and you do it in the normal way that KiCad works.
If you first build the PCB, and then try to extract the schematic from it. you likely assign net names / labels multiple times, have to struggle with matching footprints to schematic symbols and other things.
Also, with what sort of complexity are you starting?
Below I have attached a completely reversed engineered project of an ADS1115 module. It is a trivially simple project, but this also makes it a nice size for getting your workflow straightened out. You can even do the same project with two or 3 different workflows, and then compare what works best.
I had a look to the plugin, and i this moment I should install it in a old-fashion way so I need to keep closely track about any update, because it doesn’t use the Plugin Manager.
Yes the project I’m using is quite simple although on double face, and this has already created some confusion. I need to refine my skill…
I think I will use your zip file just to start and to take confidence.
People who do not do reverse engineering do not see the benefit / importance of this feature. And reverse-engineering is also not the main goal of KiCad, so we should already be happy you can load reference images in the background. It is also just part of the solution. For a total implementation, the full reverse workflow should be implemented. Something like:
Add footprints to the PCB.
Copy / draw tracks between pads and nets get created automatically.
Add schematic symbols to the footprints.
Port the thing back to the Schematic Editor.
Have ratsnest lines in the schematic to draw connections.
But you can give the issue a thumbs up. Maybe it helps. Also, KiCad is FOSS. If some developer decides it’s an important (personal?) feature, he can start working on it. It may even get priority development if a paying customer contacts KiPro-PCB for it.
Indeed the ability to add symbols to the footprint, porting them back to the Editor etc it’s something really I felt the need.
All the listed points you have made, is what’s missing to have a ful ltool for reverse engineering that can help to strongly reduce the work to do and consequently the “confusion” that can arise a certain point in time during the process.
Yes I gave my thumb up and I wrote also a comment.
Unfortunately I’m not a C, C#, JAVA programmer and I can’t help, or I was already working on some feature.
I’m former PHP programmer and, when I have time, I make some LUA stuff (because I’m constrained) but it has nothing to do with programing into an environment like this.
There really is not such a very big difference between the “normal” and the “reverse” workflow. And as this “reverse” workflow is not (yet) supported in KiCad, using as much of the “normal” workflow as you can is the best option at this moment. That means first putting symbols on the schematic, and assigning footprints in the schematic before porting them to the PCB. It is not Ideal, but when you stay close to the “normal” workflow, then at least you do not have to do the same thing multiple times. The main disadvantage is you have to switch a lot between the Schematic and the PCB editors. (A dual monitor setup helps a lot here).