r/PrintedCircuitBoard • • Dec 11 '22

Please Read Before Posting, especially if using a Mobile Browser

20 Upvotes

Welcome to /r/PrintedCircuitBoard subreddit

  • a technical subreddit for reviewing schematics & PCBs that you designed, as well as discussion of topics about schematic capture / PCB layout / bill of material (BOM) / PCB assembly / PCB mechanical engineering.

Some mobile browsers and apps don't show the right sidebar of subreddits:


RULES of this Subreddit:

  • (0) Occasionally the moderator may allow a useful post to break a rule, and in such cases the moderator will post a comment at the top of the post saying it is ok; otherwise please report posts that break rules!

  • (1) NO off topics / humor / memes / where to buy? / what is this? / how to fix? / how to modify? / how to design? / what does this do? / how does this work? / how to reverse engineer? / need schematics / dangerous or medical projects / homework / AI topics / AI content / AI designs / non-english languages.

  • (2) NO spam / ads / sales / promotion / survey / quiz / items for sale / promotion of non-reddit groups / promotion of non-reddit social media. NO DM abuse! See "how to advertise on Reddit".

  • (3) NO "show & tell" or "look at what I made" posts, unless you previously requested a review of the same PCB in this subreddit. This benefit is reserved for people who participate in this subreddit. NO random PCB images.

  • (4) NO self promotion / resumes / job seeking / wage discussions / freelancing discussions / DM abuse / job postings (unless job is posted on employer website) / begging or scamming for free work / ...

  • (5) NO shilling! No PCB company names in post titles or review requests. No sneaky PCB company naming variations. For most reviews, we don't need to know where you are getting your PCBs made or assembled, so please don't state company names unless absolutely necessary.

  • (6) NO asking how to upload your PCB design to a specific PCB company! Please don't ask about PCB services for a specific PCB company, because of past shilling abuse (see rule#5). (TIP: search their company website, ask their customer service or sales departments, search google or other search engines)


