Comments (33)
Added an issue for exposing DNP support in Python
Feel free to fill in any blanks
https://gitlab.com/kicad/code/kicad/-/issues/14406
from jlc-plugin-for-kicad.
Sounds good,
Do you know by any chance where is the DNP variable is located in the API?
from jlc-plugin-for-kicad.
I asked one of the lead devs in a private chat and got the following answer: "It is in the attributes structure. If it is set, the attribute 'DNP' will exist"
from jlc-plugin-for-kicad.
It seems that KiCad 7 uses both exclude from BOM and DNP:
I am not sure that is the right way to go now.
Maybe it's a good idea to open to discussion with the community if DNP also means exclude from BOM.
from jlc-plugin-for-kicad.
"Exclude from BOM" is the replacement of "Virtual Attribute"
Hence meant for logos, mounting holes, fiducials etc. Also typically set in the symbol, and not per case basis.
from jlc-plugin-for-kicad.
https://gitlab.com/kicad/code/kicad/-/issues/8908
from jlc-plugin-for-kicad.
It seems that the DNP attribute is only accessible from eeschema
.
I do not see any reference for it in the pcbnew
API.
Can you ask at the thread you opened in the KiCad forum if that is possible? I can find it.
from jlc-plugin-for-kicad.
I'll see if I can get someone more knowledgeable than me to chime in.
from jlc-plugin-for-kicad.
Those Kicad masking flags are still complicated but it seems that Kicad 7.0.1 added a specific flag to exclude from the position file. Does this JLC plugin support it? I need to upgrade 7.0.0 to 7.0.1 to try it.
https://gitlab.com/kicad/code/kicad/-/issues/14332#note_1317963024
from jlc-plugin-for-kicad.
I don't think its new, only the check box was added, it should work.
I wish they would propagate the DNP flag as well.
from jlc-plugin-for-kicad.
After some investigation, it seems that checking the DNP flag will set exclude from position file automatically.
Which means that this feature is supported.
from jlc-plugin-for-kicad.
Will it still be added to the BOM file?
from jlc-plugin-for-kicad.
Yes
from jlc-plugin-for-kicad.
Isn't that just creating an error with JLC? 🤔
When component's are in the BOM but not in the CPL file
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
Isn't that just creating an error with JLC? 🤔
When component's are in the BOM but not in the CPL file
It might, but that is how KiCad design to work right now (I have read couple of post about it), I will let them decide how to address it.
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
Indeed it seems so :)
I think people and vendors like this handled in different fashions.
Lot of vendors just wants the DNP parts in the BOM but marked as DNP. Hence why it's not left out from Kicad side.
For JLC it should definitely be left out of both BOM and CPL file.
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
I understand the concern, that's the main reason I'm trying to get people to support the DNP field.
Currently (as far as I can tell) the DNP marking doesn't do anything when exporting to JLC. this mean I need to manually remove them from the Exported files
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
Sounds awesome :D thanks for your work!
from jlc-plugin-for-kicad.
So, if I will set the LCSC Part # as DNP
for all the part in the BOM that satisfies:
'dnp' in footprint.GetProperties().keys()
will be a better practice?
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
Done.
But in my testing that property was not present.
from jlc-plugin-for-kicad.
@bennymeg Thanks for adding, How can I use the "Nightly" version of your plugin for testing.
from jlc-plugin-for-kicad.
Published locally as 2.3.0.
Install it from zip (see readme for instructions).
from jlc-plugin-for-kicad.
Tested, and it works great :)
from jlc-plugin-for-kicad.
Seems like JLC is getting "smarter".
Now it will just assign the LCSC number if Value and footprint matches.
I think we might have to change Value to DNP or completely leave it out
from jlc-plugin-for-kicad.
They even assign random Partnumbers now if the LCSC partnumber is missing.
@bennymeg Would it be possible to make an option to just leave the component out of the BOM?
Currently I Manually rework my BOM files after export to remove it
from jlc-plugin-for-kicad.
I'll try to think of a fix
from jlc-plugin-for-kicad.
from jlc-plugin-for-kicad.
If you refer to the field called "Exclude from bill of materials", you are correct.
Unfortunately this is not the intended use of the field.
I have described this earlier in this thread.
You can find the developer discussion here:
https://gitlab.com/kicad/code/kicad/-/issues/8908
from jlc-plugin-for-kicad.
Related Issues (20)
- Output files do not follow JLCPCB recommendations HOT 1
- Kicad v8 & 4.2.0: No button on PCB view HOT 1
- No subfolder in production HOT 2
- Additional layers: can't select user-defined layers HOT 3
- Error on MacOS HOT 1
- KiCad 8.0.1 and Toolkit 4.2.0 no icon HOT 1
- BOM generation broken on some PCBs HOT 9
- User layers being exported into edge cuts gerber HOT 4
- feature: checkbox "exclude Through-Hole components"
- Copper layers are re-filled on export HOT 2
- Kicad V8, "index out of range HOT 2
- Compatibility on Mac 14.4.1, KiCad 8.0.1 & Fabrication Toolkit V4.3.0 HOT 2
- "JLCPCB Rotation Offset" is not working for positions.csv HOT 2
- Automatic Translation HOT 2
- BOM and position files are not created in V4.3.0 if checkbox is not pressed. HOT 1
- exclude component from bom only if labled "Exclude from bill of material" but not if "Exclude from board" HOT 4
- [Request] Use user-defined layer names in Additional Layers box
- BOM doesn't include the part that not on the board
- [Feature Request]: Add help for initial options HOT 1
- [Feature Request]: Create database of offsets list (for special parts)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jlc-plugin-for-kicad.