PCB pad size changes are reset when changes are imported
oyvind 2 weeks ago
**Concise problem statement**: for manual soldering, I often increase the pad sizes on the PCB to make this easier. When then updating the PCB with e.g. a pin-remapping from the schematics, all such modifications are lost. Steps to reproduce bug: 1. Add Schematic with pads for through hole components  2. Change the width/height of the pads  3. Add new component to schematic, and use Update PCB Results: The pads are all reset Expected results: Settings that can only be configured on the PCB, and not in the Schematic, are left alone
andyfierman 2018-03-07 20:03:09
This is not a bug. Please see: [https://easyeda\.com/andyfierman/Welcome\_to\_EasyEDA\-31e1288f882e49e582699b8eb7fe9b1f](https://easyeda.com/andyfierman/Welcome_to_EasyEDA-31e1288f882e49e582699b8eb7fe9b1f) and the linked documents. In particular in (1): [https://docs.easyeda.com/en/Introduction/Design-Flow-by-Using-EasyEDA/index.html](https://docs.easyeda.com/en/Introduction/Design-Flow-by-Using-EasyEDA/index.html) and in (4): \*\*Why do Parts in a PCB disappear when the PCB is updated from the schematic?\*\* Thanks.
Tutorials 2018-03-07 20:03:46
Hi, for now, when you update PCB, the editor will compare PCB footprint and the schematic symbol assigned package,  it will update PCB from the schematic , doesn't keep the PCB modifications. In the future, we will provide the option of the import changes. now, you can update PCB first and then change the pads.
oyvind 2018-03-08 23:56:12
Thanks Andy, but as this behavior doesn't seem to support any specific functionality, and effectively prevents you from modifying a circuit without loosing any such modifications, this still looks like a bug, and not a feature.
andyfierman 2018-03-09 05:58:34
Sorry oyvind but I don't understand what you mean by: `...this behavior doesn't seem to support any specific functionality...` The design flow in EasyEDA is based on having to create footprints which are then saved in the library. Those footprints are then called up by `package` attribute of the symbols in the schematic. The actual footprints are then subsequently pulled from the library into the PCB design when you pass the schematic through to PCB. If you then change those footprints in the PCB _but do not change those in the library_, then every time you update the PCB from the schematic, the footprints you have modified in the PCB will be overwritten by those pulled in from the library. This is why, if you want to modify a footprint in your PCB, you should modify a copy from the library, save it with a unique name and then change the `package` attribute of the relevant schematic symbol(s) to call up your modified footprint. Then next time you update your PCB from the schematic, the modified footprints that you have called up in the schematic and which have been saved to the library will be pulled into your PCB as you require. This process is called Forward Annotation. If you follow the steps required to make Forward Annotation work as expected in EasyEDA then your statement that: `...this behavior...effectively prevents you from modifying a circuit without loosing any such modifications...` does not apply. Since EasyEDA has been written based on the idea of Forward Annotation, this behaviour is neither a bug nor a feature: it is how the software has been designed to work. If you want to be able to edit the footrpints in the PCB and have those changes preserved in the PCB when you update it from the schematic then you either need: 1\. to be able to flag modified footprints in the PCB as being exempt from being overwritten by those called up by the schematic symbols \(noting now that if you use the same schematic as the basis of a new PCB you will start off with the original and not the modified footprints and also that the BoM and any PCB netlist information exported from the schematic will show the wrong footprint information\) or; 2\. to be able to save your modified footprints locally and have the `package` attribute of the affected schematic symbols flagged to refer to your modified local copies and not those from the library; or; 3\. to have your modified footprints automatically saved into the library with unique names which are also used to update the `package` attribute of the affected schematic symbols. (You obviously cannot just overwrite the original library symbols). Option (1) has a number of opportunities for errors to be introduced. Option (2) and (3) require EasyEDA to be rewritten to implement what is referred to as Back Annotation. This is a major amount of work for the developers when in fact everything that you require is already covered by the existing process of Forward Annotation. * If you would like to see some scheme for Back Annotation added into the functionality of EasyEDA then please consider raising a Feature Request and propose one or more schemes that are at least no more error prone as the existing process of Forward Annotation. * Please note that since package information must be included in the schematic symbols before the PCB can first be created, Back Annotation cannot replace Forward Annotation. It can only complement it.
Login or Register to add a comment
你现在访问的是EasyEDA海外版,使用建立访问速度更快的国内版 https://lceda.cn(需要重新注册)
如果需要转移工程请在个人中心 - 工程 - 工程高级设置 - 下载工程,下载后在https://lceda.cn/editor 打开保存即可。
有问题联系QQ 3001956291 不再提醒