All Episodes

April 12, 2024 38 mins

Today, we're tackling a topic that's a gold mine for any designer: crucial features you might not have considered for your prototype. From debug headers to "Swapperoo" resistors and heartbeat indicator LEDs, we're covering it all. Tune in as we share insights, anecdotes, and maybe a few confessions from our own prototyping adventures. Plus, we dive into the importance of making your prototype testing-friendly and discuss a poll that could solve a common UART connection dilemma. This is episode 426 – your prototype's new best friend!


Discussion Highlights: 

  • Debug Headers: Taking inspiration from James Lewis’s Apple Mega 2 project, we discuss the importance of embedding debug headers directly onto the PCB. We also highlight the Tag Connect's footprint as a space-saving, connector-free debugging interface. 
  • Test Pads for Production Testing: Crucial for measuring signals ensuring that potential circuit issues are not overlooked. This measure is crucial for validating the prototype’s performance. 
  • Jumper Headers in Series on Power Rails: This method allows for the quick disconnection of subsystems for individual testing, enhancing the diagnostic process without the need for circuit alterations.
  • Easy ways to hook up test equipment: By integrating connectors and test points specifically designed for easy attachment of debugging and testing tools, such as multimeters or oscilloscopes, engineers can streamline the troubleshooting process. 
  • Signal Integrity Testing Points: To monitor and adjust signal quality proactively, supporting the prototype’s overall integrity.
  • Thermal Management: Managing component temperatures is a critical aspect often overlooked in the early stages of prototyping. The discussion includes practical strategies for thermal management, even in challenging environments like aerospace.
  • Prioritizing Function Over Form: Make the prototype whatever shape it needs to be to be accessible for testing and debugging, even if it means starting with a larger form factor.
  • Early Inclusion of Fiducials and Mounting Holes: The significance of adding fiducials and mechanical mounting holes at the onset of the design process aids in component placement, assembly, and effective heat dissipation.
  • Adding Pass-Through Holes: For unforeseen modifications or component additions post-design, showcasing the flexibility this can provide to a prototype.
  • Poll Discussion: When connecting two chips, each with their own TX and RX lines, should TX be connected to TX, or does TX connect to RX? 

Relevant links:

MacroFab:

This show is brought to you by MacroFab, which provides a platform for electronics manufacturing services (EMS), hardware development, designing and prototyping for individuals, startups, and businesses. Key MacroFab services include PCB (Printed Circuit Board) fabrication, assembly, and testing. Customers can use MacroFab's platform to upload their PCB designs, select components, and specify manufacturing requirements.


We Want to Hear From You!

Subscribe to Circuit Break wherever you get your podcasts! And join our online Discourse discussion hub at forum.macrofab.com to keep the conversation going with electrical engineering experts and experimenters! You can also email us at podcast@macrofab.com.

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Stephen Kraig (00:07):
Welcome to circuit break from Macrofab, a
weekly show about all thingsengineering, DIY projects,
manufacturing, industry news,and top things to add to your
next prototype. We're your host,electrical engineers, Steven
Kraig and Parker Dillmann. Thisis episode 426.

Parker Dillmann (00:32):
Circuit breaker from Macrofab. So, yeah, we've
been wanting to do this episodefor a long time. This is, like,
things to add to your nextprototype that you might not
have thought of. I it's kind ofa weird way to put it though.
Because everyone's gonna belike, oh, yeah.
I put that

Stephen Kraig (00:48):
in my prototypes. But, you know okay. The way I
would handle this, we will haveshow notes up with this that
gives all of our all the stuffwe're gonna talk about here.
It's not a bad idea to have thisprinted out and just when you're
done with your prototype or ifyou're kind of in the middle of
your prototype just glance overthe list and say hey, are any of
these going to be helpful?Because a lot of the stuff we're

(01:11):
gonna talk about today arethings that we've made
prototypes before and wish wewould have had on that
prototype.
Exactly. And just doing a quick,I guess you could say, DFX kind
of check by just reviewing thisand seeing if it applies to your
prototype.

Parker Dillmann (01:28):
Mhmm. And I guess some of these might be
super obvious. Could be like,oh, well, it wouldn't work
without it. Like, the first onewhich is like debug headers. But
going further than just puttinglike a 2 by 3 connector for
let's say you use an ABR ISP.
Right? Or you put your JTACconnector. But go further, what
if your design cycle is reallylong on this piece of hardware?

(01:52):
What if you just put yourconnector for your debug right
on the board? Right?
So you just plug your debuggerright into your PCB. Got the
idea from James Lewis who wasworking on his, Apple Mega 2
project, and he eventuallybasically just made it so his
test equipment we'll get to thistoo, like, test equipment would

(02:13):
just plug right into his hisprototype, and so he would

Stephen Kraig (02:16):
That was some amazing forethought. Like Yeah.
Just he knew from the get gothat there could be, and this is
not foreshadowing, but therecould have been a nightmare
situation of having to debugmany, many, many lines. And
we've probably all been therebefore where you have your DLA
out and you've got 30 differentlines and you're trying to use

