KiCad 8.0 - Project structure, workflow and generating professional documentation

  Рет қаралды 24,866

Vincent Nguyen

Vincent Nguyen

Күн бұрын

Пікірлер: 77
@MehulGandhi2000
@MehulGandhi2000 Ай бұрын
It's great to see a production caliber workflow and set of deliverables using KiCAD. I've struggled finding such examples. Thanks for sharing!
@mrizky099
@mrizky099 Ай бұрын
Stumble on this video in youtube recommendation. Thank you very much for sharing this professional documentation using KiCad.
@ronnieg8351
@ronnieg8351 29 күн бұрын
Very impressive! Really love the clean and professional style of your project documentation. Thanks for this video and sharing the templates and other resources!
@lojason2226
@lojason2226 Ай бұрын
Amazing workflow, it's a super templete for me, and i'll tell my friends the best way to did a good job. Thanks, you are an great engineer.
@karim1485
@karim1485 Ай бұрын
Absolutely love it, I wish you made a tutorial for complete beginners so I can convince my friends to join Kicad as well.. your explanations are superb and you highlight so well that the limits of Kicad 8 are much further away than most projects complexity is. Greetings to Lausanne!
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thanks! I highly recommend Phil's Lab's STM32 Bluetooth series for beginners in KiCAD, I wish I had that when I was starting
@PeterAlbronda
@PeterAlbronda 28 күн бұрын
A very well presentation, I learned a lot and will try to implement. Thank you very much. Merci tres bien 🙂
@artemshvydko3763
@artemshvydko3763 Ай бұрын
That looks really good and professional! Looks more like Altium style (which I really like).
@ccrs5816
@ccrs5816 Ай бұрын
Thank you very much for sharing. I have been suffering from the abnormal chaos of my project structure before, and now I finally have an excellent example.
@manuelofosu
@manuelofosu Ай бұрын
Wow, this is mind-blowing. Thank you Vincent. coming from LinkedIn
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thanks! Much appreciated
@carlosleonardoperez6745
@carlosleonardoperez6745 Ай бұрын
Just delightful. Although really involved, but with such care you showed the results out of KiCAD are really impressive. Incredible work, thank you for sharing it!
@heinzkreutziger2218
@heinzkreutziger2218 Ай бұрын
Really impressive what can be achieved with Kicad. I have only seen such nice fabrication output with Altium Designer
@NezihBenJemia
@NezihBenJemia 24 күн бұрын
thank you this is mind-blowing
@v4lgrind
@v4lgrind Ай бұрын
A fantastic presentation! Saving this for further re-viewing.
@ЕвгенийШепард-р2х
@ЕвгенийШепард-р2х Ай бұрын
Wow! Great design and documentation!
@syrrial9349
@syrrial9349 Ай бұрын
Excellent video, thanks for sharing your workflow! I'm working on a reasonably complex design in KiCad for my undergraduate thesis; definitely going to use your template as a reference for making my documentation more professional.
@ravenspy
@ravenspy Ай бұрын
This video is gold
@KostiantynD
@KostiantynD Ай бұрын
This looks amazing. If only this was possible to automate. The amount of manual work needed to achieve this is crazy. I can't justify it for small personal projects and for my work - I can't imagine doing it without automatic workflow with validations and tests.
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
It's certainly involved and could be automated with something like KiBot (but doing so would require quite a lot of work). Personally, it takes me ~ 1 hour to set up / generate fabrication and assembly documents for a new project
@KostiantynD
@KostiantynD Ай бұрын
@@vincentnguyen8083 That's amazing that you manage to keep track of everything and not make mistakes. I would make errors if I had to do this manually. I am releasing devices at least once every 2-3 weeks and I would just give up on the 3rd project :) kudos for your patience.
@vincentnguyen8083
@vincentnguyen8083 17 сағат бұрын
@@KostiantynD a little update, I've managed to automate 95% of the processus with after many feature requests and PRs into KiBot (stackup drawings, testpoint tables and highlights, automated 3d renders, in the documents, etc). Next video will be on an updated workflow with Git (how to integrate in a CI/CD environment)
@Mainstream818
@Mainstream818 Ай бұрын
Great walkthrough video. Some of these features I've had installed but never used. Thank you for sharing
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thank you! KiCad has so many features but most of them are not really covered much in tutorials. Hope this helped :)
@Mainstream818
@Mainstream818 Ай бұрын
@@vincentnguyen8083 Did you make the Altium theme or did you find this elsewhere?
@ediz2000
@ediz2000 Ай бұрын
this video is godsend
@Antyelektronika
@Antyelektronika Ай бұрын
Hello Vincent, you have done really good job. Thank you for sharing your knowledge.
@hectoraracena7076
@hectoraracena7076 Ай бұрын
Very valuable information, become a permanent part of my reference library data, thank you very much for this hi-level info.
@Janktzoni
@Janktzoni Ай бұрын
As inspiring as it is impressive. Will have to strategically replay parts of this demo several times to grab it all because there is really a lot to discover here
@Pkemarco
@Pkemarco Ай бұрын
This is so beautiful, thank you so much for this amazing video ! Looking forward to more content like this if possible.
@mohammadabdulrafey864
@mohammadabdulrafey864 Ай бұрын
Thank you for this amazing guide. Much appreciated
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thank you! The process is still quite involved though, it might be interesting to try to make a script to automate all of this, maybe even integrated with KiBot
@mohammadabdulrafey864
@mohammadabdulrafey864 Ай бұрын
@@vincentnguyen8083 Seems like another tutorial is on its way 😁
@vasileiossolakis2231
@vasileiossolakis2231 Ай бұрын
This is fantastic! Thank you for sharing
@EveryFlavorRobot
@EveryFlavorRobot Ай бұрын
THIS is the way :)
@AlexJacobs-d6j
@AlexJacobs-d6j 26 күн бұрын
Thank you so much for such a detailed video; very helpful! One thing I am super interested in is your vibrant colours for Net classes. Is it done individually, or is there a semi-automatic procedure for that, mate? I know Altinum has this feature, but I did not know you can do it in Kicad as well :-)
@vincentnguyen8083
@vincentnguyen8083 26 күн бұрын
For the schematic, I define Netclasses and colors in the schematic options and assign them to the nets either manually or with the Net class directive. Unfortunately in KiCAD 8, colors of netclasses in the schematic or not synchronised with the PCB net colors, so I set the colors manually on the PCB for each net. KiCAD 9 will have synchronisation of netclass colors between schematic and PCB
@mortaldrumming
@mortaldrumming Ай бұрын
Thank you for your efforts!!!
@michajoko7534
@michajoko7534 Ай бұрын
Really cool content and top quality. I like videos about KiCad. Thanks for that.
@andymouse
@andymouse Ай бұрын
Awesome !
@oussamaassaous4895
@oussamaassaous4895 Ай бұрын
this is so cool !
@astroboy2123
@astroboy2123 Ай бұрын
This such huge help. ❤
@abiramsam8673
@abiramsam8673 Ай бұрын
Thanks for this video, This inspired.
@Sagar-kn1bz
@Sagar-kn1bz Ай бұрын
Amazing! Thank you
@MrJK193
@MrJK193 Ай бұрын
Amazing content
@ats89117
@ats89117 Ай бұрын
This presentation is excellent but I wish the volume wasn't so low...
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
I will upload a video with higher volume and give you a link shortly :)
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
kzbin.info/www/bejne/fYK9nnZ_ZtedpKc this should be better
@dharageswaransteamzenfox3786
@dharageswaransteamzenfox3786 Ай бұрын
Really well documented video! could you do the same thing on Altium Designer...
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
I have a fairly similar template on Altium but unfortunately can't share it. You can probably get the same results or better with draftsman
@SuperSav24
@SuperSav24 Ай бұрын
Bonjour, je vois que tu es à l'EPFL, pourrais-tu faire la même vidéo en français ? Cela me simplifierait énormément la vie ! Sinon merci quand même, très bon tuto ! Et magnifique doc !
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Salut, malheureusement je ne compte pas faire de vidéo en français sur cette chaîne
@hocnhomonline
@hocnhomonline Ай бұрын
I am very impressed with your project. May I ask if you are Vietnamese?
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thanks! I was born and raised in Switzerland in a vietnamese family
@hocnhomonline
@hocnhomonline Ай бұрын
@@vincentnguyen8083 nice to meet you
@RixtronixLAB
@RixtronixLAB Ай бұрын
Nice video, keep it up, thanks :)
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
Thanks!
@Prabagaran-s3b
@Prabagaran-s3b Ай бұрын
how to drew pcb shape like these and edge cuts?
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
@@Prabagaran-s3b for more complex shapes like this one, I use a MCAD tool (e.g. Fusion360, Inventor) to sketch the outline. You can then export the sketch as a .dxf file and import it in KiCad on the Edge.Cut layer with Files->Import->Graphics
@Prabagaran-s3b
@Prabagaran-s3b Ай бұрын
In 4 layer pcb witch layer is suitable for ground plane in1.cu or 1n2.cu and power plane
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
For 4-layer stackups, I recommend using 2 solid ground planes on the inner layers, and route the power on the outer layers. In a PCB, energy flows in the dielectric space between your signal and reference plane. Consequently, you want your reference planes to be as close as possible to your signals to have a good return path. An important thing to note is that as a signal transitions from the top to the bottom layer, the signal will change its reference plane (from In1 to In2). To provide a shorter return path along the z-axis, it is good practice to place one or more "transfer vias" (connected to GND) near the signal vias. A SIG PWR GND SIG stackup can also work in many cases, but will not provide EMC performance as good as SIG GND GND SIG. If you use an internal power plane, you need to make sure that it can serve as a reference to the signals above it (i.e. that the driver voltage source is the same as the power plane). This is because at high frequencies, the impedance between your power plane and your ground plane will be low if you have enough bypass capacitors. Finally, an okay compromise would be to have a SIG PWR/GND GND SIG stackup, where the PWR/GND layer is carefully designed to provide good return paths with a solid ground plane under the fastest signals (the ones with the shortest rising time). You just need to make sure to never cross a split in your reference plane with a signal. When doing this type of stackup, some people also like to "bridge" the GND and PWR planes with bypass capacitors, again to provide a return path for fast signals. But again, I wouldn't recommend this stackup. Personally, I always go with 2 inner ground planes, and if I don't have enough routing space, I go straight for 6 layers
@simonbaxter8001
@simonbaxter8001 Ай бұрын
Why not just set the background of your render to white, which will be the same colour as the background on the schematic sheet?
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
​​@@simonbaxter8001 you could yes, I just like to have a transparent background as it's more versatile (e.g. adding the pictures in a presentation/GitHub repo). I think the default KiCad sheet color is not perfectly white too (but it should be with the provided color theme)
@radekhladik7895
@radekhladik7895 Ай бұрын
I am sorry, but I find this process really tedious and error-prone. I spent quite some time on automating KiCad outputs using KiBot, git, teamcity, etc... And even though it may have been more work than doing it manually and even though the outputs are not so well organized and pretty, I still do prefer to do it automatically. The reason is that being automatic, it is always up to date. I would have nightmares from exporting test points positions and then "reimporting" them back to schematic as list... Even for my small projects, when I need to update something last minute, I just hit "run build" and after few minutes all the outputs are generated. Pardon me if I may not say it quite right (English is not my native language) and I certainly do not mean to offend you, but computers were designed to work better/smarter, not only faster. It kinda reminds me when I was learning AutoCad in school (cca 2000), it had a new great feature - hatch autofill. But instead of setting some shape to be hatch filled, it created a bunch of lines in the shape - exactly like if you used a ruler to draw the hatch fill. And your process looks very similar to me. Instead of using automation and other "modern" means, you just use the computer to do the "old way" faster. For example, if you would need to change one output from I2C to i.e. serial, how much work would it be? At how many places would you need to change it manually?
@radekhladik7895
@radekhladik7895 Ай бұрын
Just as example, I recently designed a board with like 6 different buses. I know it is a small project but still, there is a lot of opportunities to swap TX/RX, connect wrong things together. So I made a script, that takes the netlist/schematic in and has a definition of required buses. And it will check if they are correctly connected and produce an output of them, so you can use it when debugging. So for example I have serial console. That is a simple thing. So first thing, I need to define the serial "bus". Then I define classes that corresponds to TX and RX. And that should be all that I need to define. The script then will check that there is always at most 1 TX pin on the bus line and that there are some RX pins. In the simple case it will find that the MCU TX is connected to the connector RX and vice versa.
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
​​​​​@@radekhladik7895 im not sure I understand. I know that the process can be automated (e.g. with Kibot) but once everything is set up correctly, you don't really need to change anything to produce good fabrication and assembly outputs. Let's take your example of swapping an I2C output to serial. 1) You would just change it on the schematic, then plot the schematic to PDF 2) On the PCB, you would need to reroute the signal if necessary 3) then you just plot the assembly and fabrication documents with Board2PDF (a few clicks) One of the tedious parts are the 3d renders, which need to be redone if the PCB changes substantially. However, they are not critical to the documents and could be automated with KiCad CLI in version 9 Another tedious part which can be hardly automated are the fabrication notes, assembly notes and dimensions, these need to be set once on a case by case basis depending on the project/manufacturer. For the testpoints, yes this is also quite tedious, there are easy ways to automate it (for example github.com/snhobbs/kicad-testpoints ), and it would certainly be possible to have a script extract the locations and populate a table on the correct page of the fabrication output If you manage to automate the entire process with good quality fabrication and assembly documents, feel free to share a tutorial (e.g. KiBot). I would be very happy if there are ways to streamline the workflow and am planning to investigate it, but I just don't have the time and energy to do it yet In general, for small changes (e.g. rerouting a signal) it takes me ~2min to regenerate assembly/fabrication outputs which are up to date. For large changes (completely change the PCB shape, and location of components), maybe around 10 minutes if I need to redraw the dimensions layer (indications on diameter, etc., a process which can be hardly automated) and regenerate 3d renders
@radekhladik7895
@radekhladik7895 Ай бұрын
@@vincentnguyen8083 Of course that you would need to do "the basic KiCad stuff with rerouting, etc,... " but on top of that you would need to change the Block Diagrams, Test point lists, Page title in the table of contents, etc.... I know that it is only a few clicks, but you need to remember all the places you need to click... For me, the best number of clicks required to do something is 0 🙂 What I meant is that I prefer to define 1 piece of information exactly once and let the computer do the rest - a lot of times it does not work like that, but that does not mean that we should not aim for it. So for example if I have the serial connection I mentioned, it should be entered only once in some form of "serial connection between A and B". And the rest should be done automatically or at least checked automatically. Your documentation looks beautiful, and no automation can match that, but for me the cost of manually keeping track of everything is not acceptable. For example I've had some issues with USB connector with JLCPCB (I've mixed two parts and used footprint from another part while in the BOM I've had the other one). Unfortunatelly the other connector was not in stock, so I had to change the footprint and regenerate all the fabrication outputs. And because of automation, I knew that the quality of the hot-fixed outputs will be the same as the quality of the outputs I've generated before.
@vincentnguyen8083
@vincentnguyen8083 Ай бұрын
​​​​​@@radekhladik7895of course the table of contents and so on need to be changed manually right now. There are again probably ways to automate it but I usually make these types of "non-important" schematic sections when the design reaches a more mature phase where there are only small incremental changes left. It would take a significant effort to automate every part of the schematic/fabrication/assembly documents, something that even high-end tools like altium do not provide yet, at least not at the quality of the documents I present here. But I agree that in a fast-paced design/prototype phase where you would need all necessary "bare-bones" documents delivered on a regular basis like standard schematic and Gerbers, automation is important
@radekhladik7895
@radekhladik7895 Ай бұрын
@@vincentnguyen8083 you are right. And all I am saying us that I will trade that visual quality and organisation for being up to date and automated as much as possible. Actually I ruined my first PCB (trivial breakout board) by forgetting to refill zones before exporting gerbers. And I still do not refill my zones before exporting gerbers but I have the computer to do it for me....
How to design custom Footprints & Symbols in Kicad
18:49
Schematix
Рет қаралды 67 М.
Who's spending her birthday with Harley Quinn on halloween?#Harley Quinn #joker
01:00
Harley Quinn with the Joker
Рет қаралды 26 МЛН
What type of pedestrian are you?😄 #tiktok #elsarca
00:28
Elsa Arca
Рет қаралды 26 МЛН
Ice Cream or Surprise Trip Around the World?
00:31
Hungry FAM
Рет қаралды 17 МЛН
3 engineers race to design a PCB in 2 hours | Design Battle
11:50
Predictable Designs
Рет қаралды 402 М.
Why Unreal Engine 5.5 is a BIG Deal
12:11
Unreal Sensei
Рет қаралды 401 М.
2-Layer PCB Design Tips - Phil's Lab #137
32:27
Phil’s Lab
Рет қаралды 49 М.
Qwen Just Casually Started the Local AI Revolution
16:05
Cole Medin
Рет қаралды 62 М.
KiCad 6 tutorial - Start to finish board design
20:13
Electronics with Emrys
Рет қаралды 6 М.
Top Fifteen Mistakes People Make When Designing Prototype PCBs
12:26
Cosplay Light and Sound
Рет қаралды 160 М.
6 Horribly Common PCB Design Mistakes
10:40
Predictable Designs
Рет қаралды 215 М.
Turning a KiCAD design into a realistic render using Blender 2.81
21:45
KiCon 2023 Database Libraries
44:37
KiCad
Рет қаралды 7 М.
Flight Computer and Navigation Software for a Fin-Controlled Rocket
8:55
Who's spending her birthday with Harley Quinn on halloween?#Harley Quinn #joker
01:00
Harley Quinn with the Joker
Рет қаралды 26 МЛН