Feedback on first PCB design in KiCad

Hi folks - I started with Arduino and built myself a simple circuit connecting a NodeMCU (ESP8266) to a 3 pin transmitter. Now I want to take it off my solderless breadboard and onto a PCB. I watched lots of tutorials and would love feedback on what I generated. Not sure how to attach files here, so am adding pictures of my design and schematic. FYI the reason I added so much space on the top is I want the transmitter in a horizontal pin socket lying flat. Couple of questions in addition to any other thoughts you have:

  1. The DRC tells me the middle pin on the 3 pin transmitter is not a closed shape. It is a simple pad....not sure if I'm missing something. (image attached)

  2. I added the barrel jack in case I want to power via external 9V 2.1MM cable vs. using the microUSB on the NodeMCU. However, the ERC tells me pins are connected to other pins but not driven by a pin. The barrel connector is stock from the KiCad library, and I thought I set the pins on my NodeMCU IC. Not sure what else to try?

  3. Drill holes....wasn't sure how to make these. The inner 4 are pads I added to the footprint. Then I used circles on the edge cut layer for the outer four. Open to thoughts if it matters.

  4. I had calipers for the NodeMCU because I couldn't find a datasheet....it's really hard to figure out if I got the drill holes positioned correctly. I printed the silkscreen and copper layers and the pins are standard, but it's too hard to see if the holes are aligned since I can't put them flat on the paper. And the calipers don't fit in the holes. Also hard to measure the distance from pin to hole. Suggestions?

  5. I want the barrel jack sticking off the board just a bit (I think) so I can have the connector flush with an enclosure. But the silkscreen goes off the edge. Is that a problem? The barrel jack is a stock component so I couldn't figure out how to delete and change the silkscreen lines.

Thanks so much!


(posted with image tags by moderator)

larrywal32:
FYI the reason I added so much space on the top is I want the transmitter in a horizontal pin socket lying flat.

Then my first comment, make a footprint that resembles that :wink:

  1. Without looking at the real library / your design, no idea.

  2. It's a warning which is normal. The power pins of the NudeMCU are probably defined as power inputs. But the barrel jack is probably passive. So it sees no power applied to the power inputs. You fix this by adding a PWR_FLAG to the lines with power to tell the DRC you know power is added.

  3. You mean mounting holes? Both symbols and footprints for mounting holes are available.

  4. If the outline of the NodeMCU on the silkscreen is correct the holes seem a bit large... But I can't find the bard files. Do think I found the Gerbers though so you can use that.

But for most designs I would not bother with screwing the NodeMCU to the PCB. Headers will hold it pretty firm.

  1. No, not a problem for most board houses if you have an outline file.

  2. I would use a little bit bigger tracks for the power. You have all the space for it. And fill the rest with a GND plane. And for the eye, keep the traces to the transmitter bundled.

  3. I would remove the via's. The tracks you want on the top side, just start them on the top size. Although, the board is sooooo simple, I would just make it single sided jut because I can.

  4. Which transmitter do you want to use? And is it really happy with 3V3?

  5. You have the space, print the voltage range next to the barrel jack together with a center positive symbol.

Thanks so much septillon. I did another rev and I think I took care of everything. Attaching updated pictures as well as a picture of my breadboard circuit. Would love your thoughts again.

I also got a suggestion from others to put some power protection in from the barrel to the IC; it is my first time using a voltage regulator (I picked a 7809) and most places I look suggest capacitors on either side of it...I threw a diode in for extra protection in case I accidentally plug in the IC to micro USB and the barrel jack at the same time.....though I'm not sure I'm actually protecting against much with it. Very open to guidance or pointers....apologies...I'm new :).


(posted with image tags img /img by moderator, you try it next time!)

Why are you using D1?

Your traces seem narrow.

D1 should go before the regulator.

On my PCB with a NodeMCU I used:

pin spacing = 0.1 inch X 0.9 inch

Thanks guys - I was using D1 to prevent power from backflowing - @johnRob - why before the regulator? I was thinking I would prevent power from flowing out of vin and into the regulators output?

All of my traces are .25mm, except for all of the power traces from barrel into NodeMCU vin - I made those .5mm. Is that small? Any suggested tutorial to read up on common trace sizes?