(02:38):
those little like finger clipsto get onto all kinds of stuff.
And you're sitting there lookingat your board and I'm like, man,
this would have been awesome ifI just had a connector on my
board where I could plug in andgo to town.
Think about your design cyclewhen doing a prototype. You
know, If your design cycle isgoing to require significant
amount of time doing debuggingor doing firmware development on

(03:00):
it, If you have a connectorwhere you can leave your
programmer connected and youcould just sit on your computer
and tip tap away to write yourfirmware, that is invaluable.
Having to go to your board andconnect and disconnect over and
over and over is a nightmareafter about the 3rd time. And
anyone who's done any kind ofextensive firmware development

(03:22):
probably knows exactly whatwe're talking about here.

Parker Dillmann (03:25):
Yeah. So put in make connectors for your test
equipment that you can leavepermanently kinda hooked up to
your prototype. Because it alsomakes moving it around. Let's
say you have all 30 of thoseprobes on your prototype, and
you're like, oh, I need to showthis to, like, my director or my
supervisor now. And you pick itup and you put it on their desk,

(03:47):
and it doesn't work now anymorebecause you, like, jostled it in
just the right way.
When I was designing andprogramming snacky, the snack
machine, I actually did the samething, but I couldn't the the
problem with snacky is it's ait's in a snack machine, so it's
ginormous. So I bought a 40 footlong USB cable, which is way

(04:08):
beyond the spec of what a USBcable should be able to handle,
but it worked. And so I actuallyhad my desktop plugged into
Snacky, which was, like, youknow, in the garage 40 feet
away. So I could push firmwareover and, like, walk over and
see if it was working correctlyor not. Hey.

Stephen Kraig (04:29):
That I mean, whatever works. Right? There's
so much value in being able toleave your things connected, go
press a few buttons and thenenact some kind of a change.
That makes life considerablyeasier. And Parker and I have
discussed this particular brandmany, many times on the podcast,
but TagConnect is absolutelyfantastic for their programming

(04:53):
cables and their programmingheaders.
Well, I guess you could it's notreally a header because it's
just a footprint. But being ableto connect one of these cables
into your board and leave itconnected or use their pogo pin,
their press on ones for, youknow, in circuit programming for
production style, Thinking aboutthose earlier on in your
prototype is incrediblyvaluable.

Parker Dillmann (05:12):
You know, let's say you have a connector that's
to a data bus or whateverwhatever you think might be the
problem, like, a UART line.Right? Well, at this stage, go
ahead and any single kind of anysingle, like, IO line that you
can think of, you should justput a test point on right now.
Mhmm.

Stephen Kraig (05:32):
Just go

Parker Dillmann (05:32):
ahead and put it on there. Even though you're
like, oh, yeah. I'm never gonnahave a problem with that. Put it
on there.

Stephen Kraig (05:37):
Famous last words. Famous last words. Yeah.

Parker Dillmann (05:39):
Put a test point on it. Because guess what?
You can always remove it laterdown the road, or you can always
put solder mask over it to coverit up later.

Stephen Kraig (05:47):
Or just leave it.

Parker Dillmann (05:48):
Right. Or you can just leave it because if you
let's say you're develop, you'rein production and you're like,
oh, we need to now test for x yz functionality, or you got test
point there. So now all yougotta do is just drill a hole in
your in circuit tester and put apogo pin. Boom. Done.

Stephen Kraig (06:05):
Yeah. Or or, you know, you left that thing in
your your final revision. Andsay you have a failure out in
the field and that thing is in acompletely different country and
you're getting a call at 3 inthe morning like, hey, this is
not working. Hey. You have atest point on your board.
You know? Similar to test pads,it's not a bad idea to leave, if

(06:25):
you're willing to do it, somethrough hole pads in case you
need to solder some wires.Because if we're talking purely
prototypes, you know, if youneed to access something and
access it often, sometimes it'snice to solder a little wire on
that you can clip to and leave amore permanent connection. And
in relation to that, the otherhalf of probing is also worth

(06:47):
considering and the other halfbeing ground. It's not a bad
idea to consider where yourground points are.
Something worth thinking aboutis like a ground density on your
board. So, maybe one ground testpoint per every 2 square inches
or maybe even 1 square inch. Orif you have like a very
sensitive circuit that you'retrying to measure say like a

(07:09):
really low analog value, put aground near that such that you
can probe right at the point.And and here's the best part
about these kinds of testpoints, they're free. You just
slap them down on your board,open up some solder mask, and
and you have it there.
But you will kick yourself ifyou don't have it, so consider
that.

Parker Dillmann (07:27):
And let's go one more step on these test
points, is if they're notunderneath a component, untent
your vias. Yeah. Because now youautomatically have a test point
if that signal crosses between,you know, top and bottom

Stephen Kraig (07:41):
Right.

Parker Dillmann (07:42):
Or goes in between the you know, goes
through an inner layer. But nowand now it's also through hole,
so you can solder wire to it aswell. Untent the vias because
you guess what? You can alwayssend them back up later when you
go to production. But now everysingle signal you can access if
you need to.

