Seek review my first PCB design

Yes, yes, thank you kindly!

Several of the small things I resolved: the dot of track, tying AVCC to VCC, &c.

After posting I was looking into details of a ground plane, “copper pour”, still a bit confused on difference. There is a 2.4GHz radio in there so was wanting to understand how to enhance its performance. I hit “highlight net” on the GND/“Earth” and was looking at what I was working with. But, yeah, I had no idea how to create the groundplane, and your tips will get me quite far along the way.

In re RESET switch. Correct, I need more room for my fat finger. In the circuit, R2 holds reset high, C6 comes over from DTR (reset) on the FTDI, as oft mentioned in articles regarding building these AVRs up the “Arduino” way. Yes, that’s my level of competence, ya know as a hobbyist. Hehe.

Yes…there is an nRF24 radio atop the 2x4 headers, so height on Z adds up. I attempted to place the passives central to board, guard with the male headers. I try lay them down and see what can make of that.

Hahaha…I was swapping grid dot density so often I got lost. Edge Cuts is just where I could get modest clearance to components on board and was kinda arbitrary. It does fit within footprint of 3xAA batt holder.

Thank you for the tips on track widths. I used the default width just to get started. All the tracks were laid by hand/eye/trial and error. There was not an apparent auto-route feature that I could see, one that can just click a button and watch KiCAD run trace possibilities. I think I got more good from doing it the slow way.

Wait, wait…oh, my friend…

Yes, I was thinking of getting rid of the LEDs and adding in a kludge area. The LDR can come off as it will probably be wired external, just the LM35 on board measuring internal to housing (sitting outside in sun). Batt will just be solder leads from below.

The big one though is placing “choke/filter” on power. Sorry, I am fairly lacking a well-rounded knowledge of these things. I look it up though.

Mahalo nui aloha e,
Mark

Out of curiosity, for what reason did you add an exclusion zone for this plane around the power supply connector and the regulation circuitry ?

The Idea is to do some filtering on the power input section before a connection to the GND plane is made, to keep the GND plane clean from noise picked up by the power input antenna.

To be effective this begs for some chokes, common mode filter, or even a SMPS voltage regulator, but I did not want to modify Bambuino’s design too much, nor did I want to put too much time in it.

C2 and C3 are were placed by Bambuino, and the input power goes through these capacitors before it reaches the GND plane. Hopefully these will attenuate noise. For the same reason I’ve also explicitly routed the input power from the connector to the first capacitor, and from the capacitor to the voltage regulator. The effect will probably be minimal, but a bit is better than nothing.

I have a bunch of uC’s on a self designed home automation project,(Power via long CAT5 cables) and I’ve concluded that no uC circuit can work reliably without some filtering on the power cables (and other long attached wires). uC’s tend to get upset easily by nearby switching of low voltage halogen lights with real transformers, or fluorescent lights with inductors as ballast.

A Ferrite bead or choke is a component that has very low DC resistance (So it lets your power through), but at higher frequencies it acts as a resistor, and combined with capacitors it filters out short, high frequency, glitches.
https://en.wikipedia.org/wiki/Ferrite_bead

Reviewing the data sheet and some app notes, AN2519, &c., the only inductor called for is 10uH tying AVcc to Vcc. In past, I never incorporated because of lack of knowledge and the myriad choices of components from a vendor…RF choke, EMI suppression, Power filtering? Bourns 78F series? Laird 28L’s? Although, app note AVR040, fig 4-3, there is illustrated an LC circuit, but nothing there specific enough to be of assistance to me.

So, back to the books, and reviewing this thread. I’ll get it, I’ll get it.

Thanks folks!

As an aside, I tried Eagle and Fritzing years back, and dropped it because of steep learning curve. For some reason KiCAD took to me with my first try. Probably more credit due the developers than to myself. Hehe.

@paulvdh, I am wondering what you did to make kicad display the 3D view? My pcbnew (version: 5.0.1+dfsg1-2~bpo9+1) only shows the PCB with silkscreen and plated through-holes when I bring up the 3D-Viewer–no components, just an unpopulated PCB. Same for your 3-3-19 revised version. Do you remember what you did to make the components show up in the 3D -Viewer as your photo shows?

I run Linux here, and with Linux the installation of KiCad consists of several parts.
The Library with 3D Symbols is not installed by default

What I did was:

sudo apt install kicad-packages3d

There is a bit more of that in:
https://forum.kicad.info/t/problem-with-ppa-install-kicad-v5-0-2/15437
You may also find some hints in the Download section on the KiCad site for your particular OS:
http://www.kicad.org/download/