John - I think I did the same thing with my node MCU? I used 2.54mm female pin headers and used spacing to put them .9in apart. Does it not look like that to you? If you have a footprint or other suggestions for mine, would love it - this was my first custom footprint and am learning KiCad as I go - definitely struggled with the hole positioning on the NodeMCU since that's tough to measure with calipers.

Like others said, D1 will not protect the supply. Also, there will never be flowback (at least nog in the 9V range). So if you want protection I would place it in front.

In a perfect world I would rather make a 3V3 supply. But that's a bit troublesome with USB. But with a 7809 you will be (far) out of spec with 6V. You will need at least 9V at the input. So I would rather go for a 5V supply to Vin which will work with the USB. Having said that, I would also go for a DC-DC converter rather than to burn everything in a linear regulator. If you supply 12V you will burn (12V - 3,3V) / 12V = 73% into heat. So I would get a small DC-DC converter module and make a footprint to solder that to the PCB.

But having said all that, I think I would not bother with a barrel jack myself 0:) Like USB more :smiley:

But if you still want to use a linear regulator you will have to pay closer attention to the caps. The regulators can otherwise become unstable. The 780x would like a 100nF ceramic at it's output. By the way, uncommon (but not wrong) notation for 330uF caps :smiley:

And for drawing schematics, try to keep it a bit more logical. So draw the supply with positive at the top and GND at the bottom and all things across it. Now it's a bit confusing. D1 seems to go to GND at first and you have to think twice to realize C2 is at the output.

And I would remove the "REF**" silkscreen for the mounting holes. And I would rather use mounting holes with an outside line of the screw on the silkscreen.

And:

septillion:
8) Which transmitter do you want to use? And is it really happy with 3V3?

  1. You have the space, print the voltage range next to the barrel jack together with a center positive symbol.

Thanks Septillion. Some questions

So I would rather go for a 5V supply to Vin which will work with the USB.

I thought from the NodeMCU datasheet it needed at least 6V. Else I'd agree and I would make the barrel jack input 5V.

I hear you on the barrel jack being optional - it was really a learning opportunity for me and I thought I could make a better enclosure that way.

But if you still want to use a linear regulator you will have to pay closer attention to the caps. The regulators can otherwise become unstable. The 780x would like a 100nF ceramic at it's output. By the way, uncommon (but not wrong) notation for 330uF caps :smiley:

What's a good way to calculate cap values? (note I used mF when I meant uF) - the 780X datasheets I found generally didn't say to use capacitors but most sites I found online say to use them and say the values don't matter much.

And for drawing schematics, try to keep it a bit more logical.

I'm with you, it got confusing - but the barrel jack symbol already existed - are you suggesting I should trash the barrel jack and redraw as a box so I can have the power at the top and ground at the bottom to simplify layout?

And I would remove the "REF**" silkscreen for the mounting holes. And I would rather use mounting holes with an outside line of the screw on the silkscreen.

Great idea! Didn't know what the REFs were thought they might get resolved at a later build step.

larrywal32:
I thought from the NodeMCU datasheet it needed at least 6V.

I don't see it. And looking at the schematic it's just going to a LDO voltage regulator which they tell has a drop of 1,2V @ 800mA. Makes 3,3V + 1,2V = 4,5V for a minimum. On the schematic the Vin is even called VDD5V :smiley:

larrywal32:
Else I'd agree and I would make the barrel jack input 5V.

So if you make the voltage to the Vin 5V the barrel jack has to be the voltage drop of the regulator higher.

larrywal32:
What's a good way to calculate cap values? [...] the 780X datasheets I found generally didn't say to use capacitors

There is no way to calculate them. You will have to look at the datasheet. And granted, for the 78xx it is a bit hidden but it's shown in the "normal application" schematics, some with footnote.

larrywal32:
I'm with you, it got confusing - but the barrel jack symbol already existed - are you suggesting I should trash the barrel jack and redraw as a box so I can have the power at the top and ground at the bottom to simplify layout?

No, the symbol isn't the problem. It's how you did draw D1 and C2 :slight_smile: With Vcc crossing over GND and C2 underneath GND.

And ow, datasheets of that transmitter are a bit basic but I think it's fine with a higher voltage. Which would give you a stronger signal. So you could try it with Vcc connected to 5V (aka Vin*)

  • And yeah, the term Vin is a bit confusing because it's not only an input. If supplied via USB Vin will have +-4,5V on it (Vusb via diode).