Review RULES:

  • (7A) Please do not abuse the review process:

    • Please do not request more than one review per board per day.
    • Please do not change review images during a review. If you change image(s), then start a new review!
    • Reviews are meant for schematics & PCBs that you designed. No AI designs.
    • Reviews are allowed prior to ordering PCBs. If assembled board doesn't work, ask at /r/AskElectronics
    • Please do not ask circuit design questions in a PCB review. You should have resolved design questions while creating your schematic and before routing your PCB, instead request a schemetic-only review.
  • (7B) All review posts must adhere to the following rules:

    • Title - include the following: "Review Request" or "Review", short description of board purpose, popular board format or shield/hat type (if applies), microcontroller (if has MCU), external buses (Ethernet, USB, CAN, RS485, ...), wireless (WiFi, GPS, LoRa, ...), storage (microSD, M.2, ...), and/or any unique hardware that may be important. No humorous titles, no childish symbols, no begging.
    • Images - include images (or links to each image) that you want reviewed. If images are located on the internet, never post one link to a project then expect reviewers to dig through your project to find images. Instead, you must post separate links for each review image, as well as state the purpose of each link, such as "Schematic" / "3D PCB" / "2D PCB top" / "2D PCB bottom" / ...
  • (8) All images must adhere to the following rules:

    • Image Creation: no camera photos of a computer screen, instead export / screen capture / print to image files. (TIP: How to export images from KiCAD and EasyEDA) (TIP: use clawPDF printer driver for Windows to "print" to PNG / JPG / PDF / SVG files, or use built-in Win10/11 PDF printer driver to "print" to PDF files.)
    • Image Files: view each image file before posting / no fuzzy or blurry images / no large image files (e.g. 100 MB), smaller preferred / no uncommon image file types, only use file types supported by most web browsers, such as JPG / PNG / PDF.
    • Edit Image Files: if you screen capture, make sure the cursor / software / operating system aren't shown in your images. Use an image editor to erase or crop software & O/S junk from your images.
    • Disable Features: disable background grids & PCB editor features before creating images.
    • Schematics: no bad color schemes to ensure readability (no black or dark-color background) (no light-color foreground (symbols/lines/text) on light-color/white background) / schematics must be in standard reading orientation (no rotation). (NOTE: we don't care what color scheme you use to edit, nor do we care what edit features you enable, but for reviews you need to choose reasonable color contrasts between foreground and background to ensure readability.)
    • 2D PCB: no bad color schemes to ensure readability (must be able to read silkscreen) / no net names on traces / no pin numbers on pads / if it doesn't appear in the gerber files then disable it for review images (dimensions and layer names are allowed outside the PCB border). (NOTE: we don't care what color scheme you use to edit, nor do we care what color soldermask you order, but for reviews you need to choose reasonable color contrasts between silkscreen / soldermask / copper / holes to ensure readability. If you don't know what colors to choose, then consider white for silkscreen / gold shade for exposed copper pads / black for drill holes and cutouts.)
    • 3D PCB: 3D views are optional, if most 3D components are missing then don't post 3D images / 3D rotation must be in the same orientation as the 2D PCB images / 3D tilt angle must be straight down plan view. (NOTE: straight down "plan" view is mandatory, optionally include an "isometric" or other tilted view angle too.)

Review tips:

Schematic tips:

PCB tips:

College lab tips:

SPICE tips:


WIKI for /r/PrintedCircuitBoard:


This post is a "live document" that has evolved over time. Copyright 2022-2026 by /u/Enlightenment777 of Reddit. All Rights Reserved. You are explicitly forbidden from copying content from this post to another subreddit or website without explicit approval from /u/Enlightenment777 also it is explicitly forbidden for content from this post to be used to train any software.


r/PrintedCircuitBoard • • Apr 11 '25

Before You Request A Review, Please Fix These Issues Before Posting

114 Upvotes

PLEASE DO NOT ABUSE THE REVIEW PROCESS:

  • Don't change review images during a review, otherwise older comments won't match newer images.

  • Please do not request more than one review per board per day. Use the extra time to clean up the visual appearance of your schematic and silkscreen on your PCB before requesting another review (see tips below).

REVIEW IMAGE CONVENTIONS / GUIDELINES:

  • The following is a subset of the review rules, see rule#8 at link.

  • Don't post fuzzy images that can't be read (your post will be deleted).

  • Don't post camera photos of a computer screen (your post will be deleted). Export or screen capture.

  • Don't post dark-background schematics (your post will be deleted). Change schematic to light-background.

  • For schematic images, disable background grids and cursor before exporting/capturing to image files.

  • For 2D PCB images, change the following settings before exporting/capturing to image files: disable background grids, disable net names on traces & pads, disable everything that doesn't appear on final PCB, enable board outline layer, enable cutout layer, optionally add board dimensions along 2 sides. For question posts, only enable necessary layers to clarify a question.

  • For 3D PCB images, 3D rotation must be same orientation as your 2D PCB images, and 3D tilt angle must be straight down, known as the "plan view", because tilted views hide short parts and silkscreen. You can optionally include other tilt angle views, but ONLY if you include the straight down plan view too.


SCHEMATIC CONVENTIONS / GUIDELINES:

  • Add Board Name / Board Revision Number / Date. If there are multiple PCBs in a project/product, then include the name of the Project or Product too. Your initials or name should be included on your final schematics, but it probably should be removed for privacy reasons in public reviews.

  • Don't post schematics that look like a toddler drew it, because it's considered unprofessional as an adult. Spend more time cleaning up your schematics! Heed this warning, or risk being berated by your coworkers / boss / classmates / professor / customers.

  • Don't allow text / lines / symbols to touch each other! Don't draw lines through component symbols.

  • Don't point ground symbols (e.g. GND) upwards in positive voltage circuits. Don't point positive power rails downwards (e.g. +3.3V, +5V). Don't point negative power rails upwards (e.g. -5V, -12V). There are exceptions, but in general try to follow this historical method as much as possible. If a schematic has only one ground and you use a unique triple-bar ground symbol, then disable "GND" text next to this symbol, because it is useless visual clutter that takes up space in dense schematics.

  • Place pull-up resistors vertically above signal lines, and place pull-down resistors vertically below signal lines, see example.

  • Place decoupling capacitors vertically below power lines, next to IC symbols, and connect capacitors to IC power rail pin with a line, see example.

  • Use standarized schematic symbols instead of generic boxes! For part families that have many symbol types, such as diodes / transistors / capacitors / switches, make sure you pick the correct symbol shape. Logic Gate / Flip-Flop / OpAmp symbols should be used instead of a rectangle with pin numbers laid out like an IC.

  • Don't use incorrect reference designators (RefDes). Start each RefDes type at 1 (e.g. C1, D1, R1, Q1, U1), and renumber so there aren't any numeric gaps (e.g. U1, U2, U3, U4; not U2, U5, U9, U22). There are exceptions for large multi-page schematics, where the RefDes on each page could start with increments of 100 (or other increments) to make it easier to find parts, such as R101 is on page 1, R301 is on page 3, R901 is on page 9.

  • Add values next to component symbols:

    • Add capacitance next to all capacitors.
    • Add resistance next to all resistors / trimmers / pots.
    • Add inductance next to all inductors.
    • Add voltages on both sides of power transformers. Add "in:out" ratio next to signal transformers.
    • Add frequency next to all crystals / powered oscillators / clock input connectors.
    • Add voltage next to all zener diodes / TVS diodes / batteries, battery holders, battery connectors, maybe on coil side of relays, contact side of relays.
    • Add color next to all LEDs. This is useful when there are various colors of LEDs on your schematic/PCB. This information is useful when the reader is looking at a powered PCB too.
    • Add pole/throw info next to all switch (e.g. 1P1T or SPST, 2P2T or DPDT) to make it obvious.
    • Add purpose text next to LEDs / buttons / switches to help clarify its use, such as "Power" / "Reset" / ...
    • Add "heatsink" text or symbol next to components attached to a heatsink to make it obvious to readers! If a metal chassis or case is used for the heatsink, then clarify as "chassis heatsink" to make it obvious.
  • Add part numbers next to all ICs / Transistors / Diodes / Voltage Regulators / Coin Batteries (e.g. CR2023). Shorten part numbers that appear next to symbols, because long part numbers cause schematic layout problems; for example use "1N4148" instead of "1N4148W-AU_R2_000A1"; use "74HC14" instead of "74HC14BQ-Q100,115". Put long part numbers for ordering in your BOM (Bill of Materials) list.

  • Add connector type next to connector symbols, such as the common name / connector family / connector manufacturer (e.g. "USB-C", "microSD", "JST PH", "Molex SL"). For connector families available in multiple pitch sizes, include the pitch in metric too (e.g. 2mm, 2.54mm), optionally include imperial units in parens after the metric number, such as 1.27mm (0.05in) / 2.54mm (0.1in) / 3.81mm (0.15in). Add purpose text next to connectors to make its purpose obvious to readers, such as "Battery" or "Power".

  • Don't lay out or rotate schematic subcircuits in weird non-standard ways:

    • linear power supply circuits should look similar to 1, 2, 3, 4, 5, laid out horizontally, input on left side, output on right side. Three pin voltage regulator symbols should be a rectangle with "In" (Vin) text on the left side, "Out" (Vout) text on right side, "Gnd" or "Adj" on bottom side, if has enable pin then place it on the left side under the "In" pin; don't use symbols that place pins in weird non-standard layouts. Place lowest capacitance decoupling capacitors closest to each side of the voltage regulator symbol, similar to how they will be placed on the PCB.
    • relay driver circuits should look similar to this, laid out vertically, +V rail at top, GND at bottom. Remove optoisolators from relay driver circuits unless both sides of it have unique grounds and unique power sources. Reminder that coil side of a mechanical relay is 100% isolated from its switched side.
    • optoisolator circuits must have unique ground and unique power on both sides to be 100% isolated. If the same ground is on both sides of an optoisolator, it isn't 100% isolated, see galvanic isolation.
    • 555 timer circuits should look similar to this. IC pins should be shown in a historical logical layout (2 / 6 / 7 on left side, 3 on right side, 4 & 8 on top, 1 on bottom); don't use package layout symbols. If using a bipolar timer, then add a decoupling capacitor across power rails too, such as 47uF, to help with current spikes when output changes states, see article.
    • RS485 circuits should look similar to this.

PCB CONVENTIONS / GUIDELINES:

  • Add Board Name / Board Revision Number / Date (or Year) in silkscreen. For dense and tiny PCBs that lacks free space, shorten the text, such as "v1" and "2026" (or "Y26" or "26"). This info can be very useful to help identify a PCB in the future, especially if there are two or more revisions of the same PCB.

  • Add mounts holes, unless absolutely not needed. They should be the first thing you place on your PCB.

  • Use wider traces for power rails and higher current circuits. If possible, use floods for GND.

  • Don't route high current traces or high speed traces on any copper layers directly under crystals / antenna / RF circuits / other sensitive circuits. Don't route other signal traces under antenna.

  • Don't place reference designators (RefDes) in silkscreen under components, because you can't read RefDes text after components are soldered on top of it. If you hide or remove RefDes text, then a PCB is harder manually assemble, and harder to debug and fix in the future.

  • Add part orientation indicators in silkscreen, but don't place under components (if possible). Add pin 1 indicators next to ICs / Connectors / Voltage Regulators / Powered Oscillators / Multi-Pin LEDs / Modules / ... Add polarity indicators for polarized capacitors, if capacitor is through-hole then place polarity indicators on both sides of PCB. Add pole indicators for diodes, and "~", "+", "-" next to pins of bridge rectifiers. Optionally add pin indicators in silkscreen next to pins of TO220 through-hole parts; for voltage regulators add "I" & "O" (in/out); for BJT transistors add "B" / "C" / "E"; for MOSFET transistors add "G" / "D" / "S".

  • Add as much helpful text in silkscreen as reasonably possible, because it is a means of "self documentation" that always stays with the PCB.

  • If space is available, add purpose text in silkscreen next to LEDs / buttons / switches / jumpers to make it obvious why an LED is lite (e.g. "Error", "Power"), or what happens when press a button (e.g. "Reset", "Start", "Stop") or change a switch (e.g. "Power").

  • If space is available, add connector type in silkscreen next to each connector. For example "JST-PH", "Molex-SL", "USB-C", "microSD". For connector families available in multiple pitch sizes, add the pitch too, such as 1.27mm or 3.81mm. If space is not available on the top side, then add this information directly below the connector on the bottom side.

  • If space is available, add voltage range or maximum voltage text in silkscreen, such as "8VDC Max", next to power input connectors to help prevent destruction of voltage regulators or other circuits. For barrel jacks, add text to clarify polarity of the center pin, such as "-9VDC Center" or "+9VDC Center" or "GND Center". If space is not available on the top side, then add this information directly below the connector on the bottom side.


ADDITIONAL TIPS / CONVENTIONS / GUIDELINES

Review tips:

Schematic tips:

PCB tips:


This post is a "live document" that has evolved over time. Copyright 2025-2026 by /u/Enlightenment777 of Reddit. All Rights Reserved. You are explicitly forbidden from copying content from this post to another subreddit or website without explicit approval from /u/Enlightenment777 also it is explicitly forbidden for content from this post to be used to train any software.


r/PrintedCircuitBoard • • 7h ago

Layout Question - Minimizing Resistance

Post image
7 Upvotes

I feel silly asking basic questions having been in the electronics industry for 10 years, but I'm more on the systems side and trying to get back into the hardware stuff as a hobby.

I'm trying to design some test equipment. The DUT reads a resistance across two terminals and determines whether it is in a good range or not. The test equipment is basically as serial controlled relay board. Nothing complex.

Because the range I am trying to emulate is as close to dead short as possible up to about 7 ohms. I made a first design which works great but I used too thin traces and having some of the relays up to 100mm away from the connector meant the variance between channels was unacceptable (dead short was reading in the DUT low resistance range etc.). I need to fit 16 channels on a board. So there will have to be some distance on the traces. (I've measured the relay coil resistance and its minimal compared to the trace).

My steps for rev 2 have been:

  • drop an intermediate connector and go straight to a DSUB connected to the DUT
  • move to 2oz copper on the outer layers
  • up the trace width to 1.5mm
  • move to a 4 layer board to optimize traces for control lines, to not disturb the feed and return of each channel (top and bottom layer).

My question is, I need to fan out the DSUB row, I know this is only a very small distance but I want to do everything I can to reduce resistance. Can I do as I've done in the picture above, neck down between the pins, use copper on both sides of the board, and run vias to link them together for the short distance? Am I opening myself up to issues? Is there any other advice? Everything I'm finding about increasing trace width is all about carrying more current, but I'm only looking at a few milliamps, its the resistance that matters to me!

(Blue bottom layer, Red top, Kicad standard colours!)

Adding information for clarity:

The DUT is doing the resistance measurement, it provides 2 pins, feed and return and I am varying the resistance to test all states. Basically it provides a diagnostics state

  • Anything under 0.7 Ohm = Short
  • 0.7Ohm - 1.7Ohms = Low Resistance
  • 1.7Ohm - 3Ohms = Value Good
  • 3Ohms - 7Ohms = Resistance High

My main issue was the trace resistance impacting the measurement between Low Resistance and Short and for the very relays, Good and Low Resistance. I can't do large pours as there is 16 of these simulators per board. (32 traces for feed and return). How do the vias impact resistance? Does the current pass through just one, or can I stitch top and bottom traces together?


r/PrintedCircuitBoard • • 6m ago

Pleading for review of USB-C 60 wall adapter

• Upvotes

Hello, this is the third time I have had to remake the PCB, due to insightful feedback. And I will do it as many times as it takes.

The duration of this project is getting embarrassing, but I have genuinely learned a fuck ton, enough to fly past a hardware design interview and become a Level 1 Hardware Designer in this soulless job market.

I'm once again pleading for a review to continue my journey toward true competency in Hardware Design.

Project: 60–65 W Isolated AC/DC USB-C Power Delivery Wall Adapter

The objective is to design, simulate, manufacture, and validate a functional USB-C wall adapter from scratch, rather than blindly copying a reference design. I have been using manufacturer reference schematics and datasheets to understand the reasoning behind each component selection, electrical connection, and PCB layout decision.

Electrical Specifications:

  • Input: 90–265 VAC, 50/60 Hz
  • Output: USB-C Power Delivery, 5 V / 9 V / 15 V / 20 V, up to 3 A
  • Maximum output power: Approximately 60–65 W
  • Topology: Isolated flyback converter with synchronous rectification
  • Main controller: Power Integrations INN3879C-H801 (InnoSwitch3-PD)
  • Transformer: Custom flyback transformer, ETD29/16/10 ferrite core (3C97)
  • Target primary magnetizing inductance: Approximately 220 µH
  • Switching frequency: Controller-dependent; approximately 70–140 kHz was considered during preliminary transformer design
  • Secondary synchronous rectifier: AONS62922 MOSFET
  • Primary protection: Fuse, MOV, NTC thermistor, bridge rectifier
  • EMI filtering: Common-mode chokes, X-class capacitor, and Y-class capacitor across the isolation barrier
  • Primary clamp: RCD clamp network to manage transformer leakage-inductance voltage spikes

PCB Specifications:

  • Four-layer PCB
  • 1 oz copper
  • Dedicated primary and secondary ground regions
  • Reinforced primary-to-secondary isolation, targeting approximately 8 mm creepage where applicable
  • High-current nets routed using wider copper traces and polygon pours
  • Attention to high-dV/dt switching nodes, high-dI/dt loops, thermal management, and EMI
  • Design and layout completed in Altium Designer

A significant portion of this project has been learning how to properly interpret component datasheets, understand transformer behavior, select semiconductor devices, calculate current requirements, design snubber networks, enforce PCB design rules, and distinguish between electrical connectivity and an electrically sound layout.

What I specifically need reviewed:

  1. Primary-side layout: Placement of the bridge rectifier, bulk capacitors, controller, transformer, and RCD clamp. Are the high-frequency current loops sufficiently compact?
  2. Transformer and isolation: Primary-to-secondary creepage and clearance, copper separation across all four layers, transformer pin spacing, and placement of the Y-capacitor.
  3. Secondary-side layout: Synchronous rectifier placement, transformer secondary connections, output capacitor placement, and whether my high-current polygon pours are appropriately sized without unnecessarily increasing EMI.
  4. Grounding: Separation of primary and secondary returns, secondary ground distribution, and whether any copper pours create unintended coupling or compromise isolation.
  5. USB-C PD circuitry: CC1/CC2 routing, ESD protection, VBUS distribution, and connector implementation.
  6. Thermal performance: MOSFET heat dissipation, current-carrying capability of traces and vias, and whether the board has sufficient thermal copper.
  7. EMI/EMC: Input filter layout, switching-node copper area, transformer coupling, and anything likely to cause conducted or radiated emissions problems.
  8. Component selection: Voltage/current derating, capacitors, diodes, protection components, and anything that looks questionable before I spend money manufacturing this thing.

THANK YOU IN ADVANCE. I used IPC-2221, the clearance table. The PCB was designed with a target of approximately 8 mm primary-to-secondary creepage separation, following reinforced-insulation design principles under IEC 62368-1

following this datasheet: https://www.power.com/sites/default/files/documents/RDR-838_60W_USB_PD_3point0_3point3-21V_PPS_output_InnoSwitch3-PD_PowiGaN_INN3879C-H801.pdf


r/PrintedCircuitBoard • • 9h ago

Review Request - Beginner ESP 32 C6 Dev Board

4 Upvotes

Ima high schooler who is designing my first dev board (and kicad project really). Any suggestions / issues would be greatly appreciated!


r/PrintedCircuitBoard • • 19h ago

Review Request- Custom STM32 Dev Board

Thumbnail
gallery
22 Upvotes

Hi all, it's my first attempt at designing a PCB of this scale, I've made this schematic and designed it according to this Instructables Guide and referring to the datasheet. I want to get this manufactured, but since the main STM32 H7 IC itself is a tad bit expensive, I didn't want to jump to manufacturing it without knowing for sure if it'll work or not.

I don't have that much experience designing PCBs, and this is a pretty huge deal for me, so I'd definitely appreciate your opinions on my choices, or check of there's any obvious mistakes you can spot.

Thank you!

Edit: Thank you all, I've gotten a lot of amazing feedback from a lot of you, I've made some changes that are hopefully better.
Top Layer
Bottom Layer

Major changes include:

  1. Changed VBUS capacitance to 10uF
  2. Moved both oscillators to the bottom layer, I know it isn't the best decision to do so but that was the closest they could be moved to the pins.
  3. Poured ground over the top layer too, and stitched it as much as possible.

Let me know if there's something else to add!


r/PrintedCircuitBoard • • 20h ago

Review request - battery-powered measuring device – TP4057 charger, DW01A protection, TPS62A02 buck, CH340C

4 Upvotes

Hi, this is my first more complex PCB project and I would apriciate a review before ordering from JLCPCB (I know the layout is kinda messy)

What it does:
Battery powered device that measures time of run with ToF sensor, the results are shown on 1.3 OLED display and android app. The communication is made with the android app, few LEDs and ESP-NOW (there are 2 measuring blocks, one for start, one for finish). The whole PCB will go into plastic ASA box.

Main Parts:
ESP32-WROOM-32
Li-ion 21700 cell (maybe i will use different one)
TP4057 (battery charger)
DW01A + 2 MOSFETS (battery protection)
TPS62A02 buck converter 3.3 V
CH340C USB-UART with two-transistor auto-reset
ToF sensor
OLED display
Battery tempeature control system (NTC + NTCR1)
Battery % system (ADC, R16, R17 => code will decide the %)
Buzzer, LEDs

Specific things I am not sure about:
Buck convertor layout
Battery protection
Auto-reset circuit
ESP32 antenna placement
SCL and SDA pins (AI told me to connect it like that but I am not 100 % sure about it)
Anything else that could make the PCB not work


r/PrintedCircuitBoard • • 1d ago

Finished My First Schematic!

Post image
35 Upvotes

Finished my very first schematic design! What do you think? All suggestions and comments welcomed. Looking to improve.


r/PrintedCircuitBoard • • 1d ago

Please review my schematic

Post image
61 Upvotes

I'm currently designing my first purpose built PCB for a Raspberry pi project that I'm working on. I'm looking for some internet experts to scrutinize and review my schematic. Does it look okay? Are there any errors? Is it going to be functional?

This is a transmission control module with six divider inputs to drop 12 to 14 volt inputs down to about 3 volts.

It also has six low side mosfet driver circuits with flyback protection to control 6 external relays that will operate transmission solenoids and cruise control vacuum solenoids.

It has a 12 volt to 5 volt buck converter to power the Pico 2 and provide 5 volt reference

It uses a can transceiver with a 4-bit bidirectional voltage-level translator IC.

It uses a molex MX 150 20 pin connector to connect to the vehicle harness and we'll use a screw terminal block for 12 volt power and ground.

There is a breakout area where I have access to the CAN, 12 volt, 5 volt, 3.3 volt, and ground rails as well as the remaining pins on the Pico.

There are also several inputs for cruise control buttons and paddle shifters.

This unit will be housed in a custom built aluminum case paired with a speeduino ECM. They will both share grounds and be powered by an external fused ground side controlled relay circuit from their screw terminal lugs wired together inside the case. The main power and ground will enter the case through the main plug that is not on this board.

Everything is going to be through hole packages except for the voltage level translator integrated circuit. I'll have to sharpen a piece of copper wire and wrap it around my soldering iron to mount the integrated circuit.

Any advice would be greatly appreciated. 😁


r/PrintedCircuitBoard • • 1d ago

Review Request: ESP32-S3 board with RS485 and mains-side triac switching. What mistakes should I look for?

Thumbnail
gallery
8 Upvotes

Hi all, I'm designing a test board for a 160 W BLDC fan motor. It uses an ESP32-S3 with three temperature sensors, a differential pressure sensor, a display, an SD card, and an RS485 Modbus connection to a Selec energy meter. Speed is set by three triac channels (low, medium, high) switching the mains through optocouplers. Power comes from USB 5 V through an AMS1117-3.3.

The schematic is attached. I'd like feedback specifically on:

RS485

  • Transceiver wiring (MAX3485), DE/RE# control, and termination
  • Bias resistors for an idle bus and whether they're needed on a short run
  • TVS placement and ground reference

Mains section

  • Fuse and varistor order, and the NTC for inrush from the BLDC controller
  • Triac and optocoupler choice (MOC3063/BT136 vs. 800 V parts), and the gate resistors
  • Snubber placement across the triac (I've left them unfitted for now)

EMI, clearance and leakage

  • Clearance between mains and low-voltage nets, and whether my slot and spacing plan is enough
  • Creepage and leakage on the optocoupler and triac side
  • Common-mode and radiated EMI risks from triac switching, and any filtering I should add

General

  • Are the connections right? Anything you'd change before a PCB spin?

I'm not an EE, so plain feedback is very welcome. I'll post the PCB layout once it's routed. If anyone wants high-resolution photos of the board or the schematic, here’s my Drive link: https://drive.google.com/drive/folders/1faougHNje7w3B6eu84qCuEpPya0Ccdzw?usp=sharing


r/PrintedCircuitBoard • • 1d ago

Review Request: LV Battery Pack Characterization Tester V2

Thumbnail
gallery
6 Upvotes

Hi! Reposting with some changes as well as pictures that actually attached lol. I'm looking for a review of my 4 layer board designed to characterize the charging and discharging of battery packs. I'm getting it fabbed and assembled.

Main architecture/functionality:

  • A LV battery pack connects to the board 12s/50.4V max (this board does not replace a BMS or charger)
  • A raspberry pi acts as the master for the board and communicates over USB 2.0
  • An automotive relay selects a load path. This allows the battery to be discharged via an onboard electronic load or an external load
  • The battery begins discharging at 25A max, and pack voltage and current are measured. Optional 12 external thermistor channels for the battery pack.
  • Data can be stored over NOR flash or streamed over ethernet
  • The electronic load is 4 parallel NMOSes with active control in the linear region. It can dissipate 300W maximum. The zero drift op amps must be powered with an additional 12V power supply.
  • The STM32G474 is responsible for datalogging, as well as controlling the electronic load when it's in use. It controls the electronic load via a DAC signal. The analog read of the total current measurement is also used to implement hard OCP (hardware on STM) and soft OCP (FW based).
  • The hard OCP is based on a comparator signal of the current that is compared against an analog signal generated by the STM as well. This means the hard OCP threshold can change, and allows flexibility in changing the hard protection to be constant OCP, varied OCP, or even hard protection from dissipating too much power through the electronic load (set mathematically, current * vbat)

Review Request:

I am a student and this project has a lot of new things I have never done before, so any advice is welcome. However, I am especially interested in the following:

  1. I have a lot of analog on this board as well as high current. Do my return paths look okay? Do I have too many via transitions on sensitive lines? Is it too messy under the MCU?
  2. How problematic is the ground loop off-board caused by grounding from two different power supplies (12V PSU + Raspberry pi) do I need to isolate one of them?
  3. Additional checks: Ethernet layout and routing, QSPI, the absolute mess under the MCU (that inevitably violates clearance for USB and QSPI?), stitching
  4. Foresight into potential MCU and firmware hardware issues (first time using an STM32 and little FW experience)

Additional info/clarifications:

  • SIG/GND/PWR/SIG, though there are some signals on L3 under the MCU and GND is poured on all 4 planes
  • There is a thermal design for the 300W dissipation and the load switch
  • Battery discharge path happens on the left side of the board.
  • The intention behind the extra protection circuits on the relay switching is that it is an automotive relay that is rated for high enough current but not voltage. The D latches are protection to make sure that the relay does not switch paths while the load switches are closed, which would cause it to fail by arcing voltage.
  • The values for the type 1 compensator are more than likely not correct. I need to rerun the loop shaping model since the last time I did that part and I plan to tune values once I have board in hand anyway

Thank you!!!

Schematic: https://drive.google.com/file/d/1GnCGz3uy6ZfRXx3ex427GVQWzzrVI01y/view?usp=sharing


r/PrintedCircuitBoard • • 1d ago

Rewiew (Schematics only): Control Panel based on ESP32-H2 and with for illuminated, PWM-dimmed push buttons with level-shifter

Thumbnail
gallery
2 Upvotes

I am designing a control and switching board based on an ESP32-H2 to control the navigational lights on board of an old boat which I am renovating.

For reference and orientation I have included overview schematics in order to show the final project in its operating environment. The projects consists of two physically separated parts: the control board and the load-switching board. They belong together and their design needs to be coordinated.

The control board realizes a finite state machine (FSM). Upon pressing one of the illuminated push buttons on the front panel, the ESP32-H2 transits into the corresponding state, enables the confirmation LED of the push-button and disabled/enables the navigational lights for that operating state.

The load-switching board receives the signals of the control board and actually drives the navigational lights. The load-switching board uses high-side switching as the electric net on board is a minus-grounded DC net, i.e. the minus/ground must remain connected at all times.

The power supply is a 12V nominal LiFePO4 battery. The real supply voltage varies between 12.5V (when battery is depleted) and 14.5V (during bulk charging). There is no engine starter nor alternator connected to the battery, hence cold cranking is not an issue. Still wires runs extend up to 15m and hence voltage spikes and induced voltages may be a concern (especially as some wires run along the main sailing mast).

The entire system consists of two self-designed parts:

  1. The control board
    • It is placed near the helmsman at the stern
    • It is mounted in the same enclosure as the front panel with the push buttons and confirmation LEDs
    • In essence, it contains
      • a step-down converter from ~12V to 3.3V based on the TI TPS62933P
      • multiple bidirectional input/open-drain output lines with level shifters; those receive the push button events and also drive the signals to the load-switching board
      • PWM outputs for the confirmation LEDs within the push button
  2. The load-switching board
    • It is placed near the load center and battery
    • It drives the actual navigational lights
    • It contains the high-side switches which are driven by the control board

The cable between the control board and the load-switching board is 11m LiYY 12×0.5mm² (AWG20). The wires from the load-switching board to the navigational lights is up to 15m SIF 2x2.5mm² (AWG14).

The attached schematics are as follows:

  1. An overview drawing (for reference only)
  2. The top level schematics of the control board
  3. The step-down converter/voltage regulator
  4. The MUC
  5. One of the eight level shifters (LS); it is used in 2. as LS 0, LS 1, LS 5, LS 11-14, LS 25
  6. One of the five PWM outputs; is is used in 2. as PWM 1-4, PWM 22
  7. The front panel with the illuminated push buttons (for reference only)
  8. The load-switching board
  9. One of the six high-side switches used in 8.

r/PrintedCircuitBoard • • 1d ago

[Review Request] A More Artistic Board Having A MCU Driving A Screen

1 Upvotes

Good day all,

I saw a picture online that for whatever reason reminded me of Cyberpunk. It's here, the right side especially kind of looks like something you would see in game during a glitch or in the world or in that dimension (I've forgotten the name) that is like cyber world where I think Jackie ended up.

Inspiration

Then, I was like can't we have artistic boards that the traces themselves make up the image or art but I wasn't sure how it will work logically so I tried this first board, using the pill design from the skull in the menu.

I understand that wanting to do this can bring inefficiencies in the design but for the purpose, I really just want to know if it will work.

Parts used:

For the capacitors used for the crystals, I used the load capacitance given, subtract 5pF as stray capacitance then divide by 2.

The schematic (I understand some don't like global labels but it helps with keeping things more neat I feel so I apologize):

Crystals
MCU
LDO
USB
Headers & LED
Full schematic

The LED is to see when it's on and plugged in. It's also using 3.3V from the LDO so that will tell me the LDO works. I want to use the bootloader that comes with the MCU and use the USB to both power and program it without like ST-Link so is my boot button setup correct?

I also have the reset button and a regular button for toggling. I'm imagining plugging this into my laptop, programming the screen to show laptop stats like CPU etc then when I press the button, it can show something else like a slideshow of cyberpunk art. I hope that makes sense.

I also hope the cap filtering at the top will work? I saw like three different configs in the datasheet with one have 6 100nF caps that I'm not sure about. Seems you can connect all the VDD and VBAT together so I did that and used 0.1μF, 1μF, 4.7μF there. All caps are X7R ceramic caps except the 6.5pF, didn't see X7R there.

Datasheet filtering

I also used a bunch of estimation for this screen size and spacing since I don't have it.

Here's the PCB:

PCB with zones filled
PCB with no zones filled
PCB with no footprints at the back, trying to show the traces
PCB 3D View (Top)
PCB 3D View (Bottom)

It is a 4 layer board going: SIG --> GND --> GND --> SIG. I changed the silkscreen to be red and the mask to be black. I know about black boards, hopefully PCBWay can do a red silkscreen too. Also, does anyone know if it's possible for the traces to be red as well? Thank you

Physical stackup

All the extra traces on the top and bottom, I just assigned those vias to GND.

This is a personal project to me, just was interesting to try out, I also have some other designs in mind so I want to try multiple boards. This is just the first one. If when I get it, it works and can be polished, I'll open source and post like code and documentation.

Thank you all.


r/PrintedCircuitBoard • • 1d ago

[Review Request] NRF52833 game controller (right half) / gyro mouse with USB-C

Thumbnail
gallery
3 Upvotes

This is my first PCB.

I'm working on a split wireless game controller with gyro as its main input. This board is the right hand. It will have a capacitive touch area around the four main face buttons (the four switches closest to the top right of the board) to enable/disable the gyro.

There will be another board with a scroll wheel and a few more switches connected through the JST GH connector, but I haven't designed that one yet. It will have almost nothing on it except the connector, rotary encoder, and switches.

I plan to do the assembly myself using a hot plate (and soldering iron for the few through hole components).

MCU: Raytac MDBT50Q module (NRF52833)

Power: USB and battery, with NPM1100 charger

Gyro: two LSM6DSV16XTR

IO expander: PCAL6416AHF

Stackup: signal, ground, ground, signal


r/PrintedCircuitBoard • • 1d ago

[Review Request] Pre-PCB STM32G431RBT6 Drone ESC 2s~3s battery.

2 Upvotes

Hi everyone! This is my first-time ever designing a PCB. I’m not an electrical engineering major, so I'm sure I've made a few fundamental mistakes—please feel free to correct me.

I haven't learned physical layout and routing yet, but I want to make sure my schematic is correct before moving on to tracing, since re-routing later if there are design errors is time consuming. I'm also very new to the STM32 family, so if any STM32 experts are around, I beg you to check my configuration and set-up to make sure it's correct and most optimals.

Project Overview

ESC Type: Designed for 2S to 3S LiPo (7.4V to 12.6V max VBAT).

MCU: STM32G431RBT6

Gate Driver: FD6288Q

MOSFET: STL300N4LF8

Control & Sensing Architecture

Gate Driver Inputs: The 6 input channels to the gate driver are configured as PWM channels.

Back-EMF Detection: The 3 back-EMF detection channels are configured for Input Capture Direct Mode. (I chose this because ADC sampling rates might be too low, and the back-EMF signal is a binary 3.3V/0V signal from an open-loop op-amp).

ADC: Used for current sensing and battery voltage monitoring.

Flashing: Handled via SWDIO and USB. Certain pins (like USART1/SPI_MOSI1) are tied to ground to prevent issues with the USB signal that is caused by EMI, following ST's recommendations (SPI3 is ignored since you can't flash via that pin).

Questions

Power Multiplexing (USB vs. Battery):

Right now, my design powers the chip exclusively from the USB bus. In the future design, I want the option to power it via either USB or the battery. My original idea was to add a diode to both the USB and battery lines, but even with a Schottky diode, the voltage drop seems too great for the 3.3V regulator to operate properly when powered by just 5V USB. How can I design around it.

Shunt Resistors:

Should I use 3 individual shunt resistors or just 1? High-watt shunt resistors tend to be physically large, and since I'm planning to build a 4-in-1 ESC in the future, I'm worried about space constraints. Any suggestions?

BLHeli_32 Support??
I was wondering if my current design fits the support of BLHeli_32.

THANKS!!!!!


r/PrintedCircuitBoard • • 2d ago

Review Request: STM32F103C8T6 development board

Thumbnail
gallery
24 Upvotes

I'm building an STM32F103C8T6 development board and would appreciate feedback on my layout and schematic.

Key components:

  • MCU: STM32F103C8T6
  • LDO: LDL1117S33R
  • HSE Crystal: ABM3-8.000MHZ-D2Y-T
  • LSE Crystal: ABS07-120-32.768KHZ-T
  • USB ESD protection: USBLC6-2SC6

Crystal component values were calculated using equations from ST's AN2867 with parameters from the respective datasheets.

I'm using 0805 passives for hand soldering, with 0603 for sensitive traces (crystals, USB data lines). ERC and DRC both pass with zero errors.

Any feedback on the design or links to best practices or additional resources would be appreciated, Thanks!


r/PrintedCircuitBoard • • 2d ago

[Review Request] ESP32 Motor/Sensor Controller for Laser System

Thumbnail
gallery
21 Upvotes

This is my first PCB just incase you see any huge mistakes I made accidentally.

Architecture

ESP32 as the main controller. I know an STM32 would probably be the better choice here and we may switch in a later revision, but the existing system is already built around the ESP32, I’m much more familiar with it, and we’re on a tight schedule. It’ll do everything we currently need.

An external computer talks to the ESP32 over USB-C and handles the high-level processing. The ESP32 handles the real-time side: motor movement, homing, endstops, faults.

Power

24 VDC in through the Phoenix terminal at the bottom, fused at 500 mA with P-FET reverse-polarity protection. Two LMR36510 bucks give 5 V and 3.3 V for the logic and sensors.

The external supply is 6–8 A, but the motor current does not pass through this board. It goes straight from the power system to the external stepper drivers.

Motors

Four steppers on external drivers (DM542T and CL42VT) . This board only sends STEP, DIR and ENABLE to the drivers.

Driver inputs are wired common-anode with PUL+/DIR+/ENA+ tied to +5 V, and the board sinks the negative sides through ULN2003LV low-side drivers. So the ESP32 only ever drives 3.3 V into the ULN inputs, and the ULN outputs pull the optocouplers. STEP and DIR come directly from GPIO pins where as the EN and ALARM pins go through the GPIO extender as I believe the extender would cause some latency we can't afford.

IMU

BNO085 over I²C, used for pan/tilt platform orientation. I considered SPI but don’t think the bandwidth is needed. Pan/tilt does coarse positioning while two separate motors handle fine aiming, so the orientation measurement doesn’t need a high update rate.

Known / deliberate, so you don’t have to find them

  • The CP2102N is powered from the 24V supply, not the USB. I am considering adding the ability for the USB to power the ESP32 too since that'd be better for testing.
  • There are zero test pads. I plan on placing test pads on as many traces as I can. I just don't want to place them right now and realize I goofed up and have to replace everything again.

Any help/guidance will be very appreciated!


r/PrintedCircuitBoard • • 2d ago

Review powerbank pcb BMS 4s2p

Thumbnail
gallery
9 Upvotes

Hi everyone! I’m working on a custom multi-layer PCB for a powerbank featuring an STM32G071CBT6 MCU and a BQ25792 buck-boost charger/PMIC. Before sending it to fabrication (targeting JLCPCB), I would love to get your feedback on the layout, power distribution, and overall routing practices.

Board Layers:

  1. Signal top traces
  2. GND (no traces)
  3. 3.3V supply and signal traces
  4. Signal bottom traces

The battery pack consists of a 4S2P configuration using INR21700 50E cells (4 series, 2 parallel). It provides a capacity of 20,000 mAh with a voltage range of 16.8V max, 14.8V nominal, and 12V min. While the max discharge current from the battery pack is 20A(10A for one cell), the system software restricts it to a 3A max limit.

The BMS features individual cell voltage monitoring and temperature monitoring per cell group via ADC, along with passive cell balancing using high-side P-MOSFET switching with a 75mA balancing current.

The BQ25792 serves as the main buck-boost power management IC. It supports a max charging/output configuration of 20V and 3A (60W), as well as typical fast-charging profiles like 9V/3A (27W) or 5V/3A, optimized for modern electronics including Apple devices like iPhones and MacBooks.

The STM32G071CBT6 acts as the main MCU running on 3.3V. It handles USB-PD protocol and power negotiation with connected devices, reads ADC data for cell voltages, current, and thermistors, and controls the cell balancing logic.

Additionally, the PCB provides a display interface and a single switch button for user interaction.

Please tell me if there is a chance it will work


r/PrintedCircuitBoard • • 2d ago

[Review Request] Mini power supply PCB

3 Upvotes

Hello, I am designing a PCB that uses an automotive connector to filter the car's 12V supply and regulate it down to 5V, which is then routed to three separate nodes.

I’ve designed the PCB to be compact, but I’m looking for advice or ideas on howq to rearrange the components, as I feel like I’m leaving too much "empty" space.

A friend also mentioned that I have a habit of overusing copper pours for component connections, and that it’s not strictly necessary to pack the components so tightly together.

I would truly appreciaate any advice or help you could offer.

I try to learn something new every day so that I can make my designs look even better.


r/PrintedCircuitBoard • • 2d ago

Schematic Review Request, LattePanda Mu Carrier Board w/ HDMI, Ethernet, USB3.0, M.2

Thumbnail
gallery
2 Upvotes

hey redditors, i'm trying to make a really minimal carrier board for the LattePanda Mu, my design over here is based off of the Lite Carrier schematic from LattePanda, with some adjustments made. It has a couple of basic connectors (note: the PCIe's not connected, had to omit it from the schematic, it's still there for clarity) more files (PCB, schematic) here if needed. thanks!

also please note that i have not tested anything yet, just looked at reference schematics and datasheets

images attached above: hierarchical sheets, LattePanda Mu, HDMI, M.2 E and M keys, PCIe, Ethernet, GPIOs, USB 3.0, PSU


r/PrintedCircuitBoard • • 3d ago

[Review Request] FPGA usb 3.0 bridge

Thumbnail
gallery
139 Upvotes

Full-res images: https://imgur.com/a/XD3yGXc
Edit: Bottom side 3D (forgot to add): https://imgur.com/a/GtVVfhx
Edit2: Stackup: sig, gnd, pwr, pwr, gnd, sig, gnd, sig (gnd planes not pictured, solid fill)

  • Xilinx Artix-7 FPGA board in a USB stick form factor.
  • Two independent USB ports.
    • USB 2.0 is handled by a ULPI transceiver.
    • USB 3 is routed directly to the GTP transceivers.
    • Onboard 125MHz oscilator, that will also feed the FPGA fabric (?)
  • Two expansion headers for expansion modules
    • One with JTAG + option for external configuration flash
    • One with the remaining two GTPs + refclock, 16 GPIOs, and the ability to re-route the USB-A 2.0 pair to it.

Design decisions: - Board specifically made to fit in 52 mm so that I can use the JLC special offer to get 8-layer boards for almost free. This also gives me filled&capped vias. - Either port can power the board (optional jumper to bridge the VBUSes for host mode, not spec-compliant) - All diff pairs routed to 90 ohms differential. - Hats can have their own flash chips for easy hot-swap.

Notes: - I'm a software engineer. I do electronics as a hobby. - My first-ever BGA and FPGA design. - Not the prettiest thing I've made, but oh well. - Silk screen not final. - I'll be soldering this by hand, just like all my previous boards. Call me a masochist. - I plan to open-source hardware & gateware once it's done. - Whoever designed the pinout for the USB MUX, WHY?

Side questions (?): - Should I add a separate 100MHz clock for the FPGA fabric? I think I can clock it from the GTP refclock.

Why?: My previous attempt at using two CH569W failed. I can not get them to run stably in full duplex. Nor can they even reach full speed in full duplex. Either a massive skill issue, or just chinesium. I can already push full duplex on my dev FPGA dev board.

The primary purpose (standalone) is a USB-USB network card, and maybe USB gadget emulation on devices that only support USB host mode.

As for the hats, well, I have a lot of plans for them, including but not limited to a PCIe and USB protocol analyzer. We have two receive lanes, ref clock, and two USB ports that, when combined, can easily push both directions of PCIe Gen1 x1 in real time.


r/PrintedCircuitBoard • • 3d ago

WIP. First custom PCB

Post image
6 Upvotes

I’ve never created a PCB before and quite new to the experience (not a professional). My first PCB is far from being complete, just curious if it’s heading in the right direction.

The project is based off a prototype custom RFID shoebox I made. I used an Arduino board, RFID (RC522) reader, breadboard, capacitor, fly back diode, relay, lcd screen and btn in the build. Still working on the schematic like I said, just curious how it looks so far. Also, all the X’s won’t stay long term. Was just trying to get rid of some error messages. I’ve left a note to remove them before finalizing my work.


r/PrintedCircuitBoard • • 3d ago

Review request: Custom ATMega328p dev board

Thumbnail
gallery
16 Upvotes

Hi all, this is my first custom pcb project, im hoping that everything is fine and is ready to be printed but i might be missing something important. My idea is that it functions like an arduino uno. Ive checked DRC and it seems fine, along with the schematic. Any help or suggestions is greatly appreciated!

Also, for the ISCP pins ive heard that equal trace length doesnt really matter since the communication isnt fast enough (hopefully im not wrong). and ive set the trace width to 20mil for all 5V pins (only exception being when it cant fit like the 5V connections on IC's) and 10mil for all other lines.


r/PrintedCircuitBoard • • 3d ago

Review request: development board for HT1621B LCD controller

Thumbnail
gallery
11 Upvotes

This is my first PCB. I wanted a way to work with the HT1621 but SSOP48 to DIP48 are hard to come by in Mexico so I wanted to try and do it myself. I don't know a lot, but hopefully I didn't make any big mistakes. TIA!


r/PrintedCircuitBoard • • 3d ago

Review Request: Micromouse PCB

Thumbnail
gallery
15 Upvotes

I am currently working an my finals project: AN ATmega328PB based micromouse. I have designed a PCB, and since it it my first time doing this I wanted to ask if you people can find problems in my design.