1 Like

@paulvdh, That worked splendidly !! thanks so much! It downloaded 338 MB in debian linux.
Thank you too for editting Bambuino’s PCB and for describing your revision well.

For more example PCB’s you can:

sudo apt install kicad-demos

and/or follow the links on:
http://www.kicad.org/made-with-kicad/

1 Like

@paulvdh & al. I read on this forum other day that JLCPCB has online Gerber viewer, which does some error checking as part of the ordering process. I tried it out and got an error in the “Analysis” tab (photo 1). Being a newb, figured let slide until get other things worked out.
mygerberror
Been toiling away on my project, following @paulvdh 's very informative postings, above, using his version as reference and comparison. Took a break and tried JLCPCB’s online tool with his *.pro. I get two errors, the original Edge Cuts error, and a second, drill file error in re non-Gerber format (photo 2).
pvdhgerberror
Can someone offer guidance in resolving this? If I was to submit order, I do not know if JLCPCB will reject based on these errors. In both instances I followed JLCPCB’s linked guide “KiCAD PCB to gerber files.”

Thank you, folks!

Are those blue exclamation marks errors?
To me they look more like messages than errors.

Have you followed their guidelines for KiCad boards?
https://support.jlcpcb.com/article/44-how-to-export-kicad-pcb-to-gerber-files

The main to know is that ferryte beads are like inductors but with lo quality. At higher frequency inductors resonate but ferryte beads change RF energy to heat and not resonate. In power filtering it is better to not have something resonate so the first choise is ferryte bead. But if you are interested in filtering rather low frequency the ferryte bead is not good as it has rather low inductance and don’t work effectively at low frequency. 1MHz is low, 100MHz is high, but where exactly is the border betwean low and high - may be 10MHz but it depends on many things I think.
If I have a source of unwonted signal (like DCDC converter) I typically put two filtering stages at both sides of it. First - closer to DCDC with ferryte beads and ceramic capacitors (to filter as close to source as possible because high fregueny can use even a few cm of track to RF emmite) and second with inductors (100uH range) and electrolytic capacitors. I use 0603 1k ferryte beads (farryte beads are identified by their R at 100MHz) whenever possible (that means if their DC R is not too high). If DC R have to be very low than I look for less then 1k ferryte beads or for bigger then 0603 ones.

Yes, that’s the URL for the “KiCAD PCB to gerber files” page linked in the footer of their pages. Those are the guidelines I followed. Unsure if error or message, just not a green check mark. Just curious.

Make some errors on your PCB (Too small via’s, faulty PCB outline, traces outside Edge.Cuts, etc) and upload to JLC, and see if they get flagged.

I’m also curious what happens if you swap the filenames of a Silkscreen and a Copper layer.
Note: Ink does not conduct very well, and computers are stupid.

I just checked browser history, and find installed KiCAD on 2 Feb and grabbed Digikey libraries same day. That might be the problem.

So, I opened symbol editor from Eeschema and dragged the hidden pin 22 to side (photo), tied it to pin 8. This then led to a grey label of my GND symbols as “GND 1”. There was no grey label when pin 22 hidden. Receive no ERC infractions on inspection.


What gives with the new labeling?

BTW, did change the “Earth” to the “GND” symbols. Guess I not driving a rod 3ft in the dirt (have done that).

Mark

Lots of greyed out GND pins in schematic symbols is a known issue in a lot of the library symbols. I’ve heard (more like “read” actually) that it’s a temporary thing and will probably improve with KiCad 6.

I did see a small bit of room for improvement in the PCB layout.
There were 3 traces between the 2 rows of pins in the top of this screenshot, but I rerouted MOSI to expand the GND plane between the THT pins on the top. This gives a shorter return path for the ISP connector currents. After that I saw I could easily move SDA and SCL to make the GND plane even more continuous, and I added a via for a continuous GND plane around the ISP connector.


These changes are pretty trivial for such a small and simple circuit as this, but for larger & compexer boards a lot of such details all add up.

Did you also remove the LED’s and replaced it with an experimental / kludge area?
With Oshpark you gat 3 or 5 boards, and that makes it easier to use all of your boards.

@paulvdh Yes, I wanted to move that 2x4 header closer to U1 to make tracks shorter than the 2.4 GHz antenna on the radio breakout. I think your mod makes that more practicable. Mahalo!

Wait a bit… Is it possible to install KiCad in Linux?..

Yes, it is available for Linux.

You can even add 2 small tracks on the back side with vias to allow the zone to fill up empty spaces.

kicad_pcb

1 Like