Tutorial On Designing/Building A PCB (Using FOSS)
contextualelectronics.com
contextualelectronics.com
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.
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.
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.
The user interface is insanely fragmented, is what I'm getting at.
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.).
I haven't used KiCAD for several years, but in the past I used Rohrbacher's Quick Library Builder [0] to generate parts. Otherwise making parts is indeed a pain.
I enjoy KiCAD's single-key commands, though.
I have scaled back my arguments a bit, but I'm not a fan of the network connected, in-browser tools (wrote about it previously here: https://contextualelectronics.com/learning/simple-plane-expe...). I rather like the Upverter guys as well, I have had them on my podcast in the past: http://www.theamphour.com/the-amp-hour-163-ramiform-reciproc.... I'm sure to lose this argument (browser tools) over the long term, as I think more things are moving that way. But for now I prefer a localized version of my CAD software and the fact that it's FOSS is a bonus.
The thing I can't figure out is what happens if Upverter goes away at some point in the future? They have good exporters it seems, but there's no way to run the software without their servers AFAIK. I know people still running local copies of Protel99 (ie. all of China). Will that be possible with Upverter?
I think KiCAD is awesome but the learning curve is steep, the interface is a little dated and it's hard to get started and/or share your schematics easily (e.g. online). This was one of the reasons why I wanted to like Upverter so much but the fact they were just another closed source business was a no-go for me.
Anyway, I created MeowCAD as an alternative [2]. It's free and open source [3] allowing you to do circuit design in your browser.
Sorry for the shameless self promotion.
[1] http://dangerousprototypes.com/blog/2011/09/21/editorial-upv...
Eagle and KiCAD are no picnic to start with, but they do at least have some features that allow you to speed up your schematic capture/board layout.
I've always wondered if there wasn't a business to be had in doing part creation for Eagle/KiCAD as a service...
The name? Tin Hat.
If you ever want to send me an email about UI weirdness in Upverter Im happy to share your feedback with the team here and see what we can do to fix it: zak@upverter.com.
We hadn't planned on supporting either KiCad or Eagle though. We didn't think there was much of a market. Im curious what you all think - do you think people would be willing to pay for parts creation as a service for either kicad or eagle? Also don't you think there would be a flame-war of the FOSS Kicad crowd vs. proprietary pay-to0use parts data?
There are definitely some random bugs (DXF board outline import?) and they have been silent on the support forums for a few weeks.
KiCad is now used intensively by CERN teams, and backup by them too. 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
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.
I guess I've just found that this is somehow less annoying than the problems with other PCB softwares.
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.
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.
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.
I'll make sure to watch the whole series tomorrow morning :)
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.
- 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/. I think it is a small team spinning boards in relatively small batches and selling them - 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.
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.
Put your wrists on something when you solder.
Long time Amphour listener.