Skip to the content
PCBKitNew board
2 layers40 × 40 mmAirqualitymini, the printed circuit board in 3D

A stationary indoor air quality sensor. Real CO₂, VOC and NOx, temperature and humidity. No display, no battery. Powered from USB-C, read out over Bluetooth LE.

Size
40 × 40 mm
Copper layers
2
Thickness
1.6 mm
Parts
32
Nets
45
Pads
155
Tracks, vias
230, 45
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
24 Aug 2026
Updated
24 Aug 2026

Overview

Airqualitymini is an open-source printed circuit board by MorgenWebDigital, from the MorgenWebDigital/airqualitymini repository on GitHub. It is a 2-layer board of 40 × 40 mm with 32 parts on 45 nets, routed with 230 tracks and 45 vias.

It is built around the ESP32-C3-WROOM-02-N4, SCD40-D-R1 and SGP41-D-R4, with the SHT41-AD1B-R2, T117Z and USBLC6-2SC6 among its other parts. Its parts include 15 capacitors, 7 resistors, 7 ICs and 2 switches. It belongs with the ESP32 and RISC-V boards of this library.

Main components

9

README

README.md

AirQuality Mini

A stationary indoor air quality sensor. Real CO₂, VOC and NOx, temperature and humidity. No display, no battery. Powered from USB-C, read out over Bluetooth LE.

Two layers, 40 × 40 mm, 32 components.

frontback
frontback

1. What it is

The large AirQuality board is a portable instrument: battery, charger, fuel gauge, e-paper display, light sensor. This one strips all of that away and keeps only what measures the air.

What is left is a square the size of a large postage stamp with four sensors, a microcontroller and a regulator. It sits on a shelf, stays plugged in, and talks to a phone.

AirQualityAirQuality Mini
Size45 × 95 mm40 × 40 mm
Components7632
Power21700 cell, USB-C chargingUSB-C only
Display2.13" e-papernone, BLE only
SensorsCO₂, VOC/NOx, T, rH, lightCO₂, VOC/NOx, T, rH

2. What it measures

SensorMeasuresAccuracyI²C
SCD40CO₂, photoacoustic, a real measurement rather than an estimate±(50 ppm + 5 % of reading)0x62
SGP41VOC and NOx indexindex, not a concentration0x59
SHT41humidity and temperature±1.8 %RH, ±0.2 °C0x44
T117Ztemperature, the precision channel±0.1 °C, 16 bit0x48

One I²C bus, four addresses, no collisions. Pull-ups are 4.7 kΩ.

Temperature is measured twice on purpose. The SHT41 gives humidity and a temperature good to ±0.2 °C; the T117Z is a TMP117-register-compatible part that reaches ±0.1 °C and serves as the precision channel.

schematic

The full schematic as a PDF is in docs/schematic.pdf.


3. How the power works

text
   USB-C ──▶ VBUS (5 V) ──▶ XC6222 ──▶ 3.3 V ──▶ ESP32-C3, sensors
                             LDO

No battery, no charger, no power path. A single linear regulator, and that is the whole supply.

The CE pin of the XC6222 is tied to VBUS, so the regulator runs whenever USB power is present. CC1 and CC2 carry the 5.1 kΩ pull-downs that tell a USB-C source to supply 5 V.

Heat is the one thing to watch. The regulator burns (5 V − 3.3 V) × the whole board current. At the worst case, with the ESP32 transmitting at 345 mA while the SCD40 measures at 205 mA, that is 0.94 W in a SOT-25 package rated for 250 mW on its own, or 600 mW with copper attached.

That is why VBUS and 3.3 V each have a copper pour of about 75 mm² on the front side, connected to the regulator's pads solid rather than through thermal spokes. In the intended duty cycle, light sleep with a wake every 15 s, the average is a few tens of milliwatts and none of this matters. It matters while flashing, or if the device stays awake on Wi-Fi.


4. Board details

Size40 × 40 mm
Layers2, 35 µm copper
Groundpour on the back, 1303 mm²
Copper at the regulatorVBUS 76 mm², 3.3 V 78 mm², front side
Minimum clearance0.2 mm
Vias0.6 mm pad, 0.3 mm drill

The ESP32 antenna sits at the board edge with a keep-out on both copper layers. Nothing is routed through it: no track, no via, no pour.

ESD protection on the USB data lines: a USBLC6-2SC6 sits about 3 mm from the connector pads, with the signal routed through the device (in on one channel pin, out on the other) rather than branched off it, and a ground via right at its ground pad.

Both details matter. An ESD pulse rises in under a nanosecond; every millimetre of track between the connector and the clamp adds roughly 35 V of overshoot that the ESP32 then sees, and a long ground return does the same again.


5. Building one

Everything needed is in this repository.

Boards. production/AirQualityMini-gerber.zip goes straight to a fab house. Two layers, 1.6 mm, 35 µm copper, any standard process. The zip holds the Gerbers and the Excellon drill files.

Parts. production/AirQualityMini-bom.csv lists every component with its LCSC number where one exists. production/AirQualityMini-positions.csv is the pick-and-place file.