Stephen Kraig (08:01):
You know what's fun about the aerospace
industry? We cannot tent RVAsbecause For outgassing? Well,
because you now have a wholebunch of plugs with gas in them,
even though it's a very smallamount, and then you throw that
up in a vacuum and your boardstarts popping all over the
place. Right? And so we yeah.
We can't tint our vias. So weinherently get that kind of

(08:22):
thing, which that can be reallynice too because if you make a
mistake on your prototype andyou have to cut a trace or you
have to move a trace, if youhave untented vias, that
technically is a place for aprototype that you can solder
to. So it gives you access to alot of your your signals. So it
is kind of nice that way. Now Iwould not consider using

(08:46):
untented vias as a permanenttest point.
Like, if you're going intoproduction, you don't wanna do
that because you can damage viasby, you know, stabbing a probe
into them because they're notthe most robust things. But it's
not a bad, but but if you needto just test something, you
know, a few times here or there,you're probably not going to
damage it.

Parker Dillmann (09:06):
I've recently just started doing this on all
my prototypes is sectioning offdifferent parts of the board.
So, like because you always havesubsystems. You have your power
subsystem. You have yourmicrocontroller. You might have
an analog front end, that kindof your sensors is actually
sectioning those off on theprototype, and where they
connect to the rest of thecircuit is putting jumper

(09:30):
headers and putting a 0basically, I put a jumper header
that can disconnect Mhmm.
The, to that circuit. And then Iput a 0 ohm resistor bridging it
as well. Because sometimes Idon't wanna put the header
there, and so I'll just put a 0ohm resistor that can take off.
But sometimes I wanna have theshunt there where so that way I

(09:51):
can let's say if I'm measuringcurrent now, I can actually put
in a I can put my probe acrossnow without having to cut a
trace or desolder or anything oranything like that. Right.
So, yeah, that way you candisconnect different power
rails. I like using it a lot forpower rails because, let's say,
you're designing a new switcheron your your prototype, new
switch mode power supply, andyou mess it up because you won't

(10:14):
you will mess it up. Yeah. Andbut now it's like, well, in the
past, you would have to go and,like, do surgery to, like,
disconnect it from your rest ofyour circuit. And so you can
bring it up, make sure it'soutputting the 3.3 volts that
you want to output or whateverthe voltage it needs to be, and
then you can connect it back up.

(10:34):
Or, like, oh, this switchingcircuit is dead, and, well, now
I can bypass it and just put alab power supply there. And And
so I can test the rest of mycircuit and get more, usable
evidence or usable data out ofmy prototype.

Stephen Kraig (10:49):
Yeah. I think on on power supplies, it's critical
almost. You know, it dependsentirely upon how much current
you're dealing with because ifyou're dealing with something
that's delivering a 100 amps,you probably can't probably
can't do that. Right? But, youknow, within reason.
And I would argue on the frontand the backside of a switcher,
put these shunts. Just make justthink about what kind of

(11:12):
measurements you're going to do.In fact, one of the fun
exercises, maybe it's not evenan exercise, one of the things
we have to do in my day job is,we have to define all of the
tests we're going to do to ourboard before we order the board.
Like, so we're writing out ourentire test plan, and so when

(11:33):
you say things like, oh, I needto measure the power supply
current to x y z circuit, youhave to think about how does my
board allow me to measure that?And a lot of times asking those
kinds of questions or or doingthat before you order the board
makes you go back to your boardand say, oh, I need to add this
shunt or this jumper or whateverkind of circuit.

(11:54):
That alone has been reallyvaluable in my career of just
putting 0 ohm resistors inplaces to, because I know I'm
gonna screw things up. So Icould deactivate whole chunks of
circuit and immediately just go,the problem's not there. Go to
the next one. Right?

Parker Dillmann (12:13):
I like doing it now on, like, USB devices I'm
developing, where, like, I'llhave my USB plug and then
immediately goes into a shunt.Right? So now I can disconnect
it and put my meter, see howmuch current I'm drawing there.

Stephen Kraig (12:27):
So I really like the idea of even making it as
simple as having just a 2 pinheader where you can make a very
simple cable that just goes tothe 2 pins and has banana plugs
on the other side and it goesright to your multimeter. And
there you go, you have anammeter that you can just insert
directly into the circuit. Yep.

Parker Dillmann (12:47):
That's actually what I have for a lot of my
projects. It's so convenient.Yeah. So this is one that you
put in here, thermal management.

Stephen Kraig (12:55):
Yeah. Okay. So making it easy for a way to get
temperature information. And so,you know, I I I work in
aerospace now, and thermal is abig deal in in aerospace because
you don't have ambient todissipate temperature. So
thinking about how you are goingto get heat out of your

(13:16):
prototype is actually a prettybig ordeal.
What's the 3, the the threemethods of, or the three way
heat is transferred? It'sconvection, conduction, and
radiation. Right? Yep. In space,convection goes away.
You don't get that one. That youdon't get that one for free like
you do down here. Right? So youhave conduction and radiation.

