9
\$\begingroup\$

I am looking to get some feedback on a PCB I have designed. I am currently designing a moving light that can be controlled through DMX. Essentially, I am using a Max485 chip to receive the DMX signal and send it to an Atmega328. I have two A4988 stepper motor drives to control two stepper motors and the LED will be made using NeoPixels. I am using a 15V power supply to power the motor drivers and a 5V power supply for everything else. I also have a relay to make sure the 5V is turned on before the 15V. Below is a picture of the schematic I have created.enter image description here

I have tested this circuit using a breadboard and it seems to work, so I created a PCB design using the schematic.

enter image description here

enter image description here

enter image description here

The top layer is red and the bottom layer is blue. Currently, the smaller traces are 0.5mm, the larger traces are 1mm, and the ground pour clearance is 0.5mm.

I am looking for some feedback on my PCB design. I have posted this on a couple other forums, but this is my first PCB I have designed so I am looking for as much feedback as possible. I have already gotten feedback on having THT on the bottom of the board, but I have done this because it was easier and I will have space under the board when I mount it.

\$\endgroup\$
4
  • 1
    \$\begingroup\$ Do you only want feedback on the PCB design? Or from the schematic design? Or the actual circuit? For that, the actual parts need to be listed. It is unknown what are the parameters for the crystal, so it is unknown if the 22pF capacitors are correct. And DMX512 receivers are supposed to be isolated. This design may be isolated but only if you use a power supply which has a floating output that's not referenced to earth. I really don't recommend this non-isolated design, if you e.g. power that with a PC ATX power supply, you have a receiver not allowed by DMX standard. \$\endgroup\$
    – Justme
    Commented Apr 20, 2023 at 4:02
  • \$\begingroup\$ How many of these do you have any how long is the DMX cable? \$\endgroup\$
    – jonathanjo
    Commented Apr 20, 2023 at 10:46
  • \$\begingroup\$ Never place components on the solder side, these would have to be hand soldered. And perhaps needless to say, through-hole boards are quite outdated by now, as are 2 layer boards. \$\endgroup\$
    – Lundin
    Commented Apr 20, 2023 at 13:30
  • \$\begingroup\$ Two layer boards are not outdated exactly, they are cost effective, but if you can save substantial area or get better performance with a multi-layer board, that might make a compelling case over and above the board cost increase. \$\endgroup\$
    – jrrk
    Commented Apr 21, 2023 at 11:55

4 Answers 4

10
\$\begingroup\$

Here are a handful of issues for potential improvement. You didn't mention if there were any parts that could not be moved so maybe some of these ideas are not practical.

General issues:

  1. C1 and C2 seem to be swapped on the PCB, (per the schematic values), the larger cap looks to be a disc while the smaller value cap is large. Consider a small SMT ceramic for the 1uf and a flat SMT tantalum for the larger cap, (similar idea for C3 and C4).

  2. Using SMT caps for C5, C6, C11 and C13 could save a fair amount of space, and of course for most of the resistors too. In new commercial PCBs mixing THT and SMT can drive up costs, for a hand made hobby type design it may not matter as much except when you start running out of space.

For GND plane improvements:

  1. For the LED trace from J4 p1, bring the trace up and over J5, then above U1, connect to U1 p11 under the chip. The U1 p12 trace now moves to top layer.

  2. For the traces going to the test points under A1 and A2 consider keeping the trace mainly on the top side then using just a via to reach the bottom pads.

  3. The VCC trace from K1, keep the trace on the top side until you need to jump another trace.

  4. For the trace from J2 p1 to A1 p6, run the trace to the left along the PCB edge, this improves the GND plane under A1.

  5. Moving D3 to the bottom of K1 (between K1 and J7) would allow you to slide K1 right, that would give much more room to route power traces on the top layer rather than on the GND plane layer. Slide R1 and D1 up slightly to give more room to tweak the position of K1. The large GND and VCC pads might also move a bit to give more space to slide K1.

  6. Untangle C1 and C2. Rotate C1 CCW 90 deg, rotate D2 180 deg, run traces from J1 to C2 to C1 to D2 parallel on the top side. This eliminates the small bottom trace.

Move caps to top side if possible:

