Plugin for importing the PCB orders to kicad db library

I managed to get the first working version of digikey and mouser order parsing tool ready.
It can now create sqlite db file and update its component list by parsing the digikey/mouser csv files. The integration to kicad8 is simple by copying the pilppa_kicad_lib_db.kicad_dbl and pilppa_kicad_lib_db.sqlite files under project and then adding that via Preferences/Manage Symbol Libraries".

Tool with examples and integration instructions can be found from https://github.com/lamikr/kicad_lib_db_manager

Attached is the screenshot how the integration looks like:

From your profile I see you became a member here in 2019. Are you aware of:

From what I remember it got in disuse because those shops (Mouser, digikey, Farnell, etc) don’t like it very much if you can too easily compare their prices and they actively sabotage bots that crawl their data. There was also some thing with keys you have to obain (pay for?) in order to use such interfaces. I never used it myself, because I do not have enough electronics projects to justify the overhead of such advanced systems.

I also have strong suspicions that they just suck the prices out of their thumbs, and sell stuff that costs 10 cent to make for USD3 or more, “just because they can”.

Yes, member around 2019, first time I heard kicad around 2015 but started using it myself maybe around 2017. My roots are in server side software (J2EE, databases) but once I hacked iPaq h6340 to run linux with mobile phone support around 2005 (we had 3 active people on that time hacking it on Familiar distro that more or less is the background to nowadays Yocto). That time I got mostly interested in from the embedded software and hardware and have more or less worked on that side since then.

But to as a reply to your question, I was not aware of from KiCost, thanks for pointing it for me. I will spend some time for trying it out. I see that in addition of scripting it will also has UI. I will propably add light UI integration to my tool at some point so that csv files to import can be selected from there and also to support the modification of imported data from the database.

Main motivation for me to develop these scripts that can parse the csv files and integrate their data to kicad lib db is that it should help me to work with existing components I already have instead of always re-ordering because checking CSV files and PDF’s for parts and then making notes does not really work well. So now that I have kicad db lib support for my components, I should be able to manage them seamlessly while workking with kicad without always ending up to re-odering parts just in case.

I do not plan to do any kind of price matching/comparison support except that I just import to db the historical price that is visible in the CSV for certain component.
Escpecially with the small and simple components like caps and resistors it’s usually much more co-efficient to buy at least 100 similar components as the unit price goes down significantly. (one piece for 0.10$ vs cut tape of 100 pieces for 0.73$ as an example). So it usually makes sense to order at least 100 or 500 of them at a time even if you only need 10 for your project.

So now that I can have all components listed in the kicad db helps for re-using them in my design. Now I still need to solve 2 other problems to get this running efficiently.

  1. Once I have assembled some board, I will want to get an easy way to reduce the component count in "Quantity column for all components I have with single command.

  2. I need to find some good way to store and find and put back these components in cut tapes after use in my lab room… Going through these small plastic bags to find correct cut tape and takes now significant amount of time. So I htink I need to make some good storage shelf with small holders from wood where I can fit these tapes with labels easily.

I see that the KiCost support also other warehouses like Farnell and Newark.

I would be interested in to know if these other component warehouses also provide some kind of CSV/excel sheet from the component orders. If somebody have those and could share them, I could add the support for them also to the tool.

And then yeat another thing is that are there country specific differences in these CSV files for example in the Germany compared to USA.