Datasheets for every active part are in datasheets/, named by LCSC part number.

Opening the design. KiCad 9. Open hardware/AirQualityMini.kicad_pro. All symbols, footprints and 3D models live in hardware/libraries/ and are referenced relatively, so the project opens from any location.

Mechanical. docs/AirQualityMini.step is the full board with all components, for enclosure design.

Firmware. ESP-IDF v5.5.4, native C. The same project as the large board runs, minus the display and fuel-gauge drivers. Not part of this repository.


6. Verification

The board passes with no electrical findings:

text
   ERC                      0 errors, 0 warnings
   Unconnected pads         0
   Shorts                   0
   Clearance violations     0
   Schematic parity         0

Every integrated circuit has been checked pin by pin against its datasheet. Not against memory or a symbol's label, but against the document in datasheets/.

Remaining DRC output is silkscreen only: reference designators touching their own part outlines, and the module and connector outlines crossing the board edge. Neither affects manufacture.


7. License

PolyForm Noncommercial 1.0.0. Any use is permitted except a commercial one.

Parts

32
QtyValueFootprintReferences
7100nFCapacitor_SMD:C_0603_1608MetricC6, C8, C10, C12, C13, C14, C15
510uFCapacitor_SMD:C_0603_1608MetricC3, C4, C7, C9, C11
310KCapacitor_SMD:C_0603_1608MetricR3, R4, R5
31uFCapacitor_SMD:C_0603_1608MetricC1, C2, C5
24,7KCapacitor_SMD:C_0603_1608MetricR6, R7
25,1kCapacitor_SMD:C_0603_1608MetricR1, R2
2TS24CAAirQuality:SW-SMD_2P-TS24CASW1, SW2
1ESP32-C3-WROOM-02-N4AirQuality:BULETM-SMD_ESPRESSIF_ESP32-C3-WROOM-02-N4-4MBU2
1SCD40-D-R1AirQuality:LGA-20_L10.1-W10.1-P1.25-TLU3
1SGP41-D-R4AirQuality:DFN-6_L2.4-W2.4-P0.80-TL-EPU6
1SHT41-AD1B-R2AirQuality:DFN-4_L1.5-W1.5-SHT41-AD1B-R2U4
1T117ZAirQuality:TDFN-6_L2.0-W2.0-P0.65-TL-EPU5
1TYPE-C-2.0-16PIN-SMT-3AirQuality:TYPE-C-SMD_TYPE-CF3.1USB1
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U7
1XC6222A331MR-GAirQuality:SOT-25-5_L2.9-W1.6-P0.95-LS2.8-BRU1

Questions

How big is the Airqualitymini PCB?

It measures 40 × 40 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Airqualitymini use?

32 parts, built around the ESP32-C3-WROOM-02-N4, SCD40-D-R1, SGP41-D-R4 and SHT41-AD1B-R2. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Airqualitymini KiCad files?

From the MorgenWebDigital/airqualitymini repository on GitHub, at the commit this page was made from: the board is hardware/AirQualityMini.kicad_pcb and its schematic hardware/AirQualityMini.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Airqualitymini design in my own project?

Its repository states no licence, so its author keeps all rights: ask MorgenWebDigital before reusing the design.

Similar boards

  • 2 layers45 × 95 mmAirquality, the printed circuit board in 3D

    Airquality

    MorgenWebDigital/airquality

    A battery-powered indoor air quality monitor. Real CO₂ from a photoacoustic sensor, VOC and NOx, temperature, humidity and ambient light, shown on a 2.13" e-paper display and sent over Bluetooth LE.

    78 parts
  • 4 layers60 × 60 mmUmmon, the printed circuit board in 3D

    Ummon

    JonaWe/ummon

    ummon (from German Umgebungsmonitor, "environment monitor") is an ESP32-C6 based environmental sensor board with USB-C power.

    95 parts
  • 2 layers88 × 82 mmTL Node Rev.0, the printed circuit board in 3D

    TL Node Rev.0

    00TLalu/TL-Node-Hardware

    PCB for OpenTANI

    72 parts
  • 2 layers45 × 45 mmAeroq Hardware v3, the printed circuit board in 3D

    Aeroq Hardware v3

    EnriqueNeyra/Aeroq

    An Indoor Air Quality Monitor Powered by ESP32, SCD40, and SEN54

    56 parts130
  • 2 layers82 × 36.5 mmRoomSensor, the printed circuit board in 3D

    RoomSensor

    enwi/RoomSensor

    75 parts2
  • 4 layers76 × 85 mmSuperNicePCB, the printed circuit board in 3D

    SuperNicePCB

    laemo10/SuperNicePCB

    An integrated, multi-sensor UWB anchor PCB designed for real-time indoor object tracking (via Double-Sided Two-Way Ranging) and non-invasive human presence/occupancy monitoring.

    68 parts
  • 4 layers90.5 × 53 mmNH AirQuality, the printed circuit board in 3D

    NH AirQuality

    NottingHack/NH-AirQuality

    67 parts