6 ms·
Tutorial On Designing/Building A PCB (Using FOSS)
- zintagon 10y agoFun project! I watched the Building Blinky video. You could improve the video if you hold a loupe in front of the camera lens when trying to zoom in for fine detail, like when you were trying to show us a bridge on two pins.
- ChrisGammell 10y agoGood thinking, I like that. I normally zoom when for these kinds of details, didn't realize at the time the view was not sufficient.
- beardicus 10y agoHi Chris! Nice job with the tutorial and podcast. I haven't designed a board in a while, but next time I do I'll definitely be putting in some time moving from Eagle to KiCad.
- ChrisGammell 10y agoI'd say moving from EAGLE is one of the biggest shifts because the symbol and footprint aren't automatically tied together in KiCad. However, it is possible! https://www.youtube.com/watch?v=lLo4xQNHTcY https://www.youtube.com/watch?v=lLo4xQNHTcY
- taneq 10y agoHaving made that jump over the past few months, I should warn you that KiCad has some very annoying rough edges. It's basically a bunch of FOSS PCB-related projects wedged together into a single launcher, which has then been spot fixed as individual problems got too annoying for individual users. Once you get used to it the main workflow is pretty alright, but there are a lot of facepalm-worthy 'features'. Each program has its own (sometimes slightly, sometimes wildly) different UI, right down to things like selecting and moving objects. In addition, the PCB layout component has three different selectable "rendering engines", each of which has its own UI and available feature set inconsistent with the others. (Hint: OpenGL rendering enables the interactive routing features which speeds things up immensely.) Information is transferred between programs via intermediate files, creating a lot of busywork to export/import changes. (For instance, to go from a schematic in eeschema to PCB ratsnest in pcbnew, you have to annotate components, run CvPCB to associate components with PCB footprints, generate and save a netlist, load pcbnew, and read in the netlist. Any name collisions with existing footprints will cause the conflicted footprints to not be updated. Importing/vectorizing images from outside sources is byzantine and scaling images after import is poorly or not supported. It crashes from time to time, especially in the PCB editor. Get used to spamming ctrl+s regularly. Also, the part and footprint library management is insane and needs a rewrite. Basically it's got all the ingredients for a great CAD package but it needs a single guiding force to turn it into a consistent, reliable tool.
- kirrent 10y agoFor those interested in the teaching philosophy behind contextual electronics you might be interested in this video - https://www.youtube.com/watch?v=5_9Q4DoUlT8 https://www.youtube.com/watch?v=5_9Q4DoUlT8 He favours diving into a teaching example where the student has little background knowledge and expanding later. While my interests are more in the fundamentals I can appreciate the motivation behind this approach, especially in an online environment where keeping your students engaged is key.
- nickpsecurity 10y agoThat was an interesting presentation and theory. Might check out his learning electronics series at some point.
- znpy 10y agoThis is interesting to me because recently I have been playing with the open source spice software, ng-spice, and all of the other tools. I'll make sure to watch the whole series tomorrow morning :)
- deleted 10y ago[deleted]
- billylindeman 10y agoFor those interested in pcb design and you're not tied to FOSS I'd definitely recommend trying upverter.com. It's made loads of progress in the last few years and is probably the best / easiest to use layout software for beginners that I've come across. I've worked with eagle, altium, and briefly KiCad but I can never get over the tediousness of using KiCad. I recently checked out upverter and after watching their tutorial was able to design an LCD adapter board from start to finish in ~2 hours. Not trying to knock too hard on KiCad because it's great that we have an FOSS option, but if you're just into tinkering, upverter definitely has an easier learning curve and is pretty powerful. I always find that I want to spend my tinkering time actually getting my project designed instead of fighting with tooling.
- Animats 10y agoKiCAD does seem to have a tediousness problem. The tutorial shows a process for creating a new parts library which requires far too many steps - saving some random part into a new library to create it, telling the part designer about the new library, and starting from a blank part which has text in the way of what you're creating. Also, moving something by holding "M" and dragging with the mouse seems a holdover from the DOS era. Of course, if you don't like that, you can remap the hotkeys. That's so open-source.
- taneq 10y agoYou don't have to hold 'm', you can just press it while hovering over a component. Just like you can in the schematic except the hotkey is 'g'. Or you can do in the OpenGL PCB renderer (but not the default renderer) with a simple click-and-drag. Oh and you can't undo/redo in track laying mode even if you're not laying a track. The user interface is insanely fragmented, is what I'm getting at.
- svens_ 10y agoThat's exactly what I was thinking - the footprint editor is horrible in that aspect. You don't have to hold "M" to move, it picks up the component when pressing. The shortcuts in general are not as nicely placed as Altium, e.g. Zoom-to-fit (Home) is very awkward. Sure you can change that, but stuff like this requires a lot of time and the setup will be incompatible with other people (and one might have to adapt it on the next update, etc.).
- svens_ 10y agoVery nice introduction to KiCad - also for people with a background in other CAD tools like me. It's awesome to have a short but complete example of the whole process. KiCad definitely has some room to improve in terms of UI/UX flow, so that was very helpful.
- wyager 10y agoHaving used Eagle, KiCAD, and several others, my current favorite is Fritzing. It's quite easy to use and has a large library of built-in parts. Creating new parts is pretty easy compared to other software I've used. Performance leaves a bit to be desired, but this doesn't become a problem except for pretty large circuits.
- ChrisGammell 10y agoI've heard others say the same recently. I've always liked their intuitive breadboarding stuff, though haven't used it much. A lot of user-facing friendliness, which KiCad lacks to be sure. Normally I'd call out the "built in libraries" as a false thing to optimize for, but since you mention making your own components, I assume you're willing to move outside of that as well, so that's good to hear. Most people assume every part should have a library component which is simply never going to be the case in electronics. Even if there were a library for every component, I usually only trust the parts I have made, verified and tested myself. Been burned too many times.
- blackguardx 10y agoOut of all the open CAD packages, Fritzing takes the UI win but fails for advanced users by only supporting 2-layer boards (unless this has changed?).
- wyager 10y agoNope, still two-layer only. I'm actually pretty disappointed with their PCB UI. It makes a lot of assumptions about the existence of layers, and their ambiguous selection is really bad. For example, I often cannot select a small part for moving if there are too many airwires nearby, because fritzing always seems to prioritize airwires. I end up having to disable the ratsnest layer just to move a part. There's also a move vs create wire ambiguity that's really annoying. I guess I've just found that this is somehow less annoying than the problems with other PCB softwares.
- dbcurtis 10y agoJust adding a note here that gEDA, the GNU EDA suite, is another free software alternative. Its older than KiCAD by quite a bit. I got started with gEDA since I was doing PCB's before KiCAD, and now have invested in tools and libraries and such and don't want to restart. The functionality seems roughly equivalent -- both have their rough edges, just in different places.
- ChrisGammell 10y agoYep, that's the thing about EDA. The curve is so steep, it's pretty hard to get someone to switch unless there is a disruptive event in their electronics life. I'll be saying the same some day about switching away from KiCad, I'm sure.
- gbugniot 10y agoI guess KiCad is a good future proof solution for FOSS PCB design. KiCad is now used intensively by CERN teams, and backup by them too. http://www.ohwr.org/projects/cern-kicad/wiki http://www.ohwr.org/projects/cern-kicad/wiki See the KiCad CERN roadmap (10. is about UI): http://www.ohwr.org/projects/cern-kicad/wiki/WorkPackages http://www.ohwr.org/projects/cern-kicad/wiki/WorkPackages
- srean 10y agoSincere call for comments on make a living as a PCB designer in India.
- anujdeshpande 10y agoGet your work out there. - Make small batches and sell on Tindie - For bigger projects do a crowdfunding on CrowdSupply (has a rep for OSHW) It's easy for software folks to get noticed courtesy of GitHub or building things which propagate faster than hardware (a simple script or emacs mode or atom plugin or whatever). It's much harder for a hardware guy. Look at https://femto.io/ https://femto.io/. I think it is a small team spinning boards in relatively small batches and selling them - https://femto.io/collections/all https://femto.io/collections/all Also, there are a lot of makerspaces popping up in India. Showcase stuff there too. There are a lot of software guys looking to do hardware stuff.
- srean 10y agoThanks for your comments. Its not for me but for someone I know who was once very skilled in the art (I myself am clueless about PCB matters). Wondering if starting PCB designing again be a source of livelihood.
- ChrisGammell 10y agoAnuj has some great advice below. Maybe also try contacting Anool (https://twitter.com/anool https://twitter.com/anool) to ask a similar question? He works with a couple different companies and is a huge supporter of the KiCad project (writes about it regularly on Hackaday and runs workshops all over the world)
- aceperry 10y agoAnother free CAD program for pcb making is designspark pcb (http://www.rs-online.com/designspark/electronics/eng/page/designspark-pcb-home-page http://www.rs-online.com/designspark/electronics/eng/page/de...). It's not opensource like Kicad and gEDA, and it's only available on Windows. But it's easy to learn, very polished for free software, and quite capable. Lots of tutorials as well. There is a lot of free software available for hobbyists/makers today and they're pretty impressive compared to commercial software.
- throwaway7767 10y agoI'd love to hear from someone familiar with both KiCad and eagle how the library availability compares. Last time I tried the FOSS alternatives, the main pain point was that I needed to create pretty much all the component libraries myself, whereas for eagle someone had usually already done that work. Eagle is a truly terrific program, but I would really like a FOSS alternative. I'll have to give KiCad a try next time I have to do some layout work.
- zakhomuth 10y agoGreat work Chris! Looks awesome.
- callesgg 10y agoWatched the hole series more or less, feel a bit suckerd when the device did not even work. Put your wrists on something when you solder. Long time Amphour listener.