Dock PCB Design for AirGradient ONE v9
Budget: $30 – $50 USD
Project: THT-only “dock” PCB in AirGradient ONE v9 format (KiCad) — order-ready
Goal
Make a through-hole (THT) carrier board that fits the AirGradient ONE v9 enclosure 1:1 (same non-rectangular outline, mounting holes, centered USB-C) with no SMD on the main PCB. I will buy plug-in breakout modules, insert them into female headers, solder, and be done.
Start from official sources (you download):
Build overview + downloads (KiCad/STEP/Gerbers): https://www.airgradient.com/documentation/overview/
ONE v9 page: https://www.airgradient.com/documentation/one-v9/
Scope (keep it simple)
CAD: KiCad v7/v8. 2-layer FR-4, 1.6 mm (or 1.2 mm), HASL-LF.
No SMD on the main PCB — THT only (headers, resistors, capacitors).
1:1 mechanics: copy the non-rectangular Edge.Cuts outline, mounting holes, and the USB-C position so the cable goes through the rear hole like the original. Tolerance ±0.2–0.3 mm.
Place THT docks roughly where the original parts sit. Small shifts are fine if THT clearance requires it.
RF: keep an antenna keep-out near the ESP32-C3.
Electronics / docks (all THT)
MCU: ESP32-C3 SuperMini (2×9) → on the board: 2× 1×9 female headers.
Power (center): USB-C power-only breakout → 2× 1×4 female at center (provides 5 V + GND). No SMD USB on the board.
Display: 1.3″ I²C OLED, 128×64 → 1×4 female: GND, 3V3, SDA, SCL.
I²C sensors: SHT4x and SGP41 → each 1×4 female: GND, 3V3, SDA, SCL.
CO₂: Senseair S8 (UART, 5 V) → 1×6 female: GND, 5V, TX, RX, SEL, PWR.
PM (final): Plantower PMS5003 → locking JST on the PCB in the original cable area, with a short, tidy, strain-relieved harness and case standoffs/clear airflow.
LEDs: WS2812 LED stick (8–10 LEDs) → 1×3 female: 5V, DIN, GND. DIN via 330 Ω on the board.
Passives (THT): R1,R2 = 4.7 kΩ I²C pull-ups (populate only if chosen breakouts lack them), R3 = 330 Ω (WS2812 DIN), 100 nF at each dock, 47–100 µF at 5 V-in and near S8/PMS/LED.
Pin map (lock in silk & schematic)
I²C: SDA = GPIO8, SCL = GPIO9
WS2812 DIN: GPIO2 (via 330 Ω)
PMS5003 UART: RX = GPIO20, TX = GPIO21
S8 UART: RX = GPIO4, TX = GPIO5
Fabrication (smooth & low-cost)
Irregular outline is fine — pricing is by bounding box.
Keep routing/milling “normal”: ≥ 6/6 mil trace/space, ≥ 1.0 mm slot width, inside corner radius ≥ 1.0–1.5 mm.
No special edges (edge plating, depth routing, countersinks).
Send a CAM preview (JLC/PCBWay viewer) showing outline/holes/slots before ordering.
Deliverables (only what I need)
KiCad project: .kicad_sch, .kicad_pcb, .kicad_pro.
Fully routed, DRC-clean PCB with clear silks (GND/3V3/SDA/SCL, etc.).
Gerber + Excellon drill ZIP — ready to upload to JLCPCB/PCBWay.
Simple THT BOM (female-header sizes/qty; R1/R2/R3; decoupling/bulk caps; USB-C power breakout).
Breakouts used (MANDATORY declaration):
State the exact breakout make/model/variant you designed for in each dock: ESP32-C3 SuperMini, SHT4x, SGP41, Senseair S8 (adapter/breakout), PMS5003, OLED, WS2812 stick, USB-C power-only breakout.
For each, include: product name, pin order printed on the board, 3.3 V I/O safety, basic dimensions/height, and whether I²C pull-ups are present (so I know if R1/R2 should be stuffed or omitted).
Choose common, widely available breakouts so I can easily buy the same ones.
Not required: STEP/3D, drawing packages, long DFM reports, panelization.
Spec check (required)
You download & verify against AirGradient files: outline, holes, USB-C XY, pin orders, power routing.
If you find a discrepancy, stop and propose a fix before routing.
License / attribution
AirGradient is CC BY-SA 4.0.
Small back silkscreen:
Derived from AirGradient ONE (I-9PSL) — CC BY-SA 4.0 — THT Dock Variant — Designed by <my name>
In the ZIP: ATTRIBUTION.txt (credit + link to AirGradient) and LICENSE.txt (https://creativecommons.org/licenses/by-sa/4.0/
).
No AirGradient logos/trademarks.
Goal
Make a through-hole (THT) carrier board that fits the AirGradient ONE v9 enclosure 1:1 (same non-rectangular outline, mounting holes, centered USB-C) with no SMD on the main PCB. I will buy plug-in breakout modules, insert them into female headers, solder, and be done.
Start from official sources (you download):
Build overview + downloads (KiCad/STEP/Gerbers): https://www.airgradient.com/documentation/overview/
ONE v9 page: https://www.airgradient.com/documentation/one-v9/
Scope (keep it simple)
CAD: KiCad v7/v8. 2-layer FR-4, 1.6 mm (or 1.2 mm), HASL-LF.
No SMD on the main PCB — THT only (headers, resistors, capacitors).
1:1 mechanics: copy the non-rectangular Edge.Cuts outline, mounting holes, and the USB-C position so the cable goes through the rear hole like the original. Tolerance ±0.2–0.3 mm.
Place THT docks roughly where the original parts sit. Small shifts are fine if THT clearance requires it.
RF: keep an antenna keep-out near the ESP32-C3.
Electronics / docks (all THT)
MCU: ESP32-C3 SuperMini (2×9) → on the board: 2× 1×9 female headers.
Power (center): USB-C power-only breakout → 2× 1×4 female at center (provides 5 V + GND). No SMD USB on the board.
Display: 1.3″ I²C OLED, 128×64 → 1×4 female: GND, 3V3, SDA, SCL.
I²C sensors: SHT4x and SGP41 → each 1×4 female: GND, 3V3, SDA, SCL.
CO₂: Senseair S8 (UART, 5 V) → 1×6 female: GND, 5V, TX, RX, SEL, PWR.
PM (final): Plantower PMS5003 → locking JST on the PCB in the original cable area, with a short, tidy, strain-relieved harness and case standoffs/clear airflow.
LEDs: WS2812 LED stick (8–10 LEDs) → 1×3 female: 5V, DIN, GND. DIN via 330 Ω on the board.
Passives (THT): R1,R2 = 4.7 kΩ I²C pull-ups (populate only if chosen breakouts lack them), R3 = 330 Ω (WS2812 DIN), 100 nF at each dock, 47–100 µF at 5 V-in and near S8/PMS/LED.
Pin map (lock in silk & schematic)
I²C: SDA = GPIO8, SCL = GPIO9
WS2812 DIN: GPIO2 (via 330 Ω)
PMS5003 UART: RX = GPIO20, TX = GPIO21
S8 UART: RX = GPIO4, TX = GPIO5
Fabrication (smooth & low-cost)
Irregular outline is fine — pricing is by bounding box.
Keep routing/milling “normal”: ≥ 6/6 mil trace/space, ≥ 1.0 mm slot width, inside corner radius ≥ 1.0–1.5 mm.
No special edges (edge plating, depth routing, countersinks).
Send a CAM preview (JLC/PCBWay viewer) showing outline/holes/slots before ordering.
Deliverables (only what I need)
KiCad project: .kicad_sch, .kicad_pcb, .kicad_pro.
Fully routed, DRC-clean PCB with clear silks (GND/3V3/SDA/SCL, etc.).
Gerber + Excellon drill ZIP — ready to upload to JLCPCB/PCBWay.
Simple THT BOM (female-header sizes/qty; R1/R2/R3; decoupling/bulk caps; USB-C power breakout).
Breakouts used (MANDATORY declaration):
State the exact breakout make/model/variant you designed for in each dock: ESP32-C3 SuperMini, SHT4x, SGP41, Senseair S8 (adapter/breakout), PMS5003, OLED, WS2812 stick, USB-C power-only breakout.
For each, include: product name, pin order printed on the board, 3.3 V I/O safety, basic dimensions/height, and whether I²C pull-ups are present (so I know if R1/R2 should be stuffed or omitted).
Choose common, widely available breakouts so I can easily buy the same ones.
Not required: STEP/3D, drawing packages, long DFM reports, panelization.
Spec check (required)
You download & verify against AirGradient files: outline, holes, USB-C XY, pin orders, power routing.
If you find a discrepancy, stop and propose a fix before routing.
License / attribution
AirGradient is CC BY-SA 4.0.
Small back silkscreen:
Derived from AirGradient ONE (I-9PSL) — CC BY-SA 4.0 — THT Dock Variant — Designed by <my name>
In the ZIP: ATTRIBUTION.txt (credit + link to AirGradient) and LICENSE.txt (https://creativecommons.org/licenses/by-sa/4.0/
).
No AirGradient logos/trademarks.