This is the EasyEDA survival guide for the intermediate hacker, that want to create PCB at EasyEDA.
EasyEDA has many quirks, that creates frustration. Saying that, I still think I'm addicted to EasyEDA easiness.
This document intends to provide some useful guidance to the creation of PCB using easyEDA.
This document assumes that you have an intermediate skill in making PCB, I won't teach you the art of PCB-making, rather how you can achieve the stuff you want using EasyEDA. I had to spend countless hours to research, in order to overcome all the hurdles of EasyEDA. This might save some time when doing PCB's... Maybe I even get some feedback to improve this hackster write-up....
I spent quite some time with KiCad, but I couldn't never get over the complexity of managing components, and the fact it didn't really have an autorouter....
I know, this is not a fancy write-up, maybe even many spelling errors, but I think I have the core, and if needed maybe I can make a new one in the future. My ambition is to help my fellow frustrated PCB-makers out there.
I have come to a conclusion that I will NEVER more use my etching tank...
When is easyeda suitable?I have made both amateur and professional grade PCB with EasyEDA, especially if you are on a shoestring budget. It could also work for the company that want to do really quick turn-around, allowing to produce PCB’s dirt-cheap and quick.
A typical round of 10pcs small sized PCB (100x50mm), is in the range of 10-20$, and another 25$ in shipping to where I live. Technically one could use this professionally, but I would be concerned about durability and ensure persistence of my work.
Another GREAT advantage is that I can quickly make PCB’s, and I use the web-browser version (https://easyeda.com/editor), which is kind of amazing!
Examples:
- A compact design (100x50) with ~100 components, double-sided, schematic drawing, component selection, PCB outline, PCB-routing, planes-design, re-iteration, first version took 10 hours
- A compact PCB, 15 components, double sided, advanced layers, advanced cut-out, from start to finish ~3hours (see below)
- NEVER, EVER reset components in the schematic, unless you want to replace all your components on the PCB.
- Double-check your design, before pressing “buy”, it saves you valuable time
- ALWAYS spend time to double-check your PCB, even if it’s easy to produce, a few minutes more can make the difference, in dimensions, schematics, etc.
- Alway make sure to check DRC, even if the error is strange or difficult to find, there is almost ALWAYS something relating to the error, that you didn’t catch! · If you’re space-constrained, ALWAYS spend some time trying to measure out the dimension, so you don’t end up with a PCB that won’t fit in your plastic casing…
- AFTER producing PCB, make sure to take the time to download all parts, schematic (PDF), BOM, selected component (for mounting), Gerber, board outline as separate pages. It’s so easy that you enter afterwards, and starts changing stuff.
- Use versioning, and backup your schematics
- Learn the keyboard short-cuts, and mouse-usage, it makes everything MUCH easier, especially when making the PCB manually!
- If you want to mount the PCB by JLCPCB, make sure you try to use their / LCSC components part-number, that way it becomes easier to make prototypes.
- Always Check your DRC
- Even if you don't understand the error, it's probably there. It has sometimes taken me some time to find, as the error was not clearly communicated
- However, there are some small bugs in DRC, sometimes the DRC reports error even if you think you’ve fixed it. Then save your work, close the tab, and restart.
- If would say that making schematics is quite straight forward, and it's easy to find components via the place component tool
- If you select a user-defined component, spend some extra time on schematic symbol and the PCB symbol, to make sure it's correct, as I have a few times found issues on user-generated parts
- If you copy/paste a part from the schematic, and then change the value (e.g., 1K to 10K), the associated PART is NOT changing, causing issues in the BOM, please use the BOM tool to select a new component part!
- Using the net-connector is quite convenient to connect between pages.
- Use the "X" (no-connect flag), to remove DRC issues on unconnected PINs
- Learn the neat trick of selecting a group or component and aligning them, like powerpoint, it works both for components and component text. It's useful
I had some issues in the beginning to make nice PCB-outlines (especially when they are "advanced"), therefore I started making the outline as a footprint, then I can just take a schemtic symbol without and PIN.
It is still quirky, but as it makes it more difficult to select components. By placing the component on the bottom side (if symmetric), makes it easier to work from top.
And after THAT lock the component, so you won't move it accidentally.
Mounting component on both sides of the PCBIs a pain in itself, as there is no easy way to ”work” on the bottom side view.
I usually disable toplayer+topsilk when working with bottom layer, this way it becomes much easier.
And to review my work, I often go into 2D/3D to inspect the placement, to make I don't make mistakes.
(Would be a great opportunity for improvement from EasyEDA side... )
I would suggest to use 4 Layers4 Layers will save you time, unless you have super-tight budget. I started out cheap to make 2-layers, but quickly ended up making 4L, the price difference is negligible, and must smother to work with, and it's possible to make much more compact PCB's.
For EMC reasons, I use the following setup:
- TOP - Top
- Inner 1 GND
- Inner 2 VCC
- Bot - BOT
This way, GND is closest to the CPU
If you put CPU on the bottom side, it's maybe a good choice to switch inner layers.
Make sure they are not be routable
Another tip, when working with 4L, is SHIFT+M toggles the visibility of the copper areas.
Via floodingOne good measure to make the via-planes "stronger" (=less noisy), is to do via-flooding, and in a good way connects the out layers with inner GND.
Before you do that, you must have copper-area-pour on top/bot and inner.
BUT, there is "bug/feature" in EasyEDA that won’t allow you to do via-flooding if the inner is not GND.
The work-around is:
- Rename VCC to GND in the copper area manager
- Select the top-fill layer
- Add/Remove vias, select your density (X, Y-spacing etc.)
- Go back to copper area manager, and rename the layer to VCC, or whatever the inner plane is.
- Shift-B re-build the layers
THIS IS QUIRKY, BUT it works !
Fan OutMy 20-year-old experience with OrCAD, there was a function for ”via-fan-out”, that connects to inner GND and VCC to inner layers (4L). EasyEDA unfortunately does not have this feature.
Instead, I do fan-out manually (tedious, but well worth it), especially if you want to autoroute afterwards. If you have copper areas on out layer and via-flooding the GND via could be omitted.
The benfit of placing the via on the pad, is that it's not adding inductance, which can be useful for reducing noise, drawback it's a pain to de-solder and do repair!
Here how you do it:
- For each component that have VCC or GND
- I’m lazy, and it’s also good for EMC, is to place the VIA on the PAD it self
- BUT, If you’re concerned about difficulty in removing component, make the via a bit outside the pad (wire)
- THEN when you auto-route, make sure to NOT un-route already routed nets
After doing Fan out, it makes sense to press SHIFT+B, this re-creates the copper pour, if any
Copper Area (Pour)Copper Areas great to reduce EMC, and create a consistent GND plane on top and bottom, I also use it for the inner layers. (INNER1=GND, INNER2=VCC, bot-GND, use filled areas, that you place on the various layers.
To make it easier, make them slightly larger, than the outline of the PCB, then it's easy to select them.
Use SHIFT+B to recreate the filled areas
In the picture above, you can that I have set the copper area, in line with the antenna, to avoid disturbances/loss on the antenna.
After making the copper area, it's useful to "lock" them, to avoid moving them around, when trying to select other components
TIP: If you have multiple filled areas, e.g., TOP-GND and TOP-POWER_AREA, make sure you put the priority correct in the copper area manager in tools menu.
Manual routingIs under-estimated, it’s often quite easy to manage smaller PCB. Learn the skill...
It's quite easy to do manual routing, BUT learn the short-cuts. This can give a very smooth experience to route wires between, place vias, and switch routing layers, while doing manual routing.
w - wire,
t - rout on top-plane (route on top)
b - rout on bottom-plane (route on bottom)
v - via
Use of power planeIf you have DC/DC converter or similar, one to make sure you have a very strong plane, is to create power planes, see the section Copper Area, and you assign the copper area the net-name of the correct net. Make sure put the priority order correct in the copper area manager
Auto-routingAuto-router is descent, but not excellent. I have found it makes a terrible work if it also has to route GND/VCC.
You can use the auto-router directly from the web-browser.
They also have a cloud-auto-router, but that's unreliable, as to when I can use it
To master this process, I would suggest the following:
- Use a 4L PCB
- Do Fan Out (manually), as described above
- (here you can also manually route certain wires you especially want in a certain way)
- You can save your work here, if you need to redo the auto-routing
- BUT, it’s a Chinese, unknown program, I suggest you use a random lab-computer or run it in a VM, that you don’t store sensitive data, or transfer executables.
- Go to auto-routing, and ENSURE to keep routed nets.
- Perform auto-routing
- Do SAVE-AS, simplifies the process, of not having to do-fan out, if you need to start.
Ordering PCB is really EASY, it's like 1 click..
- Select your choices. Shouldn't be too hard.
- When it comes to stencils, I find it useful when you have component that you cannot solder, BGA/ or component where the solder pen won't reach
- BUT, this can be manage using a hot-plate (like MHT30), and buy solder paste from amazon, this works REALLY well.
- IF you find problem, try to contact them quickly, and ask to re-send the stuff, it has worked quite well for me.
- Check that there are NO DRC issues, unrouted nets, or at least verify each issue
- Double-check components, and sizes, footprints
- Double-check dimension of PCB, and potentially holes.
- Print 1:1 on printer, and verify the PCB-dimension
- Go into 2D and verify the PCB, that it looks good
- Go into 3D, and look around, that it appears to be ok
- DOCUMENT what kind of parameter you want for your PCB, layers, sizes, material, colors you want, as a checklist.
- Double check that connectors are not upside down, or wrong.
- Add suitable text on the PCB, to make connector and information readable.
- They assemble ONLY one side, make sure that side count. Maybe you select the side with the hard to mount component, or the side with many component
- You CANNOT consign parts
- If you want to assembly @JLCPCB, it can be VERY difficult to have them mount ALL components, because it's a pain to find stock for all your components.
- During design, you can select LCSC/JLCPCB component from scratch, that makes it easier to produce
- If you make last-minute change during the order, you can select from their stock, then make sure you save the ASSEMBLED BOM
- IMPORTANT: If there are components that you DON'T want to mount, make sure to check those in the PCB-layout section as "Don't include in BOM"
- IF you want some off-the-shelf plastic casing, I found several nice casings on Takachi, I actually liked those, and they are WELL documented, having 3D-drawings, 2D drawings etc..
- You also have OKW, but instead of being beautiful, they are in fact quite bulky and ugly, but could be useful for your products.
- I tried JRPANEL, they are also good at making keyboards, not cheap, but definitively cheaper than a local equivalent.
- But make sure you spend time on learning the design-guideline, it makes all the difference!
I hope this have given you some insights on how to overcome EasyEDA!
Cheers
\pege
Comments
Please log in or sign up to comment.