Netlist if available — helps cross-check connectivity
Then in KiCad:
Open KiCad → GerbView.
Load the Gerber ZIP/drill files to inspect or manually recreate routing.
Use the BOM and placement CSV as references.
If you need editable KiCad PCB data, you’ll likely need to manually rebuild/import from these references, because Gerbers are manufacturing outputs, not fully editable design files.
Important limitation
Gerbers do not convert cleanly back into a KiCad schematic + editable PCB. They preserve the board artwork, but not design intent like components, nets, rules, or schematic symbols.
Better practical workflow
Use Flux to export:
PDF schematic or schematic screenshots for reference
BOM
Gerbers
Pick-and-place
IPC/netlist if available
Then recreate the schematic in KiCad using the same parts and use the Flux routed board/Gerbers as a visual reference.
Before exporting
Your board still had unresolved routing cleanup issues last time:
remaining airwires/unrouted connections
copper overlap conflicts may need final verification
So I would not manufacture directly from the current Gerbers without checking them in a Gerber viewer first.
Device: 6-channel indoor plant automation carrier board with ESP32-S3 Wi-Fi/BLE control, 6 pump drivers, 1 PWM 12 V LED-strip driver, 6 analog sensor inputs, BH1750 light-sensor connector, OLED connector, WS2812 status LEDs, button, and protected 12 V input power path.
Goal: Replace jumper wiring with a single 120 mm × 100 mm carrier PCB. Only off-board wiring should be pump pairs, sensor cables, and 12 V power input.
Intended Use
Indoor plant/grow automation controller for pumps, moisture/capacitive sensor inputs, light sensing, display/status, and wireless telemetry/control.
User solders through-hole/user-facing connectors and plugs in the ESP32-S3 module and OLED; JLCPCB assembles SMD passives, MOSFETs, diodes, regulator, and LEDs.
What the Device Should Do
Accept 12 V / 5 A from a center-positive 5.5 × 2.1 mm barrel jack.
Generate 5 V for the ESP32-S3 module VIN path using an MP1584EN buck regulator.
Use the ESP32 module 3.3 V rail for sensors, OLED, I2C pull-ups, WS2812 logic, and support circuitry.
Switch six 12 V pump channels independently using low-side N-MOSFETs.
Switch one 12 V LED grow strip using PWM through a low-side N-MOSFET.
Read six analog sensor inputs through per-channel 1 kΩ / 100 nF RC filters.
Share I2C bus GPIO8/GPIO9 between OLED and BH1750 connector.
Drive six chained WS2812B status LEDs from GPIO16.
Read one tactile button on GPIO17.
Main Features
ESP32-S3-WROOM-1-N16R8 Wi-Fi + BLE module.
12 V protected input: PPTC fuse, reverse-polarity P-MOSFET, TVS clamp.
12 V to 5 V MP1584EN buck converter.
6 pump outputs with flyback diodes, gate resistors, and gate pulldowns.
1 LED-strip PWM output with gate resistor/pulldown and optional snubber footprint.
6 JST-PH 3-pin sensor connectors with analog RC filtering.
BH1750 4-pin I2C pigtail connector.
SSD1306 OLED 4-pin I2C connector.
6 WS2812B status LEDs with per-LED 100 nF decoupling.
Four 3.2 mm mounting holes.
System Architecture
Diagram
Hardware Subsystems
Power and Protection
Input connector J1: 12 V / 5 A, center positive.
F1: 3 A hold / 6 A trip PPTC requested. This is a possible mismatch with the stated 5 A adapter and full-load pump + LED use; see Power Budget and Assumptions.
D1: AO3401 P-MOSFET reverse polarity protection.
TVS1: SMBJ18A input transient clamp.
U2: MP1584EN buck regulator set for 5 V output, up to 3 A.
3.3 V rail is expected from the plugged-in ESP32 module regulator.
Compute and Wireless
U1: ESP32-S3-WROOM-1-N16R8 module, socket/header mounted per product intent.
Boot/reset support: EN pull-up/filter and boot GPIO0 access should be included unless the plugged-in module board already provides them.
Antenna region must be placed at board edge with no copper keepout during layout.
Pump Drivers
Six low-side N-MOSFET drivers using AO3400/AO3400A-class FETs.
GPIO10-15 drive pump gates through 100 Ω resistors.
10 kΩ gate pulldown per channel keeps pumps off at boot.
SS14 flyback diode across each pump terminal.
LED Strip Driver
One low-side AO3400-class MOSFET on GPIO18.
33 Ω gate resistor and 10 kΩ pulldown.
1 kHz, 10-bit LEDC PWM target.
Keep strip routing away from analog sensor traces.
Sensors and I2C
Six JST-PH 3-pin sensor connectors: 3V3, GND, analog signal.
ADC GPIOs: 1, 2, 4, 5, 6, 7.
Each signal has 1 kΩ series resistor and 100 nF capacitor to GND at MCU side.
I2C bus: SDA GPIO8, SCL GPIO9; one pair of 4.7 kΩ pull-ups to 3V3 for the bus.
OLED connector and BH1750 connector share the same I2C bus.
User Interface
Six WS2812B LEDs on one data chain from GPIO16.
100 nF decoupling per WS2812B.
Tactile button on GPIO17 for screen cycling/manual prime.
Interfaces and Connections
Table
Interface
Connector/Net
Electrical Level
Notes
12 V input
J1
12 V, up to 5 A adapter
Center-positive barrel jack
Pump outputs
J-P1 to J-P6
12 V + switched return
Low-side switching
LED strip
J-LED
12 V + PWM switched return
Route away from analog inputs
Sensors
JS1 to JS6
3.3 V analog
RC filtered into ESP32 ADC
OLED
J-OLED
3.3 V I2C
SSD1306, address typically 0x3C
Light sensor
J-LUX
3.3 V I2C
BH1750, address 0x23/0x5C
Status LEDs
LED1-LED6
3.3 V logic/data, 5 V or 3.3 V power TBD
Requested to use 3V3 from module; current must be checked
Power and Runtime Expectations
Wall-powered from 12 V / 5 A adapter; no battery runtime target.
Pumps and LED strip dominate the 12 V current budget.
5 V buck must support ESP32 module input plus any 5 V loads if added later.
3.3 V rail from ESP32 module LDO powers sensors/OLED/I2C logic/WS2812 logic; available current depends on the exact plug-in module board.
Power Tree and Power Budget
Table
Rail
Load
Estimated Current
Notes
12 V
Six pumps
1.5 A assumed total
Assumption: 0.25 A per pump per user note
12 V
LED strip
1.0-2.0 A
User note says medium strip; exact strip current TBD
12 V
MP1584 buck input
~0.2-0.4 A
Depends on 5 V/3.3 V load and efficiency
5 V
ESP32 module VIN
~0.5 A peak budget
Wi-Fi TX peaks require margin
3.3 V
ESP32-S3 module core/radio
~0.36-0.5 A peak
From module supply characteristics
3.3 V
6 WS2812B LEDs
up to 0.36 A if full white
Important: may exceed module LDO margin
3.3 V
OLED + BH1750 + sensors
~0.05-0.15 A assumed
Depends on actual sensor modules
Budget conclusion: A full-load case with pumps and LED strip can approach or exceed the requested 3 A PPTC hold when LED strip current is near 2 A and all pumps run. The 3.3 V rail should not rely on a small module LDO for six bright WS2812B LEDs unless brightness is firmware-limited; a dedicated 3.3 V regulator or powering WS2812B from 5 V with level shifting may be preferable.
Manufacturing and Assembly Expectations
PCB: 120 mm × 100 mm, 2 layers, 1.6 mm, 1 oz copper, matte black solder mask, white silkscreen, lead-free HASL.
LED-strip terminal, BH1750 connector, OLED/front-panel connector near front edge.
ESP32 antenna at a board edge with keepout, not buried under copper or connectors.
Mounting holes at (4,4), (116,4), (4,96), (116,96), diameter 3.2 mm.
Important Design Decisions
Use MOSFET low-side switching for all pumps and the LED strip for simplicity and low loss.
Use one shared I2C bus for OLED and BH1750 to save GPIOs.
Use per-sensor RC filters to smooth analog capacitive sensor outputs.
Use a module/socket strategy for easier hand assembly and field replacement.
Use 0805 passives where possible for beginner-friendly inspection and rework.
Assumptions and Open Risks
Pump current is assumed to be approximately 0.25 A each; exact pump stall current is not specified and should be measured or provided.
LED strip current is assumed 1-2 A; exact strip current determines fuse/trace sizing.
The ESP32-S3 plugged-in module board has a suitable 3.3 V regulator if sensors and LEDs are powered from its 3V3 pin. This is a major current-budget risk.
GPIO6-11 on ESP32-S3 modules can be unavailable or constrained depending on module flash/PSRAM configuration. The requested use of GPIO10/GPIO11 for pump channels needs datasheet/pin availability confirmation.
A 3 A hold PPTC may nuisance-trip if all pumps and the LED strip are active simultaneously.
Change Notes
v1.0 requirements imported from user-provided JSON.
Power budget risk added for 3 A PPTC and ESP32 module 3.3 V rail loading.