Even if mounting parts on the bottom side seems convenient there may be a time you need to replace or unsolder the parts, this would be harder if the modules are also soldered to the board. You may also want to mount the board differently on later projects or use it in a smaller housing.

  1. Move C11 to the top side just above A2, (adjust traces going to A2 p15 and p16). Connect the +5V trace to the cap first then connect it to A2 p2.

  2. Bring A1 pin 3 and 4 traces out at a tighter diagonal (similar to pin 5), this should give enough room to place C12 on the top side to the left of A1. (C12 is likely smaller then the current foot print, (of course a SMT would be even smaller).

  3. Slide J2 and SW1 down a fair amount to allow C9 to be placed on the top side below A1.

  4. Getting C10 to the top side may be tricky, but you might start by moving J7, C3, C4, D4, and J3 to the right as much as possible, then slide C13, J14 left (or even rotate J14 90 deg, or move it off to the open space at the left corner, if it can be moved that far.

Misc:

  1. Since R2 will be dissipating some heat consider mounting it vertically. Laying a warm resistor flat on a PCB may eventually create a discolored mark, or if the dissipation is higher there could be a hint of toasted PCB in the air. To help with some of the dissipation you might give the trace going to the shorter resistor lead a thicker width, maybe even an extra stub or two.

  2. Route the 5V line going to K1 directly to J7's 5V pin, this should minimize relay turn-on noise from getting out to other components on the +5V line.

\$\endgroup\$
8
\$\begingroup\$

Looks not bad. Good use of a ground plane fill. The ground plane should have minimal interruptions, so route as much of the supply trace length on top, and only make short bridges on the bottom side as needed. Vias add no cost and in this case won't have any negative effect.

For ease of modification and troubleshooting, I suggest putting the plane on the top layer, and the signal layer on the bottom. That way any prototype surgery will be much easier, since the traces will be easily accessible and not buried under the components.

It would be nice to get those capacitors from the bottom fit somewhere on top. I'm sure the connectors and components can be shoved around a bit to make it all fit better. Consider the present layout to be a first cut. Modifying it - even quite substantially - shouldn't take too long, even if it's your first. Make sure you use version control (git usually) to capture the intermediate stages of design, so you'll have a "global undo".

\$\endgroup\$
7
\$\begingroup\$

The PCB could be improved as regards its physical parameters: it's an odd size, the mounting holes are in not particular pattern, and the connectors are not labelled from the external side of the board.

As a very general point, it's very easy to think things are okay when you're looking on the screen, and when you have the board in your hand you wish you'd thought it through a bit more or mocked it up or in general understood the sizes. Your capacitors on the bottom, for example, look like they will save time (while you're looking at the screen). But when you're building it you might well have another opinion. I know I would.

My suggestion would be to start with a "users-view" which just has the board outline, the mounting holes, convenient placement of connectors, and connectors with a label in a consistent position relative to each connector. Make sure you have enough space around the connectors, not just whatever the CAD program says. I recommend laying real connectors out on a piece of paper to get the physical layout practical and easy to use.

And once you have the footprint, then design the interiror of the board. (Perhaps, for sure, swapping a few connectors or making adjustments as you iterate the design.)

As far as the design goes

  1. Two power suppliers, is that really necessary? Consider a very small onboard buck module to get 5VDC,
  2. I'd try to get rid of the relay. Consider use of /RESET, /SLEEP or /ENABLE pins of the A4988 to keep everything off until ready.
  3. I'd recommend for certain getting all the components on the top; as others noted, put the signals on the bottom where they are easier to see, measure, modify.
  4. If you connect the TX and a data direction output to the RS-485 driver you can do debugging output during development, or RDM when in use.
  5. Version control. Make sure you put some version marking on the PCB and the schematic so you know what exactly it is.

For illustration, perhaps the most convenient for the "user" might be this: enter image description here

\$\endgroup\$
4
\$\begingroup\$

Don't be afraid to add some text to the pcb silkscreen layers. I see you have some text but double check what layers is only comments in the design files and what will end up on the pcb.

Add project name and revision info as text on the boards silkscreen layers, it makes it easier if you fix thing and decide to order a second batch. Having a project name helps if you find some old PCBs years from now in your drawer and can't remember what they where made for.

Also think over if you prefer the component ID (such as R1,R2,C1,J1...) or values printed on the pcb. Default is often component ID but you might prefer the other way or both.

Having a clear pin 1, dot marking or positive/negative marking also helps when it is time to mount all components correctly.

Having text that explain all connections can also help to make sure you connect external wires correctly.

\$\endgroup\$
1
  • 4
    \$\begingroup\$ "but double check what layers is only comments" Best comment I got from a PCB manufacturer was a fairly polite "Are you sure you want us to add silk screen to this middle layer?" :) \$\endgroup\$
    – Lundin
    Commented Apr 20, 2023 at 13:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.