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:
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)
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?
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.
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?
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.
PS - it would only let me upload one picture so I had to make a composite. Sorry.
These kind of modules always follow some standard pin distance. most likely two rows of 2.54mm pin headers. The distance between the two rows should also be some multiple of 2.54mm (as evidenced by your breadboard if you attached the module to a standard breadboard).
EDIT: changed the very strange nonstandard 2.53mm to 2.54mm, as suggested by jos
Perhaps 2.54 mm will fit perfectly
See (Start Here) Frequently Asked Questions Eeschema section.
Edge.Cuts may be OK, but it’s common to use footprints for mounting holes. There are a bunch of them in the KiCad library. It’s a matter of religion to decide whether to use a schematic symbols for them or keep them only in the layout.
It shouldn’t be, and if it is, it’s a problem only for the manufacturer (unless you try to panelize yourself and silk goes to other board). They should know what to do with it. On the other hand you can copy the part to your own library, possible to a project specific library, and modify it. Some people never use footprints directly from the standard library.
I would recommend adding at least a diode to the barrel jack to prevent wrong polarity. Better safe than sorry (although I don’t know what safety measures the module includes - you may want to add for example some esd protection).
It’s not the pin, it’s the footprint’s courtyard. See Tutorial: How to make a footprint in KiCad 5.1.x (From scratch)? for some explanation. Looking at your picture you may have used the courtyard layer for component outline which should be in the Fab layer.
This might be a good read as well: What is the meaning of the layers in pcb_new and in the footprint editor?
Thank you so much everyone! Ok - I’ve done a rev. Fixed the design rules, did a GND fill, added some power protection (a 7809 voltage regulator w/ two capacitors based on what I found about using the 7809, as well as a diode), I thickened the power traces going from barrel jack to U1 power in as well, and I changed the mounting holes to M2 footprints (who knew I could add additional footprints in addition to what was mapped in my schematic :)).
Would really love another round of feedback. Some questions off the top of my head:
- Any thoughts about the layout I did?
- The power regulation seems like a basic and common pattern - did I use the capacitors and diodes correctly? Is what I designed actually a useful way to ensure smooth operation of 9V in to the IC?
- Any other suggestions you have!
Put the diode immediately after the barrel jack’s positive pin. (EDIT: be sure that the chosen diode can handle the possible reverse voltage without breaking.)
Small capacitances are marked with µF (often uF), i.e. microF, not with mF (milliF). Here’s a datasheet with a bit different values: https://www.digchip.com/datasheets/parts/datasheet/456/L7809-pdf.php. The output capacitor is probably not needed here - I think the module takes care of that - but the input capacitor is good to have because you never know for sure what the input is.
Consider putting some instructions on the silkscreen, i.e. the polarity. There are footprints named Polarity*.
The silkscreen for the caps look fine, there are plusses by pin1 and the pin2 side (minus) is filled with silkscreen. What isn’t fine, however, is the symbol for the capacitors in the schematic.
@Waldo32 You used non-polarized capacitor symbols for polarized capacitors. (I would also add a leading zero to the value so the decimal point isn’t accidentally mistaken for a speck of dirt on the screen or printout, but that is more of a personal style.) Looking at the wiring on the PCB the capacitors are polarized properly, but I don’t know if that was accidental or if you had to rotate one (or both) of the symbols in the schematic to get the polarity correct. Using the correct symbol for polarized capacitors can help avoid mistakes. Though, looking at the valuse 0.33, if these really are in microfarads (uF) then you don’t need electrolytics. Non polarized monolithic (ceramic) should be fine. If the value actually is 0.33mF (millifarads, also 330uF) then, yeah, polarized electrolytic caps are probably a good choice. But, while millifarads is a valid unit, it isn’t commonly used, keep to microfarads for convention.
Also, please double check the orientation of how you plan to install the RF xmitter. You mentioned above about laying it flat, but your outline on the PCB seems to indicate that it is mounted vertically with the components to the right. If you layed this board down towards the right (so it is over that big area of the board that I thought you left for it) the components would be down against the board. Or, I’m mis-reading your symbols. Also, since you are using a pin-header footprint for the xmitter (not a problem in itself), pin numbers are defined on your footprint by shape. That square pin is number 1. (Pin1 pad being square is a convention in PCB layout since long before I started laying out boards, possibly since before I was born.) If you need to troubleshoot this board not having the pin numbers on the schematic will slow you down as you have to lookup the datasheet for the xmitter to remind yourself of the pin-out. If you enable the pin numbers on the schematic symbol for the xmitter then you will have that piece of the documentation already on your schematic for you.
I didn’t think about the capacitor polarity at all, I thought about the barrell jack.
I remember reading someone who said they always used symbols for polarized caps regardless in case they end up getting used as either a design decision or an inventory ‘mandate’.
Thanks for such detailed thinking all. Questions below:
Put the diode immediately after the barrel jack’s positive pin.
Is that because if there is going to be reverse voltage, then it would likely come from the regulator? I put it between the regulator and NodeMCU because I was trying to protect the regulator from power coming off the NodeMCU.
be sure that the chosen diode can handle the possible reverse voltage without breaking
What is a good way to calculate possible reverse voltage I need to handle? Max of anything used in the circuit?
You used non-polarized capacitor symbols for polarized capacitors.
Honestly, I didn’t know which to use - this is the first time I’m using capacitors and I haven’t spent enough time reading :(. There were a bunch of sites I found that said any time using a regulator you should always use capacitors in the configuration I had, and most used the non polarized symbols in their schematics. They also almost all used .1uF and .33uF. e.g. this site: https://protosupplies.com/product/voltage-regulator-7809-9v-1a/ and this:
Also, please double check the orientation of how you plan to install the RF xmitter.
My plan is to use right angle pin headers - so I figured what I have for the xmitter will work since the pin headers should be the same? I thought about updating the xmitter footprint to make a horizontal one…but since it didn’t impact the pin headers, I figured I could do more damage than not (since I found the symbol online). I did think about trying to add a trace antenna to make it more robust, but everything I read says that’s hard so didn’t do that.
Or use the 0u33 format, using the prefix as a decimal indicator.
The apocryphal story I hear is that the format was developed to avoid decimal misinterpretation in the days before CAD. It also neatly avoids the confusion between national representations of the decimal point.
VIN of the module doesn’t give power out. The barrel jack gives power. Thefore you must protect all parts from voltage coming from the barrel jack. You should never assume such a power source is safe. The regulator seems to be able to handle enough positive voltage – you hardly put more than 35V there even by accident – but what if someone, including yourself, makes a mistake with the external power source polarity or cable or connector? There even exist power sources which have easily switchable polarity. If the diode is in the regulator’s output, the voltage is over the IN and GND pins of the regulator and possibly burns it.
The diode should of course handle whatever can from the barrel jack. I think you can easily find diodes which can handle 50 or 100 V reverse voltage. The regulator can handle max +35V under normal conditions, so that should be good enough safety measure for reverse voltage, too.
or a 330nF looks nice too
I’ve never gotten used to nanofarads. When I learned the most common were in multiples of 6 decimal places, so it was just farads (F), microfarads (uF), and picofarads (pF). Or on really old 'litics, MF were microfarads. Damn comfusing that last one.
The MF definitely will create confusion. Not good.
Another often used convention is to put a value in up to three characters max. Works well up to E24 series.
- u1 100nF
- 1u1 1.1uF
- 11u 11uF
- n1 100pF
- 1n1 1.1nF
- 11n 11nF … and so on.
Mostly used for resistors though. Hardly used for pF and nF since there is also an distinctively implied meaning by using pF, nF hinting at the attention to frequency ranges in use.
Using pF almost always implies high(er) frequencies are at play. Whereas uF, nF besides frequencey, mostly imply charge holding use.
FYI folks - updated to adjust diode position and silk screen units for caps. Waiting on answers to other items above to go further or (gulp) send to the printer to see what I get.
We have here THT diode.
Compare the prices for 1N4001 (1A/50V diode) and 1N4007 (1A/1000V diode) and you will find that you can always use in such place the diode for 1000V.
I understand that at Jack you put 9V.
If so then 7809 after it has rather little sense.
After diode you will have about 8.3V and after 7809 may be about 6.6V (depending on current consumption).
Is it what you wonted or I misunderstand that sentence?
I don’t know what is NodeMCU and what voltage it tolerates at VIN.