Embedded - 20: Soldered Together By Monkeys
Episode Date: September 26, 2013Phil King of Weekend Engineering returned to give Elecia advice on how to fabricate a board, both in a professional capacity and for garage projects. EaglePCB is a commercial package which is also ...available as a free, noncommercial version for small 2-layer boards. Other open source packages mentioned include Kicad and gEDA. Some board fabricators provide free tools that work only with their fab houses (such asExpressPCB).  Digikey's SchemeIt  provides a way to get a PDF schematic (and a BOM), but falls down by not providing a way to generate a net list, a critical part of board fabrication. PCB West is this week at the Santa Clara convention center. How Printed Circuit Boards are Designed (1960 Edition)  Hildy Licht electronic assembly and manufacturing
Transcript
Discussion (0)
Welcome to Making Embedded Systems, the show for people who love gadgets.
I'm Alicia White, here again with Phil King.
You may remember him as my favorite electrical engineer.
Hi, Phil. Thanks for coming back. How are you?
Hi, Alicia. It's great to be back.
I'm really happy to be here talking about PCBs.
Well, yes, exactly. So we're going to talk about making boards and making your own board, making my own board.
Because you can kind of see the wreckage on my desk of my current project.
What is all this stuff anyway?
A couple of shows ago, I talked to Elizabeth about making something to monitor her neighbor.
And the neighbor will pat it on its head,
and then that will make it so that it doesn't text Elizabeth at some point.
And if the neighbor fails to pat it on the head,
pat the cute little stuffed animal on the head,
then it will text Elizabeth around 5 o'clock or 7 o'clock
when Elizabeth gets home,
and Elizabeth will go and check on her neighbor.
It's kind of a, are you okay? That was in the Facebook status, maybe not dead show.
We got a little irreverent about it. It's a watchdog timer for humans. Exactly. Exactly.
Um, and so you can see it's all SparkFun parts. I've got, I've got the SparkFun accelerometer.
I've got, well, I guess this is the Adafruit the ada fruit uh battery charger but then i reordered a spark fun one and that's the electric
imp with its april board and that provides wi-fi connectivity um i guess i didn't order that when
matt brought it to me but i just ordered another one this week so that i could give it to elizabeth
uh and so you can see i have done a little bit of soldering.
I can see you looking at that accelerometer going, was this soldered together by monkeys?
No, no, it actually looks quite nice.
It's a little off balance.
Good, good, solid, heavy solder joints.
And it's all connected with standard jumper wires.
It's Lego blocks, which is what I like about the electronics these days.
Good way to do it.
But it makes it really expensive.
Yeah.
This is going to end up costing like $100
because in the end,
every board costs $10
because they can.
It's already all made.
And the last project I had, I really liked. It had to do with the shirt the posture shirt which you
won't know all about you you've helped me with it but I got stuck on that one because I couldn't
solder the parts together I had a point where I needed about 25 of little tiny motor boards with like a MOSFET and a couple little things.
And I couldn't put it together.
Each one took like three hours.
And there was no handy-dandy board already in the one-inch form factor that I wanted.
Even though it was only five components,
and even though you did a good job of explaining to me what it needed to be
and even though Rob Mitchell did a great job
of building like two,
you can only tread on your friends for so long
before you admit you need a board.
We were nowhere near the point of giving up on you though.
Well, yeah, but I don't like to trade my favorites
because I'm going to need help with this one too.
Fair enough. And so I can hand draw a schematic you've seen my hand-drawn schematic i can even put it into um some of the online free schematic capture tools
because it's only like five components and my skills are you know wizardly in that area
but i've seen you work on fantastically sophisticated schematics,
so don't give me that.
I know that you can trace your way through them with the best of us.
Oh, I can read them.
I don't have any problem reading schematics.
I just don't write them.
And certainly passives all seem very optional to me.
Digital schematics, sure.
Capacitors are just like salt, right? You don't really need them.
We try not to let that be known, but you know, the truth is we're just making it up too.
So with my little motor board, and let's make it clear, what I wanted to do was
I wanted an IO from a processor to turn on and off a small vibration motor.
The processor couldn't source the current necessary for the motor.
So I had to have something else give it enough juice. A FET acting as a buffer between the GPIO and the motor.
And the FET taking the power from the battery area instead of from the microprocessor.
Yep.
So really not very complicated.
But I wrote the schematic and then I just got lost.
So I had a project before where I did go through the whole process of building boards.
But my doubly at that time, my doubly friend who was helping me out of the goodness of
his heart.
Hi, Charlie.
Also did a lot more.
I wasn't as skilled as I am now.
And yet now that I'm a little more skilled, I'm more stuck because I want to do it myself, but I don't know how.
So did he actually do the schematic capture and PCB layout for you?
He did the schematic capture.
And then we worked with a couple of other friends to do the layout and that actually went
really badly because they wanted me to do parts of it and i did but then like the capacitors would
hit the standoff screws and all of that nonsense ah okay um you know there were more things that
i needed to look at and i didn't even know what I needed to know. I didn't know the questions to ask.
So that's why you're here to give me the questions to ask more than to tell me definitively,
here's how you do it, but to help me find the language to talk to other people about
doing it.
Okay.
Do you happen to remember what tool set they used when you did that original layout?
I remember we did the schematic capture in OrgHead, but no.
Okay. No, I just remember there being a lot of wires and a lot of colors but that's always true of Gerbers
usually yeah
the idea of course is that the PCB is the physical realization
of the circuit you draw on your schematic
and so I think the sort of question is how do
you get from one to the other? From imagination to reality. From imagination to schematic to
something in between schematic and layout to layout to a printed circuit board. And then to a
fabricated, a loaded circuit board that actually has components on it.
You can't just stop when you get the shiny bit.
Well, you can, but then you just put it in your portfolio and go off and do a job interview.
No, you definitely want to actually, well, you're right.
There's fab, where you actually produce the printed circuit board itself.
And then there's assembly, well, kidding, where you get all the parts together.
So you've got all the right parts to put on it,
which is not as trivial as it might sound.
Oh, it was not.
And I did, yeah, kidding.
I did a good job of it because it fit, you know,
my personality perspective, the detailedness,
the needing to do everything and keep track
of massive amounts of information in a logical manner.
But it was hard.
It was like playing Tetris with the whole world.
It was fun, kind of, but it was much harder than I see, you know, people like, oh, and
then you kid it and you send it off.
No, no.
And then you kid it and then send it off.
It should be said differently with capital letters. Well, and there are places that specialize in that sort of thing that are turnkey shops where
instead of throwing effort at it, you throw money at it and they put their effort at it because they
know how to do it. And often some turnkey assembly houses will have a large library of standard or a
large inventory of standard parts. For example, you mentioned passives. There's a fairly large number of passives,
but it's small enough that you can reasonably have a stock room that has all of the standard
1% resistors and all of the reasonable values of capacitors that you're likely to need.
And then anything you need that isn't there, you order from DigiKey.
Right.
Okay, so you say there are people you can pay to do this.
But I want to do this myself as much as possible
because this is my project.
It's for my own amusement and my own learning.
And if you're like me, you're remarkably cheap.
I was going to get to that as well.
This is my own project, and I don't really want to throw money at it, which is the other hard part of going from imagination to reality is at some point there is a cash layout. Yes.
And you can't avoid that because you were getting a physical thing. And in software, you know,
you can run most of your world without ever actually paying for anything. Exactly.
This gets to one of the sort of fundamental time versus money problems,
especially that become much more obvious in hardware.
You run into it in software that if you take six hours to do something rather than buying a piece of software.
Or a tool to debug.
Yeah, it costs more, but it's more of a hidden cost because there's
not a pile of parts or an invoice from an assembly house that you've actually incurred
quite so directly. And so when you're doing hobbyist hardware, it really does quickly come
down to how much is my time worth? And there I'm of this weird two minds. When I'm
working professionally, my time is very valuable to the company. The company is paying me a good
chunk of money and there's a lot of overhead to having me and everyone else around in the office.
So you will readily pay hundreds of dollars for something that you could do yourself,
but you don't want to spend that time because that's not a good use of the value of
your time. Whereas when I go home and I'm working on hobby projects, suddenly my time is worth
nothing. And it's worth it to me to dig through a bin of resistors to find the right value when
really I should have thrown the bin away years ago and just bought the right resistors as I need
them. But no, in this case, you know, my, because,
because there's value in the exercise for me, because I, because I simply enjoy playing with
the parts. I I'm willing to treat my time as, as effectively free to myself.
Well, I think there's a, there are probably three categories here. There's the professional
capacity in which I like to tell people that your time is essentially your annual salary divided by a hundred
or by a thousand, sorry. So if you make $10,000 a year, then if the tool costs $20 and it saves
you more than two hours, you should go buy it. And as a manager and a director, that was always my,
how much time will this save you? I know how much you make. Fine, go buy it. Or no, just put in the time.
It's pretty cut and dried.
And as a startup,
there's a big benefit to getting there fast.
And so while you don't have any money,
you're more likely to go to,
like you said, a design house or a full service fab
to pay them to do the tricky bits
because you're trying to get there fast. But as a hobbyist, I'm not trying to get there anytime
fast. And on one hand, I want to learn. And on the other hand, I make enough money that I don't want
to be a drudge. Yeah. Um, it is, it's supposed to be fun. Yeah. If digging through bins is not fun for you, then go buy the part.
And certainly the tools in our garage indicate our willingness to buy random parts.
Exactly.
Just because it's kind of fun to buy the right thing, the right tool for the right job.
And, and yeah, so I think there are three pieces here. There's, there's different
people need different things. And then I'll complicate it even one layer further. You,
you mentioned the hobbyist thing. And, and earlier when I was saying, I'll dig through
the bin of resistors, I should clarify that that is for one-off projects. Um, I look at,
I try to look at every hobbyist project and think right up front, is this a
something I am doing that will never be reproduced? That is a one-off for my own amusement,
in which case I can literally use any part that will make it work. And in fact, there's sort of
bonus points for using stuff that's otherwise lying around gathering dust, get it out of the
garage, exactly, get it out of the garage and do something useful with it. Or is this something that there is any chance I will want to build more of for friends or at the hyper extreme turn into a business idea and possibly end up actually mass producing?
In which case I care a great deal more about using contemporary parts.
You know, for example, I have microcontrollers dating back to the
probably late eighties lying around my garage. Uh, but I probably should never use anything
that's not, you know, current generation parts for something that I think I might actually
build a lot of. I don't know. The 8051 is never going to die. True. but the 8051 in in uh five volt nmos probably is true enough so yeah
okay i i can see the difference there is the the hobbyist spectrum it goes from
cheap and unwilling to buy anything too expensive if you're unwilling to be a drudge to maybe this is a future idea and I want
to keep that in mind. Yeah. And I, my personal projects, I consider mostly to be open source
projects from the software perspective. And so I want to use relatively standard hardware or easy
to obtain hardware. And if that means I have to put my
designed board on one of the many sites that lets you do that, I'm fine with that.
And I've been trying to lean that direction also. I have aspirations to do some clever
open source hardware project and have not gotten there yet. But there is a lot of neat stuff. You
know, there's Arduino shields. there's just a lot of neat opportunities
for, for open source hardware. Uh, and, and so in that case, you definitely want it to be something
that's easy to easy to get the parts for, um, ideally, you know, and this, this goes back to
really, I'm not a paid show for DigiKey, but I think I keep bringing them up.
The neat thing about Digi-Key is they have
a ridiculously huge inventory of parts in-house and they're able to pull them from that inventory
very quickly. So I can put together an order at 4.30 in the afternoon, enter it online and have
it on my doorstep. If I'm willing to pay for expedited shipping, I can have it on my doorstep
by about 10 o'clock the next morning.
Well, and we get addicted to that when we're working in a company. Because in a company,
that's, of course you pay for expedited shipping. Because if you were ordering DigiKey parts at the
last minute, you need them now. Exactly. If we could pay more to get them at 5.30 the night
before, I'm sure some of our CEOs would have been fine with that. And that's where you get into the, do I have to order this from DigiKey or can I find something close enough over at Anchor Electronics and just drive over there on my way home from work?
Actually, I can't do that because they close at like 3.30.
But can I pick something up there at 7.30 in the morning on my way into the office?
Yeah.
So yeah, all we need is DigiKey with teleportation and then we're, and then we're
really set.
Me up.
Okay.
So now we have the problem statement of, and we've of course not managed to identify a
single person or a single plan.
Um, but still, uh, in a, in a work environment as a program manager, I could tell you all
of the steps that we need to do, but I want you to go through it kind of, what should I be doing to get boards out?
I mentioned schematics capture.
Sure.
That's definitely where everybody starts.
And the schematic, okay, so yeah.
Maybe not schematic.
Maybe we should go back to block diagram.
Yeah, I mean, let's start at the very top.
You have an idea that you want to implement. Maybe we should go back to block diagram. actual physical parts and, and how they're going to be connected together. And that's starting to
get toward a schematic, although it's still kind of rough or you, you talked about your Lego
construction techniques here, you know, that, that maps to a schematic, but each of those boards has
a lot of stuff on it that you're not really going to use. And that isn't part of the final design
that you need. And so that allows you to prototype the concept. Now, if you have parts that
accommodate it, you can do a solderless breadboard, or you can solder together a one-off
perf board, a prototype, where you're trying to validate that the electronics are going to work
as designed. It used to be that you always did a hand assembled prototype of anything to make sure
that it's going to work in there. And there are a bunch of ways of assembling those wire wrap,
uh, and so on. But all of those assembly techniques were predicated on, on having
parts where you can actually get to the physical interconnect reasonably.
Yes. Yes. This was one of my problems with the motorboards is they, we, we spec'd an
SMT part and that's beyond my ability to hand solder. SMT stands for surface mount technology
and, uh, and it's tiny. Well, it should stand for surface mount tiny. It might mean tiny.
It's it in this case, it often does. And there's a wide
spectrum of surface mount parts. There are a lot that are in fact still hand solderable.
By skilled technicians? Well, quad flat packs with reasonable pitches, you can put them down.
Surface mount passives like resistors come in a variety of different sizes.
The number, people always talk about numbers,
like you'll hear someone say a 1206 or an 0805.
Actually, you won't hear those anymore because those are huge.
Or an 0402 or 0201.
What those numbers mean are the dimensions of the part in hundredths of an inch.
So when I say a 1206, that's twelve hundredths of an inch or 0.12 inches on one side by 0.06
inches on the other side.
And it sounds small, but at that size, you can place it on a board pretty easily with
tweezers and you can solder it down either end of it.
Um, the, the problem is that the, the, the two forces driving packaging have been increase in interconnect
count larger pin pin numbers for things like ics and smaller size because we all want to carry
cell phones and ipods and things that have lots of electronics and a very very small form factor
and so you end up with with packages that have and of course my favorite example this is the bga ball grid array
where you have a two-dimensional oh that's not hand solder it is not hand solderable at all
it's a two-dimensional array of solder balls stuck on the underside of a chip and the way you solder
it to a pcb is you put it down on the board and then you heat the whole thing in a reflow oven
the solder balls go squish and flow onto the mating pads
underneath it. Hopefully, which you have aligned properly. Exactly. And the nice thing is that
surface tension in the solder actually will pull it into correct alignment if you're off by a few
microns. But the spacing on these parts, it's not uncommon to see many, many hundreds of balls on a BGA with spacing of 0.5 millimeters.
So 0.5 millimeter pitch or even smaller between the balls.
Now, that is obviously something you can't hand solder because you can't even get under there.
But it means that you also can't do any sort of handmade prototype, even if you could figure out a way so see i mean people
are making reflow ovens out of small toaster ovens and convection things sure but that's not the path
i want to go down so let's not spend a lot of time on that sure we may talk about it later on the
podcast on some other podcast but not this one i want i want my pcb yeah focus focus back on making
pcbs for parts that you can actually hand assemble.
Yeah. Well, even for parts I can't hand assemble.
Okay. Good point. Something that you could reflow in your toaster oven.
Well, something... So there's the prototype stage, which we've been talking about. And
for my little are you there thing, it's all Lego lego blocks from spark fun and if i make a board
for that it's going to be i'm not going to hand build with the schematic i make of the board sure
i'm going to ship it off and have somebody else do it which means i need a schematic yep so sorry
let me pop it so so the the original point where i was where i was going oh you oh i'm sorry you
had a point i had a point i just wandered far afield from it i'm sorry as i want to do i'm gonna need uh you know little hand
signals that indicate yes i have a point or no i've just wandered off into the weeds because i
don't always know until i'm there uh no so so the point the point i was i was getting to is that
it is it is often impossible to do a hand prototype,
to do a prototype that's not a fully assembled printed circuit board.
Oh, good. I totally agree with this point.
Totally agree with this point.
It is often not possible at all for me to make the hand prototypes that you suggest.
Well, yes.
I think you're taking an overly broad reading of what I just said.
But that's me.
My point is that it used to be that there was always a step between designing the electronics and making sure they all work and then doing a printed circuit board.
Yes.
And now that is often the same step.
Yes. Although the way you get away from it is like what you've got here. You abstract the printed circuit board, your prototype, into dev boards where you have a bunch of little blocks that you plug together.
So anyway, you want to get to a printed circuit board.
What you do is you design the actual components you need and the interconnect between them, and that is a schematic diagram.
And the schematic is just a visual representation of the connectivity between all your parts.
Then you take that schematic and you extract from it what is called a netlist.
And the netlist is a simplified description that just has a list of all the parts in terms of what physical package they have and how many pins they have
and what nets are connected to each pin on those parts.
Okay.
So, so far I can do all of this in graph paper.
You can do this in graph paper.
You can do this in, in Emacs.
You know, you can, you can.
But Orcad, Orcad is one of the big ones.
Orcad is one of, is one of the popular ones. Although
Orcad, like all of the commercial EDA packages is fairly expensive. So Altium and Orcad and
what are the other big names in that? Vudra. Yeah. Altium, Orcad, Vudra. And then there's a few
other that I can't remember off the top of my head and, and they're all good, but they're,
but it's very easy to get into spending
hundreds or even thousands of dollars.
Tens of thousands.
True.
Especially if you want the layout tool to go with it.
Exactly.
And so putting together a professional suite
is very expensive.
There are other ways of doing it.
For example, you said you could draw it on graph paper
or you could draw it in Mac paint if you want to,
but then you can't extract a netlist from it.
Except visually, which is kind of useless.
Yes.
And this is actually one of my gripes with the Orchid Scenit tool.
Sorry, not Orchid.
DigiKey Scenit, which is their schematic capture tool.
Boy, I should try and figure out how to say that right.
I think it's Schemit. I think it's Schemit.
Yes, it's Schemit.
DigiKey has an online schematic capture tool called Schemit,
which allows you to enter parts, link them to DigiKey part numbers.
It will generate a BOM, a bill of material,
that has all of your parts for your circuit.
And it's great if you want to show someone a circuit and show them a parts list,
except it will not, as far as I can tell, export a netlist. It doesn't do the next step,
which is provide something that you can then feed into your PCB layout software.
So I have Schemit open to my little motor circuit, and I pushed export, and it will let me
export it as an image or as a PDF.
Yes.
And certainly it will also let me open a shopping cart in which I can buy all of the parts that I've seen here.
It's as though DigiKey wants me to buy the parts.
It's as though they're just trying to sell you the parts,
which is reasonable,
except that part of the major purpose of a schematic, in my opinion,
is a visual representation of the netlist.
And in fact, I worked for an engineer many years ago who said that you should draw the
schematic cleanly.
You should draw the schematic to be readable.
Otherwise, if you're not, you might as well just write the netlist by hand.
And there are, in fact, things where if you've got lots of repeating
signals, it almost makes more sense to write a netlist by hand than to draw an unreadable schematic.
But the point of the schematic is it's supposed to be able to provide you a netlist, and that
netlist becomes the basis for the PCB layout. Yeah, I don't see a way to make a netlist here.
There really isn't as far as I can tell. That is sad because that means that I have to take this schematic and give it to someone else who then has to put it in Orchid or whatever.
Well, you have to put it in something that has a concept of a netlist.
And the funny thing is they must in their database have all the information they need to export a netlist because they've got the parts, they've got connections between them. They just haven't got that functionality yet. And I'm
not sure why. Well, let's just write an email and ask them, but I don't think we're going to get an
answer by the time the show is done. Probably not. So anyway, so you lay out your, your, uh,
or you, you draw your schematic, which is a representation of this connectedness graph
between all of your parts,
and that becomes a netlist file.
And that netlist gets imported into your layout software,
and your layout software then also has libraries
of descriptions of what each of the packages
physically looks like.
And so that's, when you do your schematic,
you actually say, there are some numbers associated with a processor,
say STM32L152G.
And that all specifies the processor and the size of the memory and the size of both the flash
and the RAM and anything else the processor needs to. But when you make a schematic, there are a few
more letters on the end of there. And I usually just ignore them because they don't pertain to me.
But they're important because they specify whether this is a ball grid array or what size it is or what pinout it is.
Exactly. The actual physical implementation of the packaging of that part.
And part of the reason that you as the software person can ignore it is that once you have it plugged into the system,
the silicon die inside the chip is the same for all the different packages usually.
It's just how they bonded out.
Uh,
and there may be,
there may be some IOs that are,
or are not available depending on the package.
Or,
uh,
as you say,
it may be,
it may come in different,
different forms of packages,
maybe available in a quad flat pack or a BGA.
Um,
so you end up with this part and yeah the the part number the full part number describes
the package that it comes in and that's true of processors but it's also true of resistors you
see yeah exactly they come in different sizes and and it's true i mean it's true of everything
really yeah and that was one of the things i liked about using the digi key one is i could
choose the size and everything and i didn't have to remember the whole stream of letters and numbers. Yes. Although the schematic capture
usually will have a separate field associated with each component called PCB footprint or
something along those lines, which is just a name for the actual footprint. You could argue that
this is redundant information because you can determine it from the part number, but that means that you don't want to have to have a part number
decoding capability for every possible manufacturer's part number in your layout software.
So instead, you just have a field associated with the part that says, this is the PCB footprint for
this part. It also means that you can use standard footprints for large classes of parts where they're all the same.
You know, I can actually say, and I'm about to say something that's kind of a lie,
but if you have an O402 resistor or capacitor, you may just say standard O402 footprint.
Now, the reality is there might be reasons you do them slightly differently,
in which case maybe you'd have an R0402 for your resistor 0402 size and a C0402 for your capacitor 0402 size.
But those become standard footprints and you don't really care what manufacturer you're using.
As long as it fits the ohms or coulombs you need.
Exactly. As long as it's the right...
Farads. Coulombs you need. Exactly. As long as it's the right... Farads.
Farads.
Coulombs are inductors.
No, coulombs are a measure of charge.
All right.
Anyway.
Clearly I'm confused.
Henrys are inductors.
Henrys.
I like Henrys.
Yes.
Yeah.
Okay.
So.
Okay.
So anyway...
We have big part numbers on our schematics
that are longer than a software engineer needs
because it says the size and...
Describes the physical package.
And everything that you put into a schematic
is supposed to describe the physical package.
So when I say I can do this on graph paper,
I'm lying because unless I actually specify all of that
on the graph paper, it doesn't do any good.
And in the graph paper, it doesn't really do any good anyway
other than a way for me to think about it.
Well, and it used to be that graph paper was how this was done.
You had a draftsman who actually drew the schematic
and annotated the schematic, and then your layout was done. You had a draftsman who actually drew the schematic and annotated the schematic
and then your layout was done manually
because, of course,
computers are big, expensive things
that only governments
and large corporations own.
So, of course, PCB layout was done
by a guy with a razor blade
and RubyLith.
And now welcome to the 64-bit iPhone.
Exactly.
You're not going to lay out a 12-billion transistor GPU using RubyLith.
That would be challenging.
And if you're out there and you're doing it, let me know.
I want pictures.
Exactly.
Well, and this is actually how you can tell printed circuit boards that were done before computerized layout.
You look at them and they look loopy there
are there are lots of curved edges and and it looks like instead of being traces laid down
between points it looks like just large looping areas of of metal get it like art deco kind of
get it get a radio from 1960 and look at the printed circuit board in it. And you
will, and you will see what a, uh, a layout done before computer layout tools looks like. Um,
it's pretty cool. And, uh, and then, and then of course, if you get a radio from the 1940s,
you, you may, and you find the, uh, the advertising brochure that came with it,
it will
point out to you that it has none of those those inferior printed circuit boards in it everything
is done as a discrete wiring harness in the good old days they knew that pcbs were of course a a
cheap and sloppy way of manufacturing electronics and you don't use those unless you unless you're
a sub uh a subpar manufacturer and so all the really good stuff, all of the parts are mounted in a rack
and there are discrete wires between all of them.
Ah, that was the good old days.
You say that, but you're not that old.
Okay, so I'm not using graph paper.
I'm not using schema.
What am I using to make my schematic
so that I can take it to the next
step where the next step is layout the next step is layout you're using anything that can export
a netlist or that can or that has an integrated schematic and layout capture tool in one um
names do you have any names let me grab my notes. One popular package with the hobbyist community is Eagle PCB.
Oh, right.
I have heard of them.
Are they free?
Sort of.
Eagle is actually a commercial package.
However, for non-commercial designs that are small, physically small, which is to say smaller than 8 by 10 centimeters and only two layers.
Oh.
Yeah.
Oh.
They allow you free use of the,
of the tools. And there's also, I think a limit on the number of nets or the number of pins or
something. It's, it's, it's basically a chance for you to, to try it out and do small designs,
but they want, but they, sorry, but they want you to buy, uh, the tool the tool for other applications.
That's sort of a taste it version of free.
Although a lot of people doing small stuff actually do use Eagle.
There's a couple of free and open source packages that I've been meaning to look at and I've, and I've not got a lot of experience with,
but are spoken of with varying degrees of enthusiasm. Uh, there's, uh, I'm not even sure
how you'd pronounce it. KiCAD, K-I-C-A-D, which is a true free open source project. Uh, there's also
G-E-D-A, little G capital E capital D capital A, which is another, uh,
I believe free and open source project.
Um, there's some that are tied to specific vendors.
For example, you mentioned Schemit, which is, which is Digikey's attempt to get you
to do a schematic, but it doesn't export anything you can layout. However, there's also Express PCB, which is...
Oh, yeah.
I kind of remember them.
Express PCB.
They go with a fab house.
They are a fab house.
And what they do is they provide you free software,
but you can only use it to fab with them.
It doesn't export Gerbers that you can take to any fab house.
It exports basically a binary bundle that you can take to any fab house it exports basically
a a binary bundle that you that you give back to them and they lay out your board
i've heard i've heard good things about their tools and then there was something in between
and i'm sorry i i couldn't find the reference for it but i but i saw it at pcb west last year
there's one vendor that provides you free software to do layout. And the trick is you don't get your Gerbers until you order your first set of boards from them.
Oh, that's not bad.
That lets you go away if you want to.
Exactly.
Of course, they're nameless.
That's what Google's for.
Exactly.
And that's also the joy of living here in Silicon Valley is you can go to shows like PCB West, which
by the way is happening next week.
Next week? Really? Maybe.
Two weeks from now. September 24th through
26th at the Santa Clara Convention Center.
And there it's actually
a whole
expo floor of people
dealing with printed
circuit board fabrication. I could just take
my little sketch and say,
can you make this and how cheap can you make it?
And they'll all be like, oh yeah.
And it's even, yeah, it's even better than that.
I have found, well, the nature of making PCBs
is that they're usually done in panels.
And it is often the case that a particular job
doesn't fill an entire panel.
And so some houses, some fab houses will
actually either sell or I've managed to convince them to give away some of that space for free.
If you're not too obtrusive on them, the example I like to cite is I was working with a theater
group that needed a little circuit and we wanted to build about 50 of these things. And so I went to a couple of fab houses,
and 201, they were all willing to fab
this simple design for free,
basically in the margins of other people's panels,
because it would be basically putting it in space
that they would otherwise just cut off and throw away.
But you were giving them the Gerbers.
You weren't asking them to do any workbers you weren't asking them to do exactly i
wasn't asking them to do any anything other than fabricate it which still is work because they have
to put it put the kidding stuff together oh no this is just the pcb just the pcb fab and i i
would have assembled so this really is just drawing in the corners of somebody else's piece of paper
it is essentially which is cool i mean it's still a little bit of work and it still is nice of them to do it
but i could see how going to them and saying well you know so for a good cause and and if you ever
want to use me as a reference and it builds goodwill towards a professional engineer okay
yeah exactly and uh and then along those same lines because because because PCB fabs are done in panels, there are also places that you can find online that sell space by the square inch.
And they essentially sell square inches until they've got a full panel.
And then they run a fab and divide it up and mail it out to all the people who ordered a piece of it.
And that's how you can get cheap fab often.
Okay, I'm wandering a field.
Okay, so we were talking about how to get schematics
and then in a way that we could get layouts.
Yes, schematic capture.
So you want to use a tool that has the ability to export a netlist
or export the schematic information in some way into a layout tool,
whether it's an integrated suite or through a netlist.
And layout.
Layout is where I always get stuck.
Layout sounds like fun because it is kind of like playing connect the dots, but in a
challenging way.
Exactly.
And so it sounds like a game.
3D additive Tetris.
Exactly.
I mean, if you made layout for iPad, I would totally play it on the couch but uh but i don't
think they do maybe there's a mechanical turk business model here we'll we'll convince people
that they're playing a game and they're actually laying out boards for other people i think there
are some games that it may be that but i don't think they have no it's yeah, we could do something cool with this.
So yeah, once you get into layout, there's a couple of stages to layout.
There's importing your design, which gets all the information in the layout package.
Making sure that you have all of the correct footprints, the actual physical shape of the solder pads.
Which ideally you kind of put in during the schematic capture phase.
Well, you put in the names of the footprints,
but then there's actually
the physical description of the footprint,
the drawing of the footprint,
and that's done in the layout software.
And do you do that yourself
or do you just pick it up from a library?
If at all possible,
you pick it up from a library
and then you check it against the data sheet
to make sure the library is correct.
And if there isn't a library for the specific part, then you draw it yourself,
usually by starting with something else and modifying it.
And I have seen processor vendors and they offer, you know, get our footprint here. And I think
that's smart.
Often they will for some standard set of tools.
Right. And if you're using some whack-tastic, whack-a-doodle sort of tool,
you may be entering all your footprints, which is why you, anybody wonder why some of these tools
cost $10,000? Because there's a lot of, a lot of, uh, support effort there. Yeah. So you, you
import your design and then you make sure that you've got all the footprints and then you go
through what's called placement, which is literally just putting the parts down on the board. Um,
if you have through hole parts, you have to sort of think about both where you're putting the
component on the top of the board and where the holes come out on the bottom of the board.
If you're placing strictly surface mount parts, then you, then you just put them on the board.
You still want to be thinking in three dimensions
about what's on the opposite side of the board.
For example, you would not want to put two high-density
surface mount parts on opposite sides of the same board.
Because their little wires inside the board
would collide and crash.
Exactly.
I mean, you might want to do that
if they're primarily talking to each other.
If they're talking to each other,
or if you're doing...
You can increase the complexity of the board dramatically by doing that. do that if they're primarily talking to each other. If they're talking to each other, or if you're doing you can
increase the complexity of the board dramatically
by doing that. And
do you want me to get into sort of some of the
ugly details
of board interiors?
No, we shouldn't.
We're starting to run out of time.
We should cruise a lot.
Although I do kind of, I mean
so
I know that there are more than two layer boards.
Yes.
And two layers is like the top layer that you see and the bottom layer you see.
Exactly.
And then if you went to a four layer board, you'd have the top layer, the bottom layer,
and two in between.
Like a sandwich, you'd have the top bread, the lettuce, the tomato, and then the bottom bread. And then when
you get to six, you get a whole bunch of extra sandwich ingredients, but you still have the
bread on either side. Exactly. And the bread on either side are the two layers that when you talk
about a two-layer board. Yes. Okay. And when you're routing, the more layers you have, the more you
can run around and skip between. It's like you're magically teleporting between layers.
Through vias.
Through vias.
But more layers is a thicker board, but also more layers is a more expensive board.
Yes.
Because it's kind of like 3D printing.
I mean, 3D printing is so cool now, but really that's what the board vendors have been doing
forever.
Sort of.
And here's where the complexity of the board drives the cost.
There's a couple of major parameters in the board.
There's how fine of details you have.
It's harder to make boards that have very, very small features.
And this is usually expressed in terms of design rules like trace and space.
What's the minimum width of trace you can make?
And what's the minimum width of spacing between two adjacent traces? So for example, if I said
five mil trace and space, a mil is one one-thousandth of an inch, that means that your minimum trace
can be five thousandths of an inch wide, and the minimum spacing between traces can be five
thousandths of an inch. So every ten thousandths of an inch, you ten thousandths of an inch you can have one trace in one space
that means you could have 100 adjacent traces in a one inch one inch width which seems like a lot
but but you'd be amazed how quickly you can you can run up hundreds of traces well and they're
all moving around each other and and they can't cross unless they go to the other side of the board or to another layer through a via another layer i'm not going to try that again and when you go
to another layer when you have a via there the usual process is that vias go from go all the
way through a board so if you want to go from layer two to layer three in a four-layer board, you actually have vias that impinge on the top and bottom layers as well. It is possible to do
what are called blind or buried vias, where the vias don't go through all the layers, but that
changes how you actually manufacture the board. Because normally, the reason the vias normally
go through all the layers is that you etch the copper for each of the layers, and then you sandwich the whole thing together, and then you drill all the holes, which means that the holes have to go through all the way through.
If you want vias that go through just two adjacent layers, you can do that, but it means you have to drill it before you sandwich it together.
And that adds process complexity and cost. And while it may make something simpler,
it certainly makes debugging any buried via impossible
because you have no access to it.
Exactly.
So from a software perspective,
those are always a pain in the neck.
Are you saying that your hardware engineers
have not provided you a complete
and comprehensive set of test points for all of your nodes that you could ever want?
I am saying that sometimes my electrical engineers do not give me what I want.
And they're wrong when they fail to do so.
And since you are saying, since you are currently, you came to the studio wearing a shirt that says, don't blame me. It's a software problem.
I figure you have already built that wall that we're supposed to be throwing problems over.
But since I'm a nice person, I'm, I'm, I'm casually not even, you know, I'm not taking
the bait to make fun of you. Although it's tempting. Uh, well, and, and, and, and we
haven't even talked about signals that, that about, about signals you cannot probe. One of the, one of the other things that is becoming very prominent is high speed serial interfaces. Um, and high speed serial interfaces require very tight signal integrity control. You actually have to control the geometry of your traces. Now you probably aren't going to do too much of this in a hobbies board,
but you might, especially in the coming years. If you have...
It's one of the areas where you're very likely to do it. And then when it doesn't work,
you're just going to throw your hands up and go, I have no idea. And the secret is you created an
antenna and everything's a mess now. Or you've created an impedance discontinuity
and your signal integrity looks like garbage, but you can't tell.
And in fact, unless you have very, very expensive test equipment, even the act of probing it will cause it to fail.
Or to work.
Or to work.
Those are the annoying ones.
Those are the really fun ones.
So, yeah, I've been doing some design work recently where we have to be very careful about where we even put test points because the test point itself represents a circuit element.
Of course.
Of course.
I mean, everything does.
Everything's a resistor.
It's just how much of a resistor it is.
But it's not even a resistor.
It's an impedance discontinuity.
It's a stub on the circuit. Now, it used to be at low speeds that you could have wires running all over
the place and you worry about propagation delay, but you don't worry about, you know, whether you
have a slight impedance stub hanging off a high speed or a low speed signal, but at gigahertz
serial switching speeds, you really worry about all this stuff.
Okay, so layout.
Layout.
You have sufficiently frightened me that if I do my own layout and it doesn't work,
at some point I may just say, to hell with it, to heck with it,
and try to give it to someone else.
But when I talk to the layout guy, I know he's,
he's a contractor.
He said he'd be one to $2,000 for a board with about eight components.
I think that some of that,
and it's like a one inch by one inch board.
It's a tiny thing.
I think he wanted me to go away cause he was busy and this isn't real work to
him.
That's kind of his setup fee.
But that's more than I want to pay for my little hobby thing. Yeah, you should definitely do the layout yourself for a small board.
And don't let me dissuade you because you're not doing anything that's insanely high speed.
You're not doing anything that's super high signal integrity.
You may want some fairly clean power for your...
Oh, it's getting it straight from the battery so
that's going to be pretty clean yeah but you you'll want uh but then it's going to dirty it
because it's a motor and you yeah and you and you have an accelerometer on there so you want uh
to decouple that from the the battery power they they yeah that happens so and you'll want some
capacitors on there but it's there's there's, there's nothing that's, there's nothing that's impossible there. Uh, part of the problem with going to anybody who
does lay out professionally is that is the, this gets back to what is the value of their time.
And they're viewing this as their, their professional time, which is, you know,
completely fair. And unlike you, I don't have anything to trade with him for you. Someday
you're going to ask me to spend six months writing software and I'm going to have to say, well, you did help me all those times.
So I acknowledge that.
No more than four months.
Serpitude.
But part of the problem is that there's a bunch of overhead steps to producing.
For example, he does the layout and that takes some amount of time.
But then he generates all of the documentation and and that takes some amount of time but then he generates all of the documentation
and that also takes an amount of time
and so even if he's
shipping an empty box, it takes a certain amount
of time and effort just to prepare the box
for shipping, whether there's anything at all in it
Well, it's the setup fee, yeah
So your design can be very, very
simple and still incur
the setup costs of
just setting up a new design.
And I have never worked with him professionally under my own company. So there's some setting up
of company interactions, which since I run my own company, I wear, I'm quite aware that that's
annoying. But you said documentation, he has to produce documentation. Is that Gerber's?
That is saying, and it's not baby food in this case? It is not. And it's also slightly a misnomer. We say Gerbers. What we really mean is fabrication
package. It's a set of documentation that you can take to a printed circuit board fabrication house
and say, please produce me a board from these docks. And the Gerbers are literally, Gerber is a photo plot format that literally derives from originally specifying size of aperture, a photo aperture, and what part of a film to run that over, what the path that that aperture should follow over the film to generate a line.
So this goes back to when things were generated, not by super duper robots, but more manually.
Exactly.
It's, it's, it's literally a plotter format and it became sort of the de facto standard.
And, and so you have a set of Gerbers, one Gerber for every layer of film, uh, that makes
up your printed circuit board.
So for example, if you had a simple two-layer board,
you might have six Gerbers.
You would have top copper,
which is the film that defines exactly where the copper on the top layer of the board is.
You have bottom copper.
You have top solder mask,
which defines where the solder mask covering that board goes.
You have bottom solder mask. you have top silk screen,
and you have bottom silk screen.
I like that you include top and bottom silk screen.
Some of my electrical engineers have thought silk screens were optional.
Personally, I find them very useful.
Well, you know, if you want to know what all the parts are
when you're looking at the board.
Do you want me to define what each of these layers does
or why you would have them?
Well, let's see if I can. Silkscreen is all about human readableness. It's what marks this is
U3, which you can go to the schematic and look up and that's the processor. Or J4 or J2 are
connectors and again, you go to schematic, you can look it up and see what it is.
Or more importantly, resistor 1 through 75 yeah that too and sometimes the silkscreen will give you more
information like put the jumper on j12 if you have if you want blah or j23 if you want other blah
and so it's it actually provides a user manual when you're looking at it and it also is where
you put your uh your little design know, where it says SparkFun
or Logical Elegance or whatever.
Okay, so a silkscreen's easy.
The copper is where the wires are inside.
If your board was actually a set of wires,
it would be the copper.
Yep.
And the solder mask is the connection,
is the solder between where you would put that wire
and where you would put it on a
component. It's the glue. Sort of. Actually, solder mask is the green layer that you put over top the
copper that is non-conductive and covers up. That went exactly backwards, huh? Yes. Oh, nice.
So what you were describing is actually the solder paste layer, and that is also a film,
but it's not used as part of the fabrication. It's used as part of the assembly.
You use the solder paste film to generate a stencil so that you can then
squeegee solder paste onto the board.
Okay.
But that's,
that's assembly.
We're still in fab,
which is only fabrication of the board,
the PCB,
the little green part,
or if you get a different color, that color.
But it doesn't have any parts on it yet.
Exactly.
And we have identified each piece using the Gerbers.
And now, but wait a minute, how did we generate the Gerbers?
We generated the Gerbers with the layout software.
And so do you think Eagle PCB does this?
Yes.
And Express PCB and all of the little free tools?
Well, Express PCB won't because they don't want you to have the ability to take your
FAB package elsewhere.
But I can do my layout and then it will go, it will generate Gerbers for them once they
push their button.
Yes.
Well, they probably skip the whole Gerber process and just print the board directly.
But yeah, it generates whatever they need for the layers internally.
Okay.
So all those tools will Schemant on DigiKey won't?
Correct.
Schemant is just schematic capture and won't even export a netlist.
DigiKey.
We love you, but maybe we need some help on that tool. Okay. So,
and fab is where things actually start to cost money. Yes. Unless you're paying some guy to do
your layout, but fab is, is where you usually have to fork over a bit of cash to get some space on
their board. Yes. So, so anyway, we were talking about Gerbers, and we've defined all of the layers of the board with the Gerbers, but you'll notice that we didn't talk about drilling holes in the board or putting vias.
Oh, but we went through all six layers.
We did, but we didn't connect them together.
So is there a seventh layer?
There is a drill map.
A drill map.
The drill map is not actually a Gerber file. It's part of the fabrication package though. And that defines where
you drill holes and how big they get, how big they are. And this is why it's a package because
there are lots of pieces. Exactly. And you also have to specify things like how thick the copper
on each layer is. So this is defined in a stack-up document,
which is usually called either a fabrication drawing
or an engineering notice.
Is this all just standard and I push the button
and get whatever it tells me?
Or do I have to think about these things?
You have to think about these things.
I mean, I've already figured out my trace width.
Do I have to? do i i have to yeah
you have to figure out everything man being an electrical engineer is hard
and recompiling takes a really long time um yeah so so you you have a a fab drawing that defines
all this stuff and also says what standards you want the board to comply with and even says things like what color solder mask you want and you were you were saying unless you
order some other color and some people out there are saying well but solder mask is always green
that's the standard color why would you ever use a different color a because it looks cool
well and spark fund is all there's in red because it's a little more noticeable and it's branding, essentially.
Exactly.
And then what I found years ago that's really, really cool is you define the color of the
solder mask based on what rev of the board it is.
I like the rainbow version where you start with green.
And so the first version's green, second version's like blue or yellow.
And then you just keep going through the colors so you can look at it and think how far away is that from the very first one?
Exactly.
And the beauty of that
is that someone can hold up the board
from across the room and say,
Phil, this doesn't work.
And I can say, yes, that's because it's green.
So it's a version one.
So it doesn't have the rework you need.
Go get a blue one.
Yeah, exactly.
And then when you get to black,
you should ship it.
Well, hopefully you have as few iterations as possible.
But green, red, and blue are usually standard and stocked by most fab houses.
When you start to get into, I've also seen purple, clear, black.
I've never seen clear.
I bet that was cool.
It's kind of cool, but really it just looks like a bare copper board.
I'd be okay with that.
It'd be neat. You could see where everything
was. Yeah, that's kind of cool.
I totally need to see one of those.
But there are other different
fab houses of different colors, so if you're
trying to make a wedding dress out of boards,
you really should order all from the same fab house.
Eh, probably. Well, I know there are different colors of red, you really should order all from the same fab house. Eh, probably.
Well, I know that there are different colors of red
because SparkFun uses a different red.
Okay.
I don't know.
And why would you be making a wedding dress
out of boards anyway?
I don't know.
It sounds kind of cool.
But I am also an electrical engineer
of no particular visual taste.
So I work with my friends who used to be design people at Apple
and they'll explain the nuances of 58 different shades of pink.
And to me, they're all the same color.
That explains so much.
I'm not a good person to ask about color variation.
All right.
Sorry, saw solder mask colors.
Wow.
So to Fab, I can do it at home, but I would never do it really.
I mean, how would you do it at home?
You can do it at home.
There's actually some really good tools for that.
The goal is to etch away the copy you don't need on a, on a, on a piece of raw board material
and leave the copper you do want. And so the very, very simplest form of that, if you're
doing something very crude is you can actually buy a resist pen.
I was thinking wax. Cause when it, when you've done metal and clay together,
you can color in
the areas you don't want with wax
and then pour down metal
and the metal stays,
but it doesn't go where the wax is.
That would be an additive process.
I always think of it as a subtractive process.
You start with a piece of
fiberglass board with copper clad on it
and then you etch away the copper you don't need.
Try not to breathe it at the same time.
Well, generally.
So the easiest way to do that is you can draw with a resist pen.
And like I said, this is really crude, but it gets you a pattern on copper.
And then you stick the copper board in some etching material,
like ferric chloride,
and that will eat the copper that's not protected by resist.
If you want to do finer details than that, you're going to want to do
some more sophisticated way of laying down your resist. There's some stuff called,
well, it used to be called Tech 2000 film. I don't know what it's called now, but it's, it's, it's a film that you can laser print onto and it doesn't bind tightly to the, to the toner. So you can actually then iron
it onto copper clad board, which is really kind of cool. And so it's an, it's an iron on transfer
resist transfer process. It's not perfect. Uh, you'll end up with little pits and stuff in your,
in your design often. Uh, and you can't do very, very fine details
because it spreads out a little bit as you iron it onto the copper clad board.
But I've gotten surprisingly good results doing one-sided boards that way.
Doing two-sided boards by hand is really difficult
because you have to register the design on both sides of the board
and then you have to drill little holes between them
and you have to figure out a way to connect one side to the other you know how we talked earlier
about hobbyist drudgery hobbyist being willing to pay for drudgery to go away yes this sounds like
pure drudgery to me i mean it might be fun like once in a class situation but i don't want to do
this yes this is this is definitely getting into stuff that it's worth.
And,
and thanks to the power of the internet,
it is,
it is very easy to go out and find ways of getting fairly cheap board
fabrication done.
You know,
you're still into the tens of dollars,
but.
Tens of dollars is easier than hundreds of dollars.
Exactly.
Uh,
and, and you do visit something comes in the mail that you get to touch and say, I made this.
Exactly.
Which for a software engineer, that's kind of cool.
It is.
It is kind of cool.
And, you know, it used to be that you that there were more people who did home fabrication of boards.
I've also done photo process where I actually bought photo resist
covered copper clad board and you, and you do a contact print, you print out a film of your design
and you put your film over this, over this photo resist, and then you expose it. You need UV light.
So I set it out in the sunlight for 10 minutes and then you take it back in and you develop it.
I remember developing it using a, a, a combination of, I think I used, there was lye somewhere in the process.
I don't remember if that was to remove the undeveloped resist or whatever.
But you basically end up with a photoresist process.
That's the other thing, is you're working with all sorts of nasty chemicals in the course of doing this.
You don't necessarily want to play with ferric chloride or lye or any of these things too much.
And what you can do at home is, is fairly limited. Uh, but it is possible to do, to do one-off boards that way.
But again, internet's your friend, spend a few bucks and have someone professional do it
who presumably disposes of all the toxic waste legally. Yeah. I mean, I could see how that'd
be fun and, and maybe sometime I would try it, but
it's not right now. I have other things. I still like these lungs. Yes. Um, and then turnaround
time also is, varies wildly. Well, that's one of the things in a company, you know,
if we were doing this professionally and I was program managing it, um, there's the schematic capture that happens inside and layout is often a specialized,
uh, skill.
So that is often a contractor, but sometimes it's an inside guy who will finish it.
It's not always the electrical engineer sometimes, but not usually.
Yeah, not usually.
And so it goes out for layout.
And then it goes out for fabrication.
And when we're doing this in a company, as soon as the schematic capture is finished,
maybe even a little before, you start kidding.
And we mentioned kidding before.
And I said it really should have capital letters.
Because it's hard the first time.
It seems easy.
It's just, you know, going shopping.
This is something not to work in the stereotype,
but I'm pretty good at it.
It's just a list of part numbers
and you just got to buy them all.
And you just got to buy them all
except Deja Key is good for 85,
maybe 95% of your parts
and then the other 5%
you have to go learn about everybody else.
Future Electronics wants you to order more of their parts
instead of getting them from Digi-Key.
And this vendor only will sell you these parts,
and this processor is only available from these other people.
And so you end up buying from a whole bunch of people,
and then you get the parts parts and you realize you didn't
get the right parts or there are companies like samtech which make excellent connectors of various
sorts but they literally ordered well they literally only manufacture them when you order
them they they don't carry inventory of a lot of their parts and part of that is because they have
you know a million different combinations of part numbers they couldn't reasonably pre-manufacture
these things so they so they make them on demand or they have a very small inventory that they use
for samples and it's a lot like cooking where you're cooking a long-term thing a short-term
thing and you need them to come out at the same time and so kitting needs to all be done as soon
as pcb is is complete exactly and so you have to order your connectors and
you know, you have designed
this great memories
subsystem into your whole
thing and it worked as a prototype.
That was only because you got the one sample and now they're not
planning on fabricating that
chip until November of next year.
Exactly.
Kidding was hard.
And it's really frustrating, you know, when you're,
when you're on a fast track design, you, you expedite the, the fabrication of your PCBs
because you absolutely positively have to have your prototypes right away. And then you can't
get some components. And so you've paid extra money to get your boards made quickly, and then
you can't do anything with them. Yep. Sitting around waiting for the part to come in. You
almost, I mean, you kind of have to start kidding when before you finish your schematic because you need to know if there are any unavailable
parts so you can replace them at that time yes um and yet it doesn't feel that way it feels like oh
we'll do the schematic and then we'll do the layout we'll start pcb fab and then we'll start
buying parts because that's makes sense but i've gotten
burned a couple times but availability of parts often defines what i'll put in a design i will i
will when i when i have a choice of parts i will go to digikey and simply click the little in stock
filter and that will often decide for me which part i'm going to use well they have six thousand
of this part and there's a six week lead time on this other part I'm going to use. Well, they have 6,000 of this part and there's a six-week lead time on this other part.
I'm going to use the one they have in stock.
Yeah, that's, yeah, pro tip.
Use in-stock parts.
And the problem, of course, comes when you're using specialty parts that are sole sourced. And unless you're a large,
you know,
this,
this gets back to how big is your business and how much do they want to,
to be your friend?
And,
and the hierarchy goes,
you are Apple,
in which case you can beat them with a stick regularly and they will,
and they will lick your feet or,
or,
well,
I mean,
and when we worked at leapfrog and we would say, yeah, we're going to
want, Oh, maybe a million, probably 3 million in the next two years. Suddenly they were much nicer.
Yeah. When, when you're the world, when you consume 80% of the world's supply of ROM,
ROM vendors really want to work with you. They, they work, they try really hard to be your friend.
And, and yet when you are
like, yeah, this is my garage project. Maybe I'll sell like five of them and make like 10 of them.
They really don't want to talk to you. And in fact, they actively resist you because they don't
want you causing them to have support calls from the 10 other people who buy or build your product.
You know, you, you are actually a net negative drain on them.
When I talked to the Atmel guy, I kind of thanked him for all of the times as a small company or
in a startup, they have been willing to sit down and talk to me. And he was like,
okay, that is a weird thing to say to me. And I could just see on his face that he was like,
I have no idea where she's going with this. it's true there are so many other processor vendors and chip vendors that just won't talk to you if you're like
yeah you know i don't even know if i'm gonna sell it it's gonna be an open hardware thing and they're
like go away kid you bother me yeah well i mean there are there are vendors that simply will not
talk to small players if you if. Broadcom, Qualcomm,
basically anyone who's doing a cell phone chipset because the-
You're not worth their time.
Well, the parts are so sophisticated
and require so much support
that when you are a customer of theirs,
they're dedicating substantial dollar value resources
to supporting you.
Yeah.
And so they can only support so many customers and
they're only going to support the customers that make the money. And you as a hobbyist are never,
ever going to make the money. And I've actually called up a few, a few, uh, chip vendors and,
and asked about things that, that I had found in hobbyist systems. And they've,
they've been actively annoyed that they were used in, in hobby products. And yet I think that's dumb. I mean,
I guess it's the, the everything should be free and open part of me. Uh, because
when I use something in my hobby project, I'm about a thousand times more likely to use it
professionally. True, but not always, but you also produce things professionally there's a lot of
hobbyists who don't there's a lot of hobbyists who are just hobbyists and and you know again
going back to the cell phone example these guys work in quantities of millions or tens of millions
or hundreds of millions yeah exactly we've gotten pretty far afield but and we've only got one big step so we've we've
we've kitted which was harder than we expected and maybe we should have started earlier but
we've got the pcbs um and now there's this smashing together of those two things your
your resistors are in a baggie your processors in a baggie your capacitors are in a baggie, your processor is in a baggie, your capacitors are in a long tube. Now I need
to solder them on, but we've already discussed my soldering skills, so it seems unlikely that
I'm going to solder on anything other than the headers. Okay, so there's, yes, there's three
ways to do this. There's you solder it all together yourself, and we've decided that's not a good
choice. There's you go to someone who solders better than you
and have them hand assemble it.
And there are a lot of places that are very good at that.
For example, again, not a paid plug,
but we use a place called Hildy Licht,
which is a small shop over in Mountain View.
And they've been around almost forever.
They did some of the original Apple II prototypes to give you an idea of how old they are.
And they are a bunch of almost, I believe they're almost all women, who are male standard
soldering trained and very, very good at soldering stuff down.
You give them a bag of parts and a description of where everything goes and they'll assemble it.
That would be awesome.
I mean, I've had the privilege of working with technicians who are phenomenal.
And it's one of the sad parts of not being in a big company is not having access to these people that you can just say, could you build this for me?
And they do.
And I assume they make cables because that's the other hideous.
I believe so.
I know that they do a lot of a lot of
prototype and and small volume production builds uh and then and then of course the third choice
is you take it to an assembly house where they actually uh machine place all of the parts and
run it through a reflow oven um and this is what you have to do. This or a reflow process is what you have to do for certain parts like BGAs we were talking about.
All right.
So we do one of these.
We get a board back and we do bring up, which I think is an entirely separate show.
Yes.
All right, then.
The sun is shining and the afternoon is trickling away.
So I'm going to call this out of time.
It's been a little longer than usual,
but thank you for being here.
Is there any last piece of encouragement
you'd like to leave us with?
No, just get out and build stuff
because it is surprisingly satisfying
to have a piece of hardware that you've built yourself.
Yes.
Yes.
Like when we worked at LeapFrog
and I would go to Target stores and just stand in the
aisle waiting for someone to walk by so i could exclaim at how cool this toy was uh it is very
cool to have hardware you've worked on even as a software engineer and i suspect having hardware
that i've built more of will be even more you you know, whatever that feeling is, that pride, that coolness, that,
oh my God, I built it feeling. I think, I think we can even be more of that.
It is a lot of fun.
Well, that's the show. Thank you to Phil King, electrical engineer extraordinaire for taking
the time to speak with me, to Christopher White for all that he does, including producing this
podcast and to you for listening.
If you'd like to say hello, don't be shy.
Hit the contact link at embedded.fm or email the show, show at embedded.fm.
And don't forget, we're still hoping for our first iTunes review to be a positive one.
Help, please.
And now your one final thought.
Making a board is scary. But all things considered, making a board is less likely to cause you permanent harm than crossing the street.
So, stay home and start designing.
Have a good week.