KiCad 8.0 - Project structure, workflow and generating professional documentation

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 พ.ย. 2024

ความคิดเห็น • 76

  • @MehulGandhi2000
    @MehulGandhi2000 หลายเดือนก่อน +18

    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 หลายเดือนก่อน +2

    Stumble on this video in youtube recommendation. Thank you very much for sharing this professional documentation using KiCad.

  • @lojason2226
    @lojason2226 หลายเดือนก่อน +1

    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.

  • @ronnieg8351
    @ronnieg8351 27 วันที่ผ่านมา

    Very impressive! Really love the clean and professional style of your project documentation. Thanks for this video and sharing the templates and other resources!

  • @carlosleonardoperez6745
    @carlosleonardoperez6745 หลายเดือนก่อน +3

    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!

  • @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  หลายเดือนก่อน +1

      Thanks! I highly recommend Phil's Lab's STM32 Bluetooth series for beginners in KiCAD, I wish I had that when I was starting

  • @manuelofosu
    @manuelofosu หลายเดือนก่อน +10

    Wow, this is mind-blowing. Thank you Vincent. coming from LinkedIn

  • @artemshvydko3763
    @artemshvydko3763 หลายเดือนก่อน +2

    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.

  • @PeterAlbronda
    @PeterAlbronda 26 วันที่ผ่านมา

    A very well presentation, I learned a lot and will try to implement.
    Thank you very much.
    Merci tres bien 🙂

  • @heinzkreutziger2218
    @heinzkreutziger2218 หลายเดือนก่อน

    Really impressive what can be achieved with Kicad. I have only seen such nice fabrication output with Altium Designer

  • @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.

  • @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.

  • @v4lgrind
    @v4lgrind หลายเดือนก่อน

    A fantastic presentation! Saving this for further re-viewing.

  • @NezihBenJemia
    @NezihBenJemia 22 วันที่ผ่านมา

    thank you this is mind-blowing

  • @ЕвгенийШепард-р2х
    @ЕвгенийШепард-р2х หลายเดือนก่อน

    Wow! Great design and documentation!

  • @ravenspy
    @ravenspy หลายเดือนก่อน +1

    This video is gold

  • @Mainstream818
    @Mainstream818 หลายเดือนก่อน

    Great walkthrough video. Some of these features I've had installed but never used. Thank you for sharing

    • @vincentnguyen8083
      @vincentnguyen8083  หลายเดือนก่อน +1

      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?

  • @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.

  • @Antyelektronika
    @Antyelektronika หลายเดือนก่อน

    Hello Vincent, you have done really good job. Thank you for sharing your knowledge.

  • @mohammadabdulrafey864
    @mohammadabdulrafey864 หลายเดือนก่อน +1

    Thank you for this amazing guide. Much appreciated

    • @vincentnguyen8083
      @vincentnguyen8083  หลายเดือนก่อน +2

      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 😁

  • @ediz2000
    @ediz2000 หลายเดือนก่อน

    this video is godsend

  • @EveryFlavorRobot
    @EveryFlavorRobot หลายเดือนก่อน

    THIS is the way :)

  • @michajoko7534
    @michajoko7534 หลายเดือนก่อน

    Really cool content and top quality. I like videos about KiCad. Thanks for that.

  • @vasileiossolakis2231
    @vasileiossolakis2231 หลายเดือนก่อน

    This is fantastic! Thank you for sharing

  • @mortaldrumming
    @mortaldrumming หลายเดือนก่อน +1

    Thank you for your efforts!!!

  • @AlexJacobs-d6j
    @AlexJacobs-d6j 24 วันที่ผ่านมา

    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  24 วันที่ผ่านมา

      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

  • @andymouse
    @andymouse หลายเดือนก่อน

    Awesome !

  • @astroboy2123
    @astroboy2123 หลายเดือนก่อน +1

    This such huge help. ❤

  • @oussamaassaous4895
    @oussamaassaous4895 หลายเดือนก่อน +1

    this is so cool !

  • @abiramsam8673
    @abiramsam8673 หลายเดือนก่อน

    Thanks for this video, This inspired.

  • @Sagar-kn1bz
    @Sagar-kn1bz หลายเดือนก่อน

    Amazing! Thank you

  • @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  หลายเดือนก่อน

      th-cam.com/video/GQZmCI1rjnE/w-d-xo.html this should be better

  • @MrJK193
    @MrJK193 หลายเดือนก่อน

    Amazing content

  • @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

  • @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  หลายเดือนก่อน +1

      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

  • @Prabagaran-s3b
    @Prabagaran-s3b หลายเดือนก่อน +1

    how to drew pcb shape like these and edge cuts?

    • @vincentnguyen8083
      @vincentnguyen8083  หลายเดือนก่อน +3

      @@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

  • @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)

  • @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

  • @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

  • @RixtronixLAB
    @RixtronixLAB หลายเดือนก่อน

    Nice video, keep it up, thanks :)

  • @radekhladik7895
    @radekhladik7895 หลายเดือนก่อน +2

    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  หลายเดือนก่อน +1

      ​​​​​@@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  หลายเดือนก่อน +1

      ​​​​​@@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 หลายเดือนก่อน +1

      @@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....