(13:38):
Radiation typically isn't thatmuch, so you get really
conduction.
Conduction is the one where youhave to you have to get all your
heat away, and f r 4 is a prettydamn bad conductor of heat. So
you can't rely on your heatgoing down your component and
into the board. I mean, you canto some degree. Right? But it's

(14:00):
not a very good one.
So in your prototype, it's apretty good idea to start
thinking about how am I gonnaget heat away from my
components. Now, obviously, noteveryone's working in a vacuum,
but that doesn't mean, you know,don't consider it. Also, if you
have unique aspects to yourboard, if you have assemblies or
whatnot, like, do you need toadd sill pads to your to your

(14:24):
components? Do you need to addsome kind of thermal grease to
your components? How does thataffect the design of your board?
How does that affect where youplace components? And are there
going to be mechanicalinterfaces between components
and heat sinks and things likethat. Add that to your prototype
earlier on in the process andget that done because it becomes

(14:46):
a nightmare later on if you haveto figure it out.

Parker Dillmann (14:49):
There's a paper from TI about, like, LDOs, low
voltage dropout regulators, andwe're, like, you only even,
like, an FR 4 with a copperpour, you only get, like, 1
square inch before there's,like, diminishing turns of how
much copper you give a componentto dissipate out into. Right. So
you don't get a lot. So if youhave a really thermal intensive

(15:12):
design, put it in places whereyou can put thermal probes and
stuff easier and attach them. Ormaybe you put the probes, like,
in your design so you can hookup to them with your, like, a a
board mounted thermistor oranything like that that you can
hook up your meter to and read.

Stephen Kraig (15:27):
So that's a completely different aspect of
things. Not only are youmanaging the thermal, you're
measuring it at the same time.So figuring out, you know, is it
acceptable to buy, like, alittle SOT 23 temperature
measuring probe and put it nextto a component or do you need to
actually get out yourthermocouples and, you know,
stake them and glue them to yourcomponents or whatnot. Yep.

(15:50):
That's worth considering in theprototype.
Mhmm. Well, okay. I've got a funone. A really fun one that we
ran into the other day. And infact, I added it to our list
today because we ran into thisproblem last week at work.
I think it is very valuable toadd what I call pass through
holes to your board. BecauseI've run into this at previous

(16:12):
jobs where I made a mistake in aschematic or a layout or
whatever, and I now needed asignal to go from the top side
of the board to the bottom sideof the board. And the only way I
was gonna do that on theprototype is by routing a wire.
This was specifically a problemat my last job with WMD. Because
of the way that our Eurexdevices fit into the case, you

(16:37):
could not route a wire aroundthe edge of a board because then
it wouldn't fit in the case.
So sometimes I would use holesthat were in the board that
were, you know, part of the tagconnect connectors, I would run
a wire through there. Well, myfirmware guy got mad at me
because it was really difficultto insert the programming header
at that point. I think it'sactually a really valuable thing

(16:59):
to arbitrarily add 1 or 2 orwhatever holes in your board
just in case you make a mistakeand you need to route a signal
from the top to the bottom sidewith a wire. And we ran into
that at work the other day wheresomebody, there was a mistake
made. Actually, no.
It wasn't even a mistake. Iwouldn't call it a mistake. We
needed to make a mod tosomething to operate

(17:22):
differently. I won't I'm notgonna call it a mistake. And we
needed to route a wire aroundthe board.
But we, once again, due to ourmechanical constraints, we
couldn't do that, so we had topass it through a hole. Well,
the only holes on the board weremounting holes, and they mated
to a mechanical surface. And so,we ended up prioritizing the

(17:45):
wire over the mechanical surfaceand ground down the mechanical
surface to give room for thewire to go through. If we just
arbitrarily had a small holesomewhere in the board, that was
just, let me just, in a crassway, call it the oh shit hole,
where it's like, oh shit, I madea mistake. I need to get a
signal from the top to thebottom.
I think that's super valuable.An OSH? An OSH. Yeah. Yeah.

(18:07):
Yeah. Yeah. I think I'm gonnastart adding that regularly to
my boards. And like we said withtest points earlier, if you get
to the end design and you don'tneed it, just close the hole,
you're done, you're good. Orwhat?

Parker Dillmann (18:20):
You know what?

Stephen Kraig (18:20):
If you got that far, just leave it. It, you
know. Well, actually, if it wasa hole, I might if it was a
sizable hole, I might actuallyget rid of it because someone
might look at it and be like,something needs to be there
because it's a hole. Right?

Parker Dillmann (18:33):
A thing to spur off that is add mounting holes
and fiducials at this point toowhen you're in a product,
especially early on, but putmounting holes anyways. Because
one, it's gonna be there so youbecause you're gonna need
mounting holes eventuallyanyways for your product, but it
gives you a place to put your tomount your prototype to
something. And so when you dostart moving it around, 1, your

(18:57):
your prototype is not influencedby whatever surface it's on. Try
powering up a board on, like, anESD mat. Especially, you have,
like, low signal analog stuff,it's gonna throw the signals way
off.
Yeah. And 2, fiducials. Go aheadand add your fiducials right
away so you don't forget them.Later down the road, when
you're, like, you started todensify your, your your design,

(19:20):
and now you don't have you don'thave a spice for your fiducials
anymore.

Stephen Kraig (19:23):
Yeah. Yeah.

Parker Dillmann (19:23):
Add them early so you have them already in your
schematic and already in yourboard layout. You got them
already.

Stephen Kraig (19:30):
I started doing something a few years ago where
I anytime I had a new layout, Iwould do my board outline. That
was the very first thing I woulddo. The second thing I would do
is put fiducials down, and thethird thing I would do is
mechanical mounting holes, andthen I would lock those 3, and
they're done. Unless mymechanical team came to me and

(19:50):
was like, hey, the board outlineneeds a change or blah blah
blah. But before I touched anelectrical component, those
things were done.
And you find that if you're inthe middle of a layout, or if
you're you're getting close tothe end of the layout, and you
need to add a fiducial, you'relike, oh my god, I have to move
all this crap to get these partsin, how can I even do it? You

(20:12):
run into the issue ofcompromising on the fiducials or
whatnot. But if you start withthe fiducial there, your brain
just go to this place where it'slike, that's untouchable
territory, I can't get close toit. And your layout will morph
to accept those. Right?

Parker Dillmann (20:28):
Or your or your product definition

Stephen Kraig (20:30):
will have to change. Well, it does. Yeah.
Well, okay. Actually, here's thething.
Most of the time, I promise youthis is true, whenever I'm
laying out a board, because Ihave run pick and place
machines, and because I've knowna lot of friends who have run
pick and place machines, andbecause a lot of my designs were
going to people that I know whoare running pick and place

(20:51):
machines. I try to make theirlife easy. I try to do things
that don't piss off my pick andplace operator. A lot of times
because they're my friends.Right?
And on top but regardless, evenif I don't know the guy, I try
to think of their job because ifI give them, like, these weird
fiducial positions, like, I'veseen them just get mad at people

(21:13):
who who put weird fiducialpositions. And so I tried to
give, like, really nice numbersand, like, keep them vertically
aligned or horizontally alignedor whatnot. Like, I like to hope
that when I send my boards outfor assembly, the guy at the
pick and place machine is like,I like this dude. This dude did
a good job. That's my goal whenI'm laying out a board, you

(21:34):
know?
As opposed to like, oh, notanother one of these designers.

Parker Dillmann (21:40):
The person goes to their doctor afterwards, and
they're like, your bloodpressure's down 4 points. Good
job. Yeah.

Stephen Kraig (21:48):
See, see, I'm working for those guys.

Parker Dillmann (21:50):
Yeah. Another thing to add to your prototypes,
heartbeat and indicator LEDs,like, the hello world of your
microcontroller is writing codeto blink that LED.

Stephen Kraig (22:04):
Just say I'm alive. Hello.

Parker Dillmann (22:06):
Yeah. I think the Chris Gammel has talked that
as it's called getting toblinky. A GPIO pin that's
connected up to a LED. So youcan just, like, flash your
firmware with blinking LEDs soyou can know, like, within 5
minutes, does my mic controllerwork or not? Now indicator LEDs,

(22:26):
there's 2 of these.
2 different kinds I like to puton. 1 is on power amps.

Stephen Kraig (22:31):
Mhmm.

Parker Dillmann (22:31):
So like a LED that lights up that, hey. I've
got 3.3 volts here. I'm alive.I'm happy. I'm happy.
I like those a lot. Mostlybecause you get, like, a visual
representation while you'redebugging if something is
working. But another one that alot of people don't think about,
a lot of integrated circuits,like, especially, like, power

(22:53):
regulators and stuff, like, morecomplicated ones, will have,
like, a power good and a statussignal that comes out of the
chip. Putting those on LEDs tooso you can easily reference
them. And, like, if thissignal's high and this signal's
low and this one is high, itmeans this.
Right.

Stephen Kraig (23:11):
This one's blinking fast. This one's
blinking slow.

Parker Dillmann (23:14):
Yeah. If you have those as visual
representations, you don't haveto get your multimeter out every
single time and measure thosesignals and figure out if
they're high, low, or oroscillating. Right. So putting
LEDs on those is a really goodway to quickly debug problems.

Stephen Kraig (23:31):
It's a visual it's a hardware way of
accomplishing the print ffunction in your code where it's
like, I've got to this part ofmy code, that means I've
executed everything above it.Right?

Parker Dillmann (23:43):
Like, in beyond, let's say the the
blinking LED indicator is I'lluse those 2 to be like, oh, when
I'm trying to get an interruptto work and it's not firing. But
I'll put in my code, hey. Whenthis interrupt fires, turn on
the LED.

Stephen Kraig (23:59):
Right.

Parker Dillmann (23:59):
And so now I have a when I finally cracked
the right memory address thatyou have to hit to make that
truck fire Yeah. It willactually light up

Stephen Kraig (24:09):
the LED, and that's when

Parker Dillmann (24:10):
you get that eureka moment. Right?

Stephen Kraig (24:12):
It's funny because a lot of what we're
saying is easy stuff. Right? Alot of this stuff is is really
simplistic, and some of it isjust like, well, duh. Right? But
I can tell you I've made thisevery single one of these
mistakes.
I've made a board where at somepoint in time, I'm like, man, I
wish I had that. Now I can getby without it, but it would have

(24:35):
been nicer to have

Parker Dillmann (24:36):
it. Right? Oh, yeah. For sure. The next one I'm
gonna talk about is adding whatI'd call Swapparoo Resistors.

Stephen Kraig (24:45):
No. Those are great. And so

Parker Dillmann (24:47):
I'm gonna ask everyone here. We should have a
poll as well. This would begreat. This would be a great
poll. Alright.
So what what it is is this is myquestion, everyone. You got your
UART serial bus TX RX lines. Soyou have 2 chips. Right? Mhmm.
And they both have TX and RX onboth their buses. Does TX go to

(25:07):
TX, or does TX go to RX on theother chip?

Stephen Kraig (25:11):
I have I have thoughts on that, but I don't
know. And and the reason why Isay I don't know is because I've
been bitten by this thing whereI was very confident, and then I
made the thing and it didn'twork. TX should go to RX, and RX
should go to TX. Right?

Parker Dillmann (25:30):
And should. In theory. Right?

Stephen Kraig (25:35):
That's that's what you okay. I'm actually
gonna go 1 before we go into theswappery resistors, I'm curious
your thoughts on which ones doyou call the master, shall we
say? In terms of, like, ifyou're gonna label a NET, do you
label it RX or TX based off ofwhich chip?

Parker Dillmann (25:57):
Like who? The first one I put on the board.

Stephen Kraig (26:03):
I like that. And my rule of thumb that I've done,
and I have no idea if otherpeople do this, is I usually let
the microcontroller be the onewho names the next.

Parker Dillmann (26:12):
Usually the microcontroller is the first
one. Yeah. Let themicrocontroller do that.

Stephen Kraig (26:16):
Yeah. Yeah. Yeah.

Parker Dillmann (26:17):
Yeah. Now there was a so the Swapparoo
resistors, there was a tweetsomeone sent me. Apparently,
there's like a name for these.So basically, it is 2 resistors
that are right next to eachother that form a like, their
pads form a square. And so thatyou can you can easily remove
the 2 resist basically, there's0 ohm resistors and you can

(26:40):
rotate the resistors and theystill can solder into those
pads, and they basically swap TXand RX around.
I like Swapparoo. Well,Swapparoo is the act of doing
it, but there's, like, aspecific name for that
configuration.

Stephen Kraig (26:57):
Enough people have done it that warrant a
name.

Parker Dillmann (27:00):
It's the RXTX Pokeyoke.

Stephen Kraig (27:02):
Pokeyoke. Okay. Yeah. Yeah. Yeah.
Yeah. I like it. Here's a pointof advice. Dropping in this
Pokeyoke Square of SwapparooResistors, Great idea. It's only
half of the the job.
And here's what I mean is, onceyou get your board and they're
populated in one position oranother, you test it out. If you

(27:25):
find it works, great. If youfind it doesn't work, flip them,
and then immediately, like thatexact second, go and fix it in
your design. Don't wait. That'sthe other half of it.
Do not wait. Do it right then,and then you're done. Like Yeah.
I can't tell you how many timesI'd do these things where it's
like, oh, I'll just make thischange, and I'll remember it

(27:47):
later. You won't remember it.

Parker Dillmann (27:50):
For your prototype, your first prototype,
always prioritize functionalityand debugging over form of the
device. Make it a square orrectangle, and make sure all the
components are there. Make it sothat you can easily disconnect
all the subsystems. Make it soyou can easily get your test
equipment in there. Make it soyou can easily hook stuff up.

(28:13):
Don't put a test probe rightnext to a big electrolytic
capacitor because there's no wayyou're gonna be able to get a a
test probe in there to measureit. Let alone, like, if you need
desolder something that's, youknow, in the valley of of towers
of electrolytic capacitance. Ohmy god. I've had to do that so
many times where you have to,like, get tweezers and hot air

(28:34):
down into, like, a little tinyarea. They're melting
everything.
And they're melting everythingaround it. A sea of of goopy
electrolytic capacitor bases.

Stephen Kraig (28:44):
Yep. Yep. Been there.

Parker Dillmann (28:45):
So, yeah, prioritize functionality from
there's a great photo of, like,a prototype, like, iPhone, and
it's like the size of, like, anewspaper.

Stephen Kraig (28:55):
It's like the PCB. The idea first was make it
work.

Parker Dillmann (28:59):
Make this whole thing subsystems all these
subsystems work together. Yeah.So think about that as you don't
have to hit your form on yourfirst prototype. You should be
making your circuit works beforeyou start shrinking it.
Something

Stephen Kraig (29:13):
that just came to mind, but, it's sort of
referenced a little bit earlierin this podcast. For SPI
communication lines, add 0 ohmresistors to your clock, your
data, even your CS lines, andyou may say, why 0 ohm? You
don't sometimes, you need inlineimpedance for your high speed

(29:36):
digital lines like that, and ifyou don't have a resistor or if
you don't have pads to installsomething, it is a nightmare to
get them in there. Add 0 ohmresistors. Test your circuit.
If you find you don't need the 0ohms, in the next revision, just
get rid of those. But forinstance, we had a circuit at
work that we we had used thismicrocontroller over and over

(29:59):
and over in tons of products,but, we did a revision on
another product and added awhole bunch of SBI stuff.
Nothing worked. Absolutelynothing. Until I went and
scraped up lines and added awhole bunch of in series 22 ohm
resistors, everything functionedwell.
So the signal integrity of yourdigital communication lines

(30:20):
actually matters, and that was asituation where I was like, you
know what? Every time I put downSPI, I'm putting 0 ohms in there
because this would have madethat kind of a task. And, you
know, as opposed to like a fullday's worth of work, it would
have been 10 minutes worth ofswapping out components.

Parker Dillmann (30:36):
You know, there was another technique that
you've talked about long, longtime ago. It was similar, but
with op amps and stuff, likefeedback circuits and filters.
We would put extra pads downfor, like, oh, I might need

Stephen Kraig (30:50):
to have a capacitor here for this feedback
circuit. Correct. Yeah. So forany kind of feedback
compensation, always put downextra pads there. So if you do
need some extra capacitance onthere, it's just there.
Same thing actually with switchmode power supplies. In your
feedback path, so you usuallyhave, you know, 2 resistors in

(31:12):
your feedback path. Your upperresistor add a 10 ohm resistor
across it so you can take Bodeplot measurements of the
stability of your whole system.It's incredibly useful to have
things broken out like that. Soyeah, for sure with op amps,
even if I didn't need acapacitor, even if I knew I

(31:32):
didn't need a capacitor, I stillput pads down because something
might change, and I just neededa solder something in.
And most of the time, I just put0402 pads down because I could
slap something in. Even if Ineeded a bigger component, at
least the pads were there.Right? And and that's always
been kind of my thought is PCBwork is effectively free other

(31:54):
than the cost of your engineers'labor. But having to modify
physically boards isunbelievably expensive and
difficult and prone to errors.
So if you can do things likejust plop down extra parts for
free, just do it if you have theroom for it.

Parker Dillmann (32:14):
And the last thing I have is, I call it like
utilizing all possibilities isevery signal that you don't have
hooked up. So, like, it let'ssay you even have a component
that's got those indicators,like, power good and stuff,
break them out to a test pointanyways. Break everything out.
Break anything that's notunused. You might be like, oh,
it would be nice if this powersubsystem if the microcontroller

(32:38):
knew it was powered up fully.
Like, you might have, like, a arace condition on, like,
whatever that subsystem'spowering, and you're like and
you need to know for themicrocontroller side, oh, the
microcontroller needs to waitbefore it can start talking to
that component that's on theother side. And it can only talk
to it when the power good isnow. But you don't you don't

(32:58):
know that until you've written,like, half your firmware. Right?

Stephen Kraig (33:02):
Right.

Parker Dillmann (33:03):
And you're like, oh, I had that signal on
my board now. I can go wiregreen wire, jump that over to
the microcontroller, andactually test to see if that
works out well. Yeah. And thatnot just the microcontroller.
Break every components out

Stephen Kraig (33:16):
if you can. Okay. Consider this. If you have a pin
on a microcontroller going offto an 0402 component or whatnot,
and you try to solder a wire tothat 0402 component because you
need to access it, there's avirtual guarantee you're gonna
break that 0402. You're gonnabreak the solder joint.
You might even rip up the pad ofthe 0402. You might even rip up

(33:40):
the trace like a freakinghangnail coming off of your
finger. Right? It happens. Thatsounds way worse.
Right? That sounds like a reallyterrible day. So think about
those kinds of things and justadd solder points, add test
points, add ways to get in andout of your circuit. It takes
way less time to do that on yourEDA tool side than it does to do

(34:03):
it to in the physical world. AndI hate to say that Parker and I
are both actually pretty good atmodifying boards because we've
had to do it.
Yeah.

Parker Dillmann (34:14):
So many times. Yep. When this podcast comes
out, there'll also be a blogarticle that covers all this
stuff too, so go check that out.It'll be in the show notes.

Stephen Kraig (34:23):
One other thing, be explicit on your solder mask.
Put information. Put good stuffon it. Put an area on your
boards that you can write onyour board, like a with a
Sharpie, so you can write, thisis board 1, and this other one
is board 2. So if you're takingdata, you know what boards like
just do yourself a favor andmake it easier on yourself.

Parker Dillmann (34:45):
Yeah. Like, so you can write down a note, like,
on board 4, I replaced r 45 andthis feedback circuit with a 10
k instead of the 15 k, and itdid this to the output. Yep.
Because guess what? What's gonnahappen is you're gonna go you'll
do that, and then the next week,you come back, and someone's
shuffled all your boards.

(35:05):
So, like, the clean crewsshuffled all your boards around,
and you're like, well, which onewas I working on Friday?

Stephen Kraig (35:11):
Why is the cleaning crew touching your
boards?

Parker Dillmann (35:14):
Usually, it's like, actually, like, another
engineer needs to use the space.

Stephen Kraig (35:18):
Right. So they just kinda, like, push your
stuff out

Parker Dillmann (35:20):
of the building. Yeah. But push the
whole one wants to you're like,oh, it's Parker's stuff. He's
not working on anythingimportant.

Stephen Kraig (35:24):
Yep. Yep. In there. That wasn't a customer's
board.

Parker Dillmann (35:27):
No. It was my boards. Oh, I've I've been doing
this too is using differentcolors solder mask Yeah. For
prototype first? Production.
Production. So I use clearsolder mask for prototypes, and
then I just pick I usually pickred. I might be biased, but red

(35:49):
for production. So I

Stephen Kraig (35:51):
have no idea where that color comes from at
all.

Parker Dillmann (35:55):
Because y'all do the same thing though.

Stephen Kraig (35:57):
We do red for all prototype. Actually, we have 3
colors. For any prototype, it'sred. For anything that's flight,
which is production, that'sgreen, and then anything that's
test is blue. So you just lookat it and you know, okay, if I
see a green board, I can't evenget near that board without

(36:17):
telling anyone because that's aboard that could potentially go
into space.
But if it's a red board, yeah,whatever. It's a prototype,
throw it in the engineering laband do whatever test you need
to. In fact, if you see a greenboard in our engineering lab,
something has gone wrong. Flightboards aren't even allowed in
our engineering lab withoutquality being there, without all

(36:38):
the proper people being there.

Parker Dillmann (36:39):
Someone's handcuffed to that board.

Stephen Kraig (36:44):
Yeah. I like that. Yeah.

Parker Dillmann (36:46):
See that's what you can use to spare, you know,
we're talking about the sparehole. Make it big enough so you
can put a head

Stephen Kraig (36:51):
For a handcuff. Yes. Chains hanging off of it. I
do like having those kinds ofrules because they're really
simple to tell to people, andpeople can get on board with it.
Like our quality team can justlook across the room and be
like, that's a green board.
I don't wanna see an engineernear that board.

Parker Dillmann (37:09):
I'm imagining them standing up on the front of
their of the ship with a bigmonocular. Right?

Stephen Kraig (37:15):
Yeah.

Parker Dillmann (37:15):
Yeah. Yeah. Yeah. In a surveying engineering
lab for green boards.

Stephen Kraig (37:21):
Yeah. I can also see one of the other quality
guys. He's got like a blow dartgun, and an engineer gets close
to it, and a dart sticks in hisneck, and he falls over.

Parker Dillmann (37:30):
Into a pile of engineers. It's like the 4th
one.

Stephen Kraig (37:35):
Yep. And that that is quality doing their job.

Parker Dillmann (37:39):
Yep. So thank you for listening to circuit
break from Macrofab. We are yourhosts, Parker Dolan. And Steven
Craig. Later, everyone.
Take it easy. Cutter type bettertoday. Thank you. Yes. You are a
listener for downloading ourpodcast.
Tell your friends and coworkersabout circuit break, the

(37:59):
podcast, and all the great tipsfor prototyping that you've
learned on this episode. If youhave a cool idea project or
topic or more prototyping tipsyou want to discuss, let Steven
and I and the community know.Our community where you can find
personal projects, discussionsabout the podcast, engineering
topics, and news is locatedatform.macfab.com.
Advertise With Us

Popular Podcasts

On Purpose with Jay Shetty

On Purpose with Jay Shetty

I’m Jay Shetty host of On Purpose the worlds #1 Mental Health podcast and I’m so grateful you found us. I started this podcast 5 years ago to invite you into conversations and workshops that are designed to help make you happier, healthier and more healed. I believe that when you (yes you) feel seen, heard and understood you’re able to deal with relationship struggles, work challenges and life’s ups and downs with more ease and grace. I interview experts, celebrities, thought leaders and athletes so that we can grow our mindset, build better habits and uncover a side of them we’ve never seen before. New episodes every Monday and Friday. Your support means the world to me and I don’t take it for granted — click the follow button and leave a review to help us spread the love with On Purpose. I can’t wait for you to listen to your first or 500th episode!

Stuff You Should Know

Stuff You Should Know

If you've ever wanted to know about champagne, satanism, the Stonewall Uprising, chaos theory, LSD, El Nino, true crime and Rosa Parks, then look no further. Josh and Chuck have you covered.

Dateline NBC

Dateline NBC

Current and classic episodes, featuring compelling true-crime mysteries, powerful documentaries and in-depth investigations. Follow now to get the latest episodes of Dateline NBC completely free, or subscribe to Dateline Premium for ad-free listening and exclusive bonus content: DatelinePremium